問:
嗨,Scripting Guy!要找出已為 Internet Explorer 下載了哪些程式,有沒有簡便的方法(這些項目在檔案夾 C:\Windows\Downloaded Program Files 中)?我可以使用一個指令碼獲得可執行檔名和依存檔案,但是我想獲得它們顯示在檔案夾中的檔案名稱。
-- AC
答:
您好,AC。當您下載了 ActiveX 控制項或 Java Applet時,這些項目通常會放置在“Downloaded Program”檔案夾中。您可以在 Windows 資源管理員中或從 Internet Explorer 中查看這些項目。(單擊“Internet 選項”,然後在“常規”選項卡上單擊“設定”。在“設定”對話方塊中,單擊“查看對象”。)
當您使用 Windows 資源管理員查看檔案夾內容時,您會看到“MSN File Upload Control”之類的易記名稱。不過,如果您使用 dir 命令或使用 FileSystemObject 之類的指令碼訪問此檔案夾,您就會看到“MsnUpld.cab”之類的可執行檔名。您希望能夠使用指令碼返回您在 Windows 資源管理員中看到的這些易記名稱。
那麼您該怎麼做呢?當然了,您可以使用下面的這個指令碼:
複製代碼 代碼如下:strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & _
"\root\cimv2\Applications\MicrosoftIE")
Set colIESettings = objWMIService.ExecQuery _
("Select * from MicrosoftIE_Object")
For Each strIESetting in colIESettings
Wscript.Echo "Code base: " & strIESetting.CodeBase
Wscript.Echo "Program file: " & strIESetting.ProgramFile
Wscript.Echo "Status: " & strIESetting.Status
Wscript.Echo
Next
此指令碼依賴於類 MicrosoftIE_Object 和命名空間 root\cimv2\Applications\MicrosoftIE,據我們所知,這個類和這個命名空間都還未經過證明。但是,似乎這個指令碼可以使用;運行此指令碼,您將得到與以下內容類別似的輸出:
Code base: http://sc.groups.msn.com/controls/FileUC/MsnUpld.cab
Program file: MSN File Upload Control
Status: Installed
正如您看到的那樣,“ProgramFile”屬性為您提供了與顯示在“Downloaded Programs”檔案夾中相同的易記名稱。