欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Shell.Application执行命令的五种方法小结

程序员文章站 2022-08-27 16:53:07
当初老马写这个版本时,我测试过简繁两个2003版本的,当是是好用的。我猜测很可能与2003打了ms06014补丁有关。kyo在冰点论坛提出了解决方法,我今天下午研究了一下这...
当初老马写这个版本时,我测试过简繁两个2003版本的,当是是好用的。我猜测很可能与2003打了ms06014补丁有关。kyo在冰点论坛提出了解决方法,我今天下午研究了一下这个组件,发现它有5种方法可以执行命令。以下是vbs版本(asp版不提供了,如何利用asp版本在2003的webshell中运行命令,自己解决吧:-):
复制代码 代码如下:

set objshellapp = createobject("shell.application")
set objfolder = objshellapp.namespace("c:\")
objfolder.items().item("demo.exe").invokeverb '方法1
objfolder.items().item("demo.exe").invokeverbex'方法2
objshellapp.open("c:\demo.exe") '方法3

objshellapp.shellexecute "demo.exe","","c:\","","1" '方法4,可以加参数和设置参数值

'方法5
set objfolderitem = objshellapp.namespace("c:\").items().item("demo.exe")
set objfivs = objfolderitem.verbs()
for i=0 to objfivs.count - 1
'msgbox objfivs.item(i)
set objfiv = objfivs.item(i)
if objfiv.name = "打开(&o)" then '右键菜单中在中文系统是"打开(&o)",英文自己改
objfiv.doit
exit for
end if
next