c#/wpf OpenMP 在外部 dll 中
Posted
技术标签:
【中文标题】c#/wpf OpenMP 在外部 dll 中【英文标题】:c#/wpf OpenMP inside external dll 【发布时间】:2011-05-11 06:56:37 【问题描述】:我有一些 c++ 库、托管 c++ 中的“胶水”库和导入“胶水”库的 C#/WPF 应用程序。 一切正常,直到我添加一些
#pragma omp parallel for
当我编译我的 c++ lib/glue lib 和 c#/wpf 应用程序时,一切都很好 - 没有警告/错误。 但是当我尝试启动 c# 应用程序时它崩溃了——但是在执行一些并行代码时它不会崩溃——它在加载应用程序时崩溃——它说:
在 PresentationFramework.dll 中发生了“System.Windows.Markup.XamlParseException”类型的第一次机会异常
附加信息: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”
【问题讨论】:
【参考方案1】:.NET 不关心你的 DLL 做什么——使用 OpenMP 的应该没有什么不同。您的路径中是否有所需的 vcomp*.dll(VS2010 为 vcomp100.dll)?
它正在抛出一个XamlParseException
,你是否 100% 确定不是你的 XAML 坏了?
【讨论】:
以上是关于c#/wpf OpenMP 在外部 dll 中的主要内容,如果未能解决你的问题,请参考以下文章
csharp C#示例在外部文本编辑器应用程序(在本例中为记事本)中打开文本文件。