存储ISAPI扩展参数

时间:2014-06-26 12:51:16

标签: delphi iis isapi isapi-extension

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

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

2 个答案:

答案 0 :(得分:2)

  1. 您可以使用INI文件(确保它在\ InetPub \文件夹之外。确保使用TMemIniFile缓存INI文件。

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

  3. 要在加载ISAPI时检查更改,请检查日期/时间     再次重新阅读之前,XML文件的标记。

    1. 另一个建议是使用内存数据库并将数据文件加载到磁盘或从磁盘加载。

答案 1 :(得分:2)

我通常使用GetModuleFileName(HInstance);找出DLL的存储位置,并在那里保存一个文件(ini或xml)。建议将它和DLL放在IIS之外,以免通过URL访问。