问:
嗨,Scripting Guy!要找出已为 Internet Explorer 下载了哪些程序,有没有简便的方法(这些项目在文件夹 C:\Windows\Downloaded Program Files 中)?我可以使用一个脚本获得可执行文件名和依存文件,但是我想获得它们显示在文件夹中的文件名。
-- AC
答:
您好,AC。当您下载了 ActiveX 控件或 Java 小程序时,这些项目通常会放置在“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”文件夹中相同的友好名称。