在这个问题之后,我想列出一个Component Object Model (COM)
对象公开的所有方法和属性,给定它的ProgID
. 从这里我可以列出注册表中所有可用的 COM 对象 ProgID:
dir REGISTRY::HKEY_CLASSES_ROOT\CLSID -include PROGID -recurse | foreach {$_.GetValue(“”)}
尽管它.1
在某些导出字符串的末尾添加了一些数字(例如,)。
这里提出了一个小脚本,可以在给定 CLSID 的情况下完成这项工作。伪代码:
[activator]::CreateInstance([type]::GetTypeFromCLSID($CLSID)) | Get-Member
需要注意的是,我不知道 PowerShell,上面的 oneliner 很可能是错误的。
如果您能帮助我了解如何WScript.Shell
使用上述代码片段或任何其他方式获取 COM 对象的方法和属性列表,我将不胜感激。
PS它不一定是 PowerShell 解决方案。cmd/batch、JScript 和 VBScript 解决方案也很受欢迎。