【问题标题】:Event not firing through AppDomain事件未通过 AppDomain 触发
【发布时间】:2010-08-26 21:55:45
【问题描述】:

我在使用 AppDomains 时遇到了很多麻烦。我目前有一个包含相机控件的 AppDomain,并且正在尝试让从这个辅助 AppDomain 引发的事件(例如正在拍摄的照片)返回到主程序。一切似乎都设置正确(事件已注册,函数将跨域边界运行)但是当我尝试调用时,没有任何反应。我能找到的关于该主题的所有内容都涉及引发异常,而不是什么都没有发生。

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

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

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

【问题讨论】:

  • CameraContainer 的基本类型是什么?
  • @JaredPar 对象;它没有继承任何东西。
  • 请阅读我关于跨AppDomain通信的博客blog.vcillusion.co.in/…

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


【解决方案1】:

+1 表示对问题的努力。

我相信这可能只是因为您的CameraContainer 不是MarshalByRefObject。因为它附加到事件,所以包含CameraManagerAppDomain 在引发事件时实际上需要回调到主AppDomain

【讨论】:

  • 这个好像解决了!很高兴这很简单。谢谢!
  • 您确定CameraContainer 是在主应用程序域内触发的吗?因为我无法复制它。
  • 请阅读我关于跨AppDomain通信的博客blog.vcillusion.co.in/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-10
  • 2013-06-12
  • 1970-01-01
  • 2023-04-04
  • 2015-03-19
相关资源
最近更新 更多