找回密码
 加入
搜索
查看: 4184|回复: 13

结束U盘所有进程

[复制链接]
发表于 2009-9-20 01:27:36 | 显示全部楼层 |阅读模式
退出U盘时有时会有程序运行。这时退不出来,可不可以那位大侠写个脚本(程序),结束  程序当前所在盘 所有进程
 楼主| 发表于 2009-9-20 01:41:16 | 显示全部楼层
简单表达下吧,

E盘运行这个程序,他关掉所有E盘运行程序的进程。如果放D盘,运行,就关掉所有D盘运行的进程。
发表于 2009-9-20 07:36:57 | 显示全部楼层
?????????
发表于 2009-9-20 08:43:49 | 显示全部楼层
检测当前盘符
然后对比进程路径即可。
 楼主| 发表于 2009-9-20 13:09:57 | 显示全部楼层
那位大大给段代码啊,谢谢啦
 楼主| 发表于 2009-9-20 13:44:25 | 显示全部楼层
$objWMIService = ObjGet("winmgmts:\\.\root\CIMV2:win32_process")
$colItems = $objWMIService.instances_
For $objItem In $colItems
$Pid =  "Pid: " & $objItem.ProcessId         
$Name = "Name: " & $objItem.Name
$path = "Path: " & $objItem.executablepath
        MsgBox(0,'',$Pid&@LF _
        &$Name&@LF _
        &$path)
Next

刚看到一段代码,是获得程序名字和路径的,高手麻烦修改下
 楼主| 发表于 2009-9-21 22:12:22 | 显示全部楼层
http://www.autoitx.com/forum.php ... &extra=page%3D3
上面代码的地址,高手呢,怎么这么多天了都没有解觉这个问题!!!
发表于 2009-9-21 22:17:28 | 显示全部楼层
http://www.autoitx.com/forum.php?mod=viewthread&tid=3899&extra=page%3D3
上面代码的地址,高手呢,怎么这么多天了都没有解觉这个问题!!!
gdygood 发表于 2009-9-21 22:12

你都知道上面的代码了 结束所有你U盘盘符运行的进程就完了
发表于 2009-9-21 22:17:38 | 显示全部楼层
结束x盘运行的程序容易,但有很多情况下是外面的程序调用了x盘的东东... 那就需要退出那个不是x盘的程序...
发表于 2009-9-22 01:23:16 | 显示全部楼层
afan兄说得对。如果外部程序调用了你U盘中的文件,就必须把这个外部程序结束掉。
其实还有一种方法,外部程序a.exe调用了U盘中的a.txt,那么在a.exe中必然有一个指向a.txt的文件句柄。只要找到这个文件句柄并关闭它也可以实现U盘的卸载。
有关关闭其他进程中的句柄的问题,楼主可以看下这个帖子:http://www.autoitx.com/forum.php?mod=viewthread&tid=9620
发表于 2009-9-22 01:29:00 | 显示全部楼层
afan兄说得对。如果外部程序调用了你U盘中的文件,就必须把这个外部程序结束掉。
其实还有一种方法,外部程序a.exe调用了U盘中的a.txt,那么在a.exe中必然有一个指向a.txt的文件句柄。只要找到这个文件句柄并关闭它 ...
pusofalse 发表于 2009-9-22 01:23


高人指点的是,正郁闷如何查看进程打开的句柄以及如何关闭的问题,此贴回复得真是及时,谢谢!
发表于 2009-9-22 01:31:46 | 显示全部楼层
Re 11#:
- -|||多谢afan兄的认同,但以后不要再叫高人了,真得是折杀我了。
发表于 2009-9-22 01:46:30 | 显示全部楼层
pusofalse 兄太谦虚了~!论坛有技术的高手肯定也有不少,但平心而论,有技术而又热心的,不多见... 经常遇到pusofalse 兄替大家解答难题,敬佩之心油然而生,叫声高人、大虾,那是脱口而出的~~ 希望兄不要见怪呀~ 呵呵~~~
 楼主| 发表于 2009-9-24 08:01:31 | 显示全部楼层
几天没来看,有高人回了,去看看,学下,如果做出来了,就贴出来,呵呵
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-9-22 19:35 , Processed in 0.083026 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表