[VB开源]KillIt :ASP/COM+组件开发辅助软件

王朝vb·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

相关帖子:http://community.csdn.net/Expert/topic/3312/3312640.xml?temp=.1247522

问题提出:

用vb写的dll文件,注册后,用asp调用. 发现有问题,修改dll源码,

再编译成dll文件,想覆盖原dll文件,却提示拒绝操作。

这个dll也不能删除,已经用regsvr32取消注册了,即使该组件的ie页面也关闭了.

这是因为dllhost占用的资源在我们调试完成后并不会马上释放。

所以只使用任务管理器是关闭不掉的。

程序实现思路:

于是目的就明确了,是要杀死dllhost进程。

如果大家玩NT系列久了,PS系列的工具大家估计都有吧,PS系列工具直接能切到系统RANG0级别进行操作

其中PSKILL可以杀掉任何进程,包括关键系统进程。

我们就是以此开始的。

PSKILL 是个在命令行下执行的工具,执行语句为:文件路径\PSKILL 进程名称

但是这个工具每次都要切到DOS窗口,还要加参数,开始的时候我是写了个批处理文件来一步完成的

killDll.bat

=============================

C:\PSKILL DLLHOST

EXIT

=============================

但是毕竟是图形界面的时代了嘛,稍微花哨一点,于是呢,就稍微来点花招。

在VB中使用Shell函数来执行这个命令,说到这里大家就明白了吧?

当然,为了有点隐蔽性,我将pskill.exe重新命名成KillRes.dll,

这样估计大家一下子是看不出的吧?

在执行操作的时候,遵循以下步骤。

1)程序启动时判断KillRes.dll是否存在,不存在程序也就没戏了

2)如果存在,点击执行后,先将KillRes.dll重新拷贝成killRes.exe附加界面传来的参数,使用Shell执行

3)执行完毕后弹出对话框提示,然后将killRes.exe再删除,如果不细心观察,是发现不大了的。

当然其中有些小的技巧,大家看了代码就一目了然了,呵呵。

是不是很简单呢?哈哈,,我觉得想法不错,还挺好用的

文中如有措辞和理解错误,请大家不吝指正,共同进步,谢谢。

另外:还可以使用API停止COM+中相应服务的办法,估计这个会更简单,

留给大家去发掘吧,写出来别忘了共享一下啊~~~

代码及程序下载 ,RAR文件密码:WWW.FACESUN.CN

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航