Shell.Application執(zhí)行命令的五種方法小結(jié)
更新時間:2010年11月28日 19:10:29 作者:
可能很多人發(fā)現(xiàn)了在海陽頂端2006+版本中Shell.Application執(zhí)行命令的方法在win2003中不好用了。
當初老馬寫這個版本時,我測試過簡繁兩個2003版本的,當是是好用的。我猜測很可能與2003打了ms06014補丁有關(guān)。kyo在冰點論壇提出了解決方法,我今天下午研究了一下這個組件,發(fā)現(xiàn)它有5種方法可以執(zhí)行命令。以下是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,可以加參數(shù)和設置參數(shù)值
'方法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 '右鍵菜單中在中文系統(tǒng)是"打開(&O)",英文自己改
objFIV.DoIt
Exit For
End IF
Next
復制代碼 代碼如下:
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,可以加參數(shù)和設置參數(shù)值
'方法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 '右鍵菜單中在中文系統(tǒng)是"打開(&O)",英文自己改
objFIV.DoIt
Exit For
End IF
Next
相關(guān)文章
使用 Iisext.vbs 刪除應用程序依存關(guān)系的實現(xiàn)方法
這篇文章主要介紹了使用 Iisext.vbs 刪除應用程序依存關(guān)系的實現(xiàn)方法,需要的朋友可以參考下2014-07-07vbs+hta中實現(xiàn)在單個 onClick 參數(shù)中包括多個子例程的代碼
vbs+hta中實現(xiàn)在單個 onClick 參數(shù)中包括多個子例程的代碼...2007-04-04