一个dll文件,是由iis加载的,我已经知道他不再被别的程序使用,我如何手工将该dll文件从内存中撤出?(8分)

  • 主题发起人 主题发起人 阿魁
  • 开始时间 开始时间
呵呵<br><br>过去真在什么地方看到过类似的帖子<br>但是现在已经全忘了 [:(]<br>等你这帖子有结果了<br>我来收藏一下吧
 
我是用VB作ActiveX dll,在ASP里使用,执行ASP程序后,DLL文件被IIS缓存,没法覆盖,<br>这给调试程序带来了很大的麻烦。<br>
 
shut down iis
 
关掉Protected Storage进程
 
to yousoft:<br>我怎么找不到这个进程?<br>我用WIN2000。<br><br>有没有API来直接卸载DLL呢?
 
我也碰上了这样的问题,不过我那时候先把原来的dll改名,<br>继续编译加载,等从新启动的时候再删除
 
我搞定了。<br>Protected Storage是一项服务,不是进程;<br>不是停止Protected Storage服务,这样的话iis admin和world wide web publishing service<br>服务都会停止;<br>只要停止world wide web publishing service服务就可以了,然后重编译,覆盖,<br>再启动world wide web publishing service服务,就可以调试组件了。<br><br>不过,还是挺麻烦的哦,呵呵,不过没办法。<br><br>to yousoft:谢谢了,我是根据你的线索解决问题的,给分了。<br><br>to wsn:快来收藏。
 
在IIS的选项里面去掉“Enabled ISAPI cache”即可
 
to 一个过客:<br>不行。<br>activeX dll 不是isapi。<br><br>重启动world wide web publishing service服务就可以了。<br>
 
恩。。。<br>我过去看到的是采用程序直接从内存里干掉的
 
可以打命令 net stop iisadmin 结束iis,然后在regsvr32 你的dll路径/u,就可以了啊。删除后在运行 net start iisadmin
 
后退
顶部