在Windows 8 App Store应用程序中使用unthreadsafe,非托管代码?

时间:2014-09-30 23:49:09

标签: c# visual-studio-2013 windows-store-apps unmanaged

我有一个Windows桌面应用程序,用于启动包含非托管代码的工作进程。非托管代码不是线程安全的 - 我将它包装在一个完全隔离它的过程中。

我想为Windows App(metro)市场创建一个新版本。

任何人都有任何建议从地铁应用程序做同样的事情?似乎没有任何方法可以真正启动一个单独的进程(至少,没有需要单独安装的hacky)。我可以把它包装在AppDomain中,但我不认为它提供了我需要的隔离。我可以PINVOKE ONE实例,但线程安全问题使它成为多个实例的问题。

1 个答案:

答案 0 :(得分:3)

Windows应用商店应用无法启动任意进程,但他们可以从应用包中启动进程外组件。您可以将不安全的代码包装在Windows运行时EXE组件中。

有一个示例在Creating a Windows Runtime EXE component with C++ sample

上展示了这一点

还要确保现有流程不依赖于Windows应用商店应用无法使用的API(例如System.AppDomain)。 MSDN上有关于.NET for Windows Runtime appsWin32 and COM APIs的运行时应用程序中提供.Net和Win32 API的文档

相关问题