【问题标题】:C# WPF - Camera capture from DLLC# WPF - 从 DLL 捕获相机
【发布时间】:2017-01-09 10:20:31
【问题描述】:

我正在使用 AForge.NET 库来捕获 USB 摄像头, 我需要那段代码在 DLL 上。 对于每一帧,AForge.NEt 库创建一个带有位图的事件,我试图将此事件冒泡到我的 WPF 主窗口,为此我在 DLL 库中创建了一个简单事件,以便主应用程序可以初始化此事件。 但我得到“调用线程无法访问此对象,因为不同的线程拥有它。” 我正在使用

Dispatcher.Invoke(() => 
   {
       imgCamera.Source = newFrame;
   });

仍然是相同的消息。有什么想法吗?

【问题讨论】:

  • imgCameranewFrame 是否属于另一个线程?您应该先克隆 newFrame,然后再将其分配给另一个对象
  • 我试过了。它没有帮助。
  • 我的猜测是第三个未被调用的线程拥有imgCameranewFrame。尝试在之前设置断点并检查线程。

标签: c# wpf aforge


【解决方案1】:

我花了这么多时间找到了解决方案。 只是做-> newFrame.Freeze();

它处理所有线程问题

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-06-13
    • 2021-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-11
    • 2015-03-19
    • 2018-02-13
    相关资源
    最近更新 更多