Powershell 如何查看COM对象的所有方法/成员?
我正在尝试获取QuickTest.Application和QuickTest.RunResultsOptions COM对象,但当我以这种方式访问它们时,我无法获取官方帮助文件中列出的所有成员Powershell 如何查看COM对象的所有方法/成员?,powershell,com,qtp,Powershell,Com,Qtp,我正在尝试获取QuickTest.Application和QuickTest.RunResultsOptions COM对象,但当我以这种方式访问它们时,我无法获取官方帮助文件中列出的所有成员 PS> $app = New-Object -ComObject QuickTest.Application -Strict PS> $app | Get-Member 例如,我知道Launch() Dim app Set app = CreateObject("QuickTest.Appl
PS> $app = New-Object -ComObject QuickTest.Application -Strict
PS> $app | Get-Member
例如,我知道Launch()
Dim app
Set app = CreateObject("QuickTest.Application")
app.Launch
Get成员没有显示它们并不意味着COM对象中没有它们。您必须找到一些文档,以查看成员名称是什么以及它需要哪些参数。对于.NET对象来说,这不是问题,因为它总是有元数据来描述类型和类型成员签名。PowerShell并不总是为COM对象提供此信息。此外,PowerShell不会将COM对象强制转换到其接口,这使得我使用的一些COM API上的一系列方法不可见。我实际上有一个COMObjects.Types.ps1xml文件,我在我的配置文件中导入该文件:
Update-TypeData -PrependPath "(Split-Path $Profile)\COMObject.Types.ps1xml"
实际的types.ps1xml文件是,它将GetProperty/SetProperty/InvokeMethod成员添加到COM对象正是因为这个原因:访问Powershell看不到的成员,非常感谢。我要试试。你能给我举个例子说明“InvokeMethod”方法和params的用法吗?我想我自己找到了答案:)抱歉让你挂断电话,我在度假;)这对我没用。我设置了类型文件,进行了更新调用,但是我的QuickTest.Application
实例没有重要的方法,比如Launch
。