我正在尝试创建一个MMC管理单元,除其他外,它将接收并显示从我的服务触发的日志事件。我已经创建了观察器并且它正确触发,但是当我尝试将节点添加到我的MmcListView时,我收到一个COMException,其中说“已经与其底层RCW分离的COM对象无法使用。”
以下是相关代码:
private void LogEvent_EventArrived(object sender, EventArrivedEventArgs e)
{
LogEvent logEvent = new LogEvent(e.NewEvent);
if (SnapIn.InvokeRequired)
{
object[] args = new object[] { logEvent };
SnapIn.Invoke(new ManagementAction(AddEvent), args);
}
else
AddEvent(logEvent);
}
LogEvent类是一个简单的类,它将ManagmentBaseObject属性转换为可轻松编码的类型安全属性。 AddEvent方法执行将LogEvent对象添加到MmcListView的ResultNodes列表的实际工作。
我提到的Exception实际上是在被触发的SECOND事件上调用的,而且似乎是在调用InvokeRequired时发生的。我不知道这里到底发生了什么。有什么想法吗?
答案 0 :(得分:0)