请教一个ISAPI的问题(100分)

  • 主题发起人 主题发起人 wagxu
  • 开始时间 开始时间
W

wagxu

Unregistered / Unconfirmed
GUEST, unregistred user!
  我写了一个网页程序命使用LoadLibrary调用一个dll文件.如果我把程序编译成CGI,则调用该dll很正常,但我把程序编译成ISAPI,一调用ISAPI就死了.我想请问如何在ISAPI中调用Dll,或在Active Server Object中调用Dll
 
用什么写的ISAPI?
Delphi,BCB or VC?
 
我只用过VC编写ISAPI调用DLL,和正常调用一样,没有出现错误。
是不是IIS的执行权限设置的有问题?
 
我是使用Delphi写的ISAPI,IIS执行权限设置为“脚本和和可执行文件”。
我编译成CGI是可以的,但编译成ISAPI就死在LoadLibrary上了。
 
用try和catch看看具体的错误信息是什么?
 
MyHandle := LoadLibrary('ipsearcher.dll');
就是在这一句一Load就死了。ipsearcher.dll这个dll存在,我试了如果Load一个不存的dll,会立刻返回错误,而不会停在这一句不动了。
 
ipsearcher.dll这个DLL放在什么目录下了?
你用try了吗。看看抛出什么错误?
 
我放在system32目录下.Try我也使用了.我的ISAPI执行到LoadLibrary就执行不下去了,也不出错.浏览器的进度条就一直保持读取状态.
 
也可能是 这个dll的问题 你生成一个空的dll 如果还是不能调 可能就是isapi的缺陷了
 
你放的目录不对,应该放在System32/inetsrv/目录下。
这个目录是IIS应用的目录。你用的是相对目录,所以Dll必须放在和它同级的目录下。
 
后退
顶部