c#/wpf OpenMP inside external dll

本文关键字:external dll inside OpenMP wpf | 更新日期: 2023-09-27 17:56:19

我有一些 c++ 库,托管 c++ 中的"胶水"库和 C#/WPF 应用程序中导入"胶水"库。一切正常,直到我添加一些

#pragma omp parallel for

当我编译我的 c++ 库/胶水库和 c#/wpf 应用程序时,一切都很好 - 没有警告/错误。但是当我尝试启动 c# 应用程序时,它会崩溃 - 但在执行某些并行代码时它不会崩溃 - 它在加载应用程序期间崩溃 - 它说:

在 PresentationFramework 中发生了类型为"System.Windows.Markup.XamlParseException"的第一次机会异常.dll

附加信息: Nie można utworzyć wystąpienia "Window1" zdefiniowanego w zestawie "fastnn-speedTest, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null".Obiekt docelowy wywołania zgłosił wyjątek. Błąd w pliku znaczników "fastnn-speedTest;component/Window1.xaml".

我知道它是波兰语,但显然 c# 应用程序无法加载使用 OpenMP 代码的 dll - 我如何让它工作?

当然,在我的 c++ 项目中,我打开了"启用 OpenMP"

c#/wpf OpenMP inside external dll

.NET

并不关心你的 DLL 做什么——使用 OpenMP 的 .NET 应该没有任何不同。 您的路径中是否有所需的 vcomp*.dll(VS2010 的 vcomp100.dll)?

它正在抛出XamlParseException,您是否 100% 确定不是您的 XAML 坏了?