1

我在 Delphi 中创建了一个 ISAPI 扩展,它工作得很好,但我想知道是否有关于如何存储配置设置的最佳实践?我可以想出很多方法来做到这一点,但我当然想以最好的方式做到这一点。我可能查看了所有错误的地方,但我找不到任何可以帮助我的东西......

与 dll 位于同一目录中的 ini 或 xml 文件是一种好方法吗?还是使用windows注册表?或者是否有可能(并且明智)将特定于 ISAPI 扩展的配置放在 web.config 中,从而利用 IIS 管理器进行配置?或者是其他东西?

4

2 回答 2

2

我通常GetModuleFileName(HInstance);用来找出 DLL 的存储位置,并在那里保存一个文件(ini 或 xml)。建议将其和 DLL 保留在 IIS 无法访问的范围内,这样就无法通过 URL 访问它。

于 2014-06-26T18:27:21.300 回答
2
  1. 您可以使用 INI 文件(确保它位于 \InetPub\ 文件夹之外。确保使用 TMemIniFile 缓存 INI 文件。

  2. 您可以使用 XML 文件。确保您读取 XML 文件以缓存并在此之后释放文件处理程序,以防止在并发读取期间锁定文件。

要在加载 ISAPI 时检查更改,请在重新读取之前检查 XML 文件的日期/时间戳。

  1. 另一个建议是使用内存数据库并从磁盘加载/保存数据文件。
于 2014-06-26T15:27:20.977 回答