我在试图建立一个C++/CLI可执行我静态链接。(libavcodec,带,libavutil&swscale).它工作得很好如果我建立非常(而不/clr,所以没有CLR的支持),它的工作。然而,当我加CLR的支持,它将不会启动了一个0xc000007b."Hello World"C++/CLI应用程序运行良好,虽然。

据说同样的事情发生在提升::线。但是,由于纯粹是C,我怀疑它的使用提高。

我的配置:

  • Visual Studio2008年专业SP1
  • Windows XP亲SP3(86)
  • .净框架3.5sp1

谢谢, 罗伯特*

有帮助吗?

解决方案

它可能不采用提高,但它可能使用螺纹和线的地方储存,从而导致同样的问题。CLR是不兼容的声明影响(螺纹)。我相信,没有简单的解决办法,除非你愿意修改。码(如果你是谷歌的那些关键词为例子:clr,声明影响(线)).

我建议隔离。在一个不同的进程,并使用一些手段的进程间的通信。

其他提示

我已经看到类似的问题,涉及DirectEditServices.该方案结束了被相关的线公寓的类型。中。网2.0和后来默认线的公寓类型的交换从STA MTA。一些地C++对象不支持MTA。我已经成功通过产卵线和手动设置类型的公寓STA。请记住,任何进程间的通信有一个地C++对象,并不支持STA必须发生在STA线,实例的对象。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top