我有兴趣与Windows Powershell中的OLE自动化(IDispatch)服务器进行通信。有人能指出一些简单的示例代码来说明这样做吗?我知道我可以使用New-Object -com My.App.Interface来创建对象,但随后与它交谈则是另一回事。在这种情况下,它是一个OLE自动化(IDispatch)接口,所以我不只是在返回的对象上调用方法,我正在调用IDispatch的Invoke方法。
所以,无论如何,只是想知道是否有人可以指点我做一些样本,我可以用作起点。
答案 0 :(得分:1)
$a=new-object -com ....
[System.__ComObject].invokemember(<Method>,[System.Reflection.BindingFlags]::invokeMethod,$null,$a,<args>)
[System.__ComObject].invokemember(<Property>,[System.Reflection.BindingFlags]::GetProperty,$null,$a,<args>)
答案 1 :(得分:-1)
我建议使用Get-Member来反映对象并发现可用的方法。您是否有关于我们在这里谈论的特定COM对象的其他信息?它是内置于Windows中的内容还是第三方COM对象?