我在 C# 中有以下代码,我尝试将其移植到 PowerShell。但我不知道如何移植这个演员:
((_ISkypeEvents_Event)skype).CallStatus += CallStatusHandler;
如果我只是在我的 PowerShell 控制台中键入 [Skype4COM.ISkypeEvents_Event],我会得到:
找不到类型 [Skype4COM.ISkypeEvents_Event]:确保已加载包含此类型的程序集。
但是,我可以获得 $skype 对象的所有成员:
$skype = New-Object -ComObject Skype4COM.Skype
以下行不起作用:
$skypeevent = [Skype4COM._ISkypeEvents_Event]$skype
如果我尝试直接在 $skype 对象上调用该方法,如下所示:
$skype.add_CallStatus({ write-host "yay" })
...它(如预期的那样)告诉我:
方法调用失败,因为 [System.__ComObject#{b1878bfe-53d3-402e-8c86-190b19af70d5}] 不包含名为“add_CallStatus”的方法。
我试图创建一个 COM 包装器,但它仍然无法获取 COM 接口的类型......
有任何想法吗?非常感谢!