假设我想捕捉一个COM事件:
初步文档中说要这样做:
ComAutomationEvent on_event = ComAutomationFactory.GetEvent(some_COM_obj, "SomeEvent");
on_event.EventRaised += OnEvent;OnEvent签名如下:
private void OnEvent(object sender, ComAutomationEventArgs e)ComAutomationEventArgs包含一个"Arguments“属性,其类型为object[]。
现在,我该如何准确地知道参数的实际类型呢?它们是需要"dynamic“关键字的COM类型,还是其他类型?
发布于 2010-03-08 00:04:14
要找出什么是“实际类型”,一种方法是阅读您正在使用其事件的COM对象的文档。这将告诉你每个参数的顺序和类型。
如果真的有必要的话,您可以在每个Object上使用GetType方法,但是,如果您不知道COM事件签名是什么,我就看不出参数数组中的任何内容对您有什么用处。
https://stackoverflow.com/questions/2394341
复制相似问题