事件不通过AppDomain触发

时间:2010-08-26 21:55:46

标签: c# .net appdomain .net-remoting

我在AppDomains上遇到很多麻烦。我目前有一个包含摄像头控件的AppDomain,并且我试图从这个辅助AppDomain引发的事件(就像正在拍摄的照片)回到主程序。一切似乎都设置正确(事件已注册,函数将跨域边界运行)但当我尝试调用时,没有任何反应。我能找到的关于这个主题的一切都涉及到提出的异常,而不是根本没有发生任何事情。

我不知道我能解释多少比这更好,所以我制作了一个(非常简单的)图表,并且可以发布任何必要的代码。

http://a.imageshack.us/img832/8205/cameradiagram.png

断点在辅助AppDomain内的OnPictureUpdated.Invoke(pic);部分触发,但没有任何内容(在CameraContainer内或在主应用程序中引发。我在调用事件时进行空检查,我只是没有把它放在图表中。

1 个答案:

答案 0 :(得分:5)

+1问题中的努力。

我认为这可能只是因为您的CameraContainer不是MarshalByRefObject。因为它附加到事件中,所以AppDomain包含CameraManager的{​​{1}}实际上需要在引发事件时回调到主AppDomain