如何在具有 AppContainer 完整性级别的 Windows 8 中创建命名管道?
问问题
2835 次
2 回答
2
谈论 WinRT - 你真的不能创建命名管道。
谈论在 AppContainer 完整性级别下运行的 Windows 8 桌面应用程序 - 您可以通过常规 WinAPI 函数创建命名管道。问题是默认情况下只有具有相同 AppContainer ID 的应用程序可以访问它(换句话说 - 只有您自己的应用程序的实例)。但实际上,如果您有处于高或中完整性级别的进程 - 您可以从该进程创建管道并降低其完整性级别,以便 AppContainer 中的应用程序可以使用它。
看看这里的示例:http: //msdn.microsoft.com/en-us/library/windows/desktop/hh448493 (v=vs.85).aspx
甚至更多 - 从具有高完整性级别的桌面应用程序,您可以使用 dll 注入将您的 dll 注入 WinRT 应用程序,然后再次使用 WinAPI 创建管道。因此,管道在 WinRT 中被拒绝不是因为操作系统设计,而是因为 WinRT 中缺少接口。
于 2014-08-12T12:49:16.707 回答