[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[原创] VBS+HTA版进程管理程序

闲来无事,写了个小程序:进程管理器。
1、功能:列举进程、(ntsd强制)结束进程,标志用户进程(区分系统进程),标志非C盘进程文件,支持在线查询进程说明(向百度提交关键词),可以打开进程所在文件夹并选择该文件。
2、应用范围:当资源管理器被病毒禁用时。

3、程序运行界面:
[attach]1584[/attach]

4、程序下载:
[attach]563[/attach]

5、源代码:
  1. <!--////////程序说明/////////====
  2. Intro  进程管理器:获取进程信息,支持网络查询,支持强制结束进程
  3. FileName 进程管理器
  4. Author  2laoshi
  5. Version  ver1.0
  6. Web  http://www.2laoshi.cn
  7. MadeTime 2008-11-6~2008-11-7
  8. <!--//////////设置hta格式////////////-->
  9. <HTA:APPLICATION
  10. SCROLL="no"
  11. MaximizeButton="no"
  12. MinimizeButton="no"
  13. INNERBORDER="no"
  14. SHOWINTASKBAR="yes"
  15. SINGLEINSTANCE="yes"
  16. BORDER="thin"
  17. />
  18. <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  19. <!--//////////样式////////////-->
  20. <style type="text/css">
  21. a:link {color:blue}
  22. a:visited {color: blue}
  23. body  {background: #EEEEEE}
  24. hr {width:90%;height:1px;margin:-5;color:#ccc}
  25. p {font-size:12;margin:-2 5 2 5;}
  26. fieldset {border :1px solid #BEBEBE;font-family:宋体;}
  27. legend {color:red;font-size:14px}
  28. #toper{text-align=center;font-size:13px;font-family: "隶书";color:darkblue;padding:1px;line-height:15px;background-color:white;width:250;align:center;margin:2 0 -5 100;}
  29. #content{border:1px solid #ccc;height:360;width:390;margin:3;float:left}
  30. #rightbox1{border:1px solid #ccc;height:219;width:135;margin:3;float:left;}
  31. #rightbox2{border:1px solid #ccc;height:135;width:135;margin:3;float:left;}
  32. #footer{border:1px solid #ccc;height:40;width:540;margin:0 5;}
  33. #Ttable TD{text-align=center;background-color:#006699;font-size:13px;height:18;
  34.          font-family: "隶书";color:#F2F3F7;padding:2px;line-height:18px;font:bold;}
  35. #MyTable Td{background-color:#ccd2de;font-size:12px;padding-top:1px;height:20px;padding-left:4}
  36. .row2{background-color:#ccd2ad;font-size:12px;padding-top:1px;height:20px;padding-left:4}
  37. .div_button{text-align:center;width:100%;border:1px solid #ccc;
  38.           background-color:#EEEEEE;font-size:12px;color:#333333;
  39.           padding:3px 2px;margin:2px;line-height:20px;}
  40. .button {padding:1px;text-align:center;border:0;background-color:#eee;height:23px;cursor:hand;}
  41. .div_class{WIDTH:100%; HEIGHT:332; BACKGROUND-COLOR: transparent; overflow-y: scroll; scrollbar-shadow-color: #ffffff; scrollbar-highlight-color: #ffffff; scrollbar-face-color: #d9d9d9; scrollbar-3dlight-color: #d9d9d9; scrollbar-darkshadow-color: #d9d9d9; scrollbar-track-color: #ffffff; scrollbar-arrow-color: #ffffff;}
  42. </style>
  43. <!--//////////函数区////////////-->
  44. <script language="vbscript">
  45. ON ERROR RESUME NEXT
  46. URL="http://www.baidu.com/s?wd="
  47. set objWMIS=GetObject("winmgmts:\\.")
  48. set fso=CreateObject("Scripting.FileSystemObject")
  49. set wsh=CreateObject("Wscript.Shell")
  50. Sub Window_onLoad
  51. window.resizeTo 550,420
  52. ileft=(window.screen.width-550)/2
  53. itop=(window.screen.height-445)/2      
  54. window.moveTo ileft,itop
  55. GetProcList()               
  56. End Sub
  57. Sub Window_onUnLoad
  58. set fso=nothing
  59. set wsh=nothing            
  60. End Sub
  61. '添加表格行;
  62. Function addRow(str1,str2,str3,flag,flag2)
  63. set newrow=MyTable.insertRow()
  64. set newcell=newrow.insertCell()
  65. newcell.innerHTML=str1
  66. set newcell=newrow.insertCell()
  67. newcell.innerHTML=str2
  68. if flag=1 then newcell.style.backgroundcolor="#ccd2ad"
  69. set newcell=newrow.insertCell()
  70. newcell.ondblclick=getRef("OpenFolder")
  71. newcell.style.cursor="hand"
  72. if flag2=1 then newcell.style.backgroundcolor="#acd2ad"
  73. newcell.innerHTML=str3
  74. End Function
  75. '获取进程列表
  76. Function GetProcList()
  77. for i =1 to MyTable.rows.length-1
  78. MyTable.deleteRow()
  79. next
  80. set ColProc=objWMIS.InstancesOf("Win32_Process")
  81. for each objProc in ColProc
  82. flag2=0
  83. Pname=objProc.name
  84. PID=objProc.ProcessID
  85. Ppath=objProc.ExecutablePath
  86. if isNull(Ppath) then
  87.   Ppath=""
  88. else
  89.   if lcase(fso.getfile(Ppath).drive)<>"c:" then flag2=1
  90. end if
  91. colProperties=objProc.GetOwner(strNameOfUser,strUserDomain)
  92. Puser=Lcase(strNameOfUser)
  93. select case Puser
  94.   case "system" Puser="系统进程"
  95.   case "local service" Puser="本地服务"
  96.   case "network service" Puser="网络服务"
  97.   case else Puser="用户进程"
  98. end select
  99. str1="<input type=checkbox id="&PID&">"
  100. str2="<a title="&Puser&"。点击到百度查看详细说明 href="&URL&Pname&">"&Pname&"</a>"
  101. str3="<a title=双击打开文件夹>"&Ppath&"</a>"
  102. if lcase(Pname)<>"system idle process" then
  103.   if Puser="用户进程" then
  104.     addRow str1,str2,str3,1,flag2
  105.   else
  106.    addRow str1,str2,str3,2,flag2
  107.   end if
  108. end if
  109. next
  110. End Function
  111. '打开文件夹,并选择指定文件;
  112. Function OpenFolder()
  113. wsh.run "Explorer.exe /select,"&me.innertext
  114. End Function
  115. Function KillProc()
  116. for i=1 to MyTable.rows.length-1
  117. if MyTable.rows(i).cells(0).children(0).checked=true then
  118.   PIDArr=PIDArr&MyTable.rows(i).cells(0).children(0).id&","
  119. end if
  120. next
  121. if PIDArr then
  122. PIDArr=left(PIDArr,(len(PIDArr)-1))
  123. else
  124. exit function
  125. end if
  126. PIDArr=split(PIDArr,",")
  127. set ColProc=objWMIS.InstancesOf("Win32_Process")
  128. for each objProc in ColProc
  129. PID=objProc.ProcessID
  130. for i=0 to UBound(PIDArr)
  131.   if PID=int(PIDArr(i)) then
  132.    objProc.terminate
  133.    set objindex=document.getelementbyid(PIDArr(i))
  134.    index=objindex.parentelement.parentelement.rowindex
  135.    MyTable.deleteRow(index)
  136.   end if  
  137. next
  138. next
  139. End Function
  140. Function KillProc2()
  141. for i=1 to MyTable.rows.length-1
  142. if MyTable.rows(i).cells(0).children(0).checked=true then
  143.   id=MyTable.rows(i).cells(0).children(0).id
  144.   wsh.run "ntsd -c q -p "&id,0
  145.   MyTable.deleteRow(i)
  146. end if
  147. next
  148. End Function
  149. </script>
  150. <!--//////////版面设计区////////////-->
  151. <title>进程管理器</title>
  152. <body topmargin="2" rightmargin="0" leftmargin="0" oncontextmenu=self.event.returnvalue=false>
  153. <div id=toper>进程管理器processorManager(ver1.0)</div>
  154. <div id=content>
  155. <TABLE id="Ttable" cellSpacing=1 cellPadding=0 width=100%>
  156. <TR>
  157. <TD width=40>全选</TD>
  158. <TD width=120>进程名</TD>
  159. <TD width=300>进程所在</TD>
  160. <TD width=13></TD></Tr>
  161. </TABLE>
  162. <div class="div_class">
  163. <TABLE id="mytable" cellSpacing=1 cellPadding=0 width=100% style="margin-top:-22">
  164. <TR title="这一行只是演示,所有数据不保存">
  165. <TD width=32><input type=checkbox></TD>
  166. <TD width=45>1000000000000000</TD>
  167. <TD width=243>cccccccccccccccccccccccccccccccccccc</TD>
  168. </TABLE>
  169. </div>
  170. </div>
  171. <div id=rightbox1>
  172. <p align=center style="margin-top:5;">程序简介
  173. <hr>
  174. <p style="color:red;">程序功能:
  175. <p>列举、结束、强制结束、在线查询进程;获取进程文件所在路径;
  176. <hr>
  177. <p style="color:red;">程序运行:
  178. <p>基于hta+vbs编写,需WSH支持;XP下测试通过。
  179. <hr>
  180. <p style="color:red;">作者信息:
  181. <p><a href="http://www.2laoshi.cn" title="访问作者博客">2laoshi(youxi01)</a>
  182. </div>
  183. <div id=rightbox2>
  184. <div class="div_button">
  185. <input type=submit value="更新列表" class="button" onclick=GetProcList></div>
  186. <div class="div_button">
  187. <input type=submit value="结束进程" class="button" onclick=killProc></div>
  188. <div class="div_button">
  189. <input type=submit value="强制结束" class="button" onclick=KillProc2></div>
  190. <div class="div_button">
  191. <input type=submit value="退出程序" class="button" onclick=self.close></div>
  192. </div>
复制代码
2

评分人数

多学习学习,看一看 谢谢

TOP

62124528    VBS 自学者交流群, 大家有时间可以在一起聊一下

TOP

看了楼主的帖子
觉得你很厉害
楼主什么时候出教程
我一定拜读

TOP

偶非常你写的BAT教程,如果你再来点入门的VBS那就更好了。

TOP

楼主您好 ....

小弟非常羨慕樓主可以vbs制成一个小程序

不知道是否有其他资源  可以学如何制作这种版快的教程

TOP

支持rat版主!!!同时支持楼主!!!
有你的付出才有我们的进步!!

TOP

太谦虚了,大家一起进步啊,我写教程的时候就是这么想的

TOP

回复 2楼 的帖子

惭愧,惭愧...

不过要写vbs教程,真是觉得无从下手,水平不够...

TOP

闲来无事

写写vbs教程吧!

TOP

返回列表