1

我的程序是使用 Delphi 2007 构建的 Delphi ISAPI DLL。我正在迁移到 Delphi 10.2 Tokyo,并且 TWebModuleList 从 Web.WebReq 中消失了。

在 D2007 中,当应用程序启动时,会调用以下代码来预实例化 5 个 WebModule 的池。

procedure TSWebApplication.CreationWebModules;
var
  i: integer;
  TabDataModules : array of TWebModuleList;
begin

  SetLength(TabDataModules,1);
  TabDataModules[0] := ActivateWebModules;
  if Assigned(TabDataModules[0]) then
    TabDataModules[0].AutoCreateModules;

  SetLength(TabDataModules, NbInstances);

  for i := 1 to NbInstances - 1 do
  begin
    TabDataModules[i] := ActivateWebModules;
    if Assigned(TabDataModules[i]) then
      TabDataModules[i].AutoCreateModules;
  end;

  for i := 0 to NbInstances - 1 do
    DeActivateWebModules(TabDataModules[i]);
end;

这样,不是按需创建(前 5 个)WebModule,而是在应用程序启动时创建它们,然后按需停用并自动激活。

我知道 WebModules 由 IIS 管理,我们不需要这种行为,但它就是它的工作方式(很好)。

自 Delphi XE8 以来,TWebModuleList 似乎消失了(docwiki.embarcadero.com 上没有页面,而 XE7 站点上仍然存在)。我找不到任何更改日志,或其他关于它为什么消失的信息以及我们如何建立相同的行为......

有没有人有任何信息?

谢谢

4

0 回答 0