Chinaunix首页 | 论坛 | 博客
  • 博客访问: 102371
  • 博文数量: 30
  • 博客积分: 2000
  • 博客等级: 大尉
  • 技术积分: 382
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-26 21:14
文章分类

全部博文(30)

文章存档

2015年(1)

2008年(29)

我的朋友

分类: WINDOWS

2008-10-27 10:04:51

杀毒的很多时候,我们需要重启桌面来卸载掉插入explorer.exe里面的dll,不过怎么重启桌面呢?
 
一般的方法是用任务管理器杀掉explorer.exe然后再新建一个任务。不过这样子效率低。
 
能否用一个快速的方法呢?
 
今天,我实验了用批处理来进行的方法,另外实验了用开始->运行的方法,这样子在远程协助的时候很有用。
 
首先,批处理法
 
批处理1:
 
taskkill /f /im explorer.exe
start explorer
 
这个需要两句话,成功的重启桌面。并且,第二句只能在批处理里面用。因为start是cmd的内置命令。
如果需要单独使用,则需要加上cmd /c start explorer
 
批处理2:
 
taskkill /f /im explorer.exe
cmd /c start explorer
 
这个完美的使用了两句独立的命令,组成了批处理。
 
我想用一句连续执行,那么就可以成为一句话命令重启桌面了,于是组合成下面的批处理:
 
批处理3:
taskkill /f /im explorer.exe & cmd /c start explorer
 
为什么不用&&连接而用&连接呢,因为&&需要前一句命令执行为真,而如果用&就只是两句命令连续执行,不需要判断逻辑上的真假了。
 
好,批处理研究好了,不过,批处理3在开始,运行里面却不能够成功的达到效果,怎么回事呢?
 
原来是cmd /c惹的祸,应该把cmd /c放到最前面,就可以在开始运行里面运行了,而且,批处理当然也行。
 
于是,批处理&开始运行通用版重启桌面的一句话代码:
 
cmd /c  taskkill /f /im explorer.exe & start explorer
 
 
为啥用start呢,这个实验下就就知道了。
 
 
 
阅读(816) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~