如何调试 ISAPI做成的 DLL
每次用 IE 看过编写的 ISAPI DLL后,必须从新启动才能对其进行修改,重编译。
有没有,其他方法可以把 DLL Unload? 使用停止服务,关闭service 的方法
都试过了。没有用。最好不用 Porcess Killer.
问题点数:50、回复次数:4Top
1 楼kxy(手举穿肠毒药,怀抱刮骨钢刀)回复于 2000-01-24 13:33:00 得分 5
你是用NT还是PWS
NT上改一个注册表的参数.msdn上可以查道,记不清了 :(
PWS
. PWS中的Inetinfo.exe为主调用程序,即Inetinfo.exe应该为HOST.
2. 参数用-e w3svc没有问题。
3. ——这可能是最重要的一点:你必须先将PWS和Inetinfo.exe从系统中移出去。如
果不这样,Delphi根本控制不到HOST!!!
4. 移除方法:修改注册表,将
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run 和
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices
中涉及到PWS和Inetinfo.exe的两个键值删去,再重启机器。这时,PWS和Inetinfo就已经不在系统中了。再启动Delphi,调试吧。 :)Top
2 楼rmh(星辰)回复于 2000-01-24 16:10:00 得分 5
可以用Transaction Server Explorer来修改:
在My Computer上右击选择Shutdown server processes可关闭
Top
3 楼DOU()回复于 2000-01-31 16:09:00 得分 35
Visual C++中调试ISAPI DLL的设置你应该知道,不再赘述。
至于重启service 的方法不能重新加载ISAPI DLL,你是在MMC中停止服务的吧?
在Control panel/Service里将IIS服务整个停掉,重启就可以了!
另外,更方便的方法是设置不缓存ISAPI DLL(每次调用都重新加载,适用于调试环境)
在IIS3里是通过设置注册表ISAPI DLL是否缓存(不缓存)来方便地调试ISAPI DLL的。
在IIS4中,配置IIS的参数已经不在注册表中,可通过MMC来设置。
方法:
某web站点/属性/主目录页/配置按纽/应用程序映射页中的“ISAPI应用程序放入高速缓存”,Deselect It!
重启服务
Top
4 楼King(傻勤)回复于 2000-01-31 16:15:00 得分 5
我用的是IIS,只要关闭HTTP服务再打开,就可以卸栽ISPAI,没出现过什么失误。Top




