如何使用 fulltrustlauncher 在 uwp 应用程序中启动 .exe 文件?

GIA*_*PZO 4 launch uwp desktop-bridge

现在,我需要在我的 uwp 应用程序中执行一个 .exe 文件。我知道一个解决方案是使用 fulltrustlauncher,但我已经搜索了很多次这个解决方案,但我的编程水平似乎太低,所以我很难理解他们的解释(例如:使用 UWP 从 C# 运行 EXE ) . 那么,您如何获得此解决方案的简单示例代码?你可以分享吗?
谢谢!

GIA*_*PZO 6

最后,我可以在我的 UWP 应用程序中启动我的 .exe 文件。我将像这样逐步描述我的解决方法:
1. 创建您的可执行 .exe 文件(例如控制台应用程序)
2. 将 .exe 文件复制到您的 UWP 应用程序启动文件夹(例如:Assets 文件夹)
3. 在 UWP 应用程序中解决方案资源管理器,在“参考 > 通用 Windows > 扩展”下添加对“Windows Desktop Extensions For The UWP v10.0.14393.0”(或更高版本)的引用。
4. 在 UWP 应用解决方案资源管理器中,打开 Package.appxmanifest xml 文件(右键单击 Package.appxmanifest 文件 --> 查看代码)。添加这些命名空间

xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities" xmlns:desktop="http://schemas.microsoft.com/appx/manifest/desktop/windows10"
Run Code Online (Sandbox Code Playgroud)

包装标签。然后,添加此扩展名:

<Extensions>
    <desktop:Extension Category="windows.fullTrustProcess" Executable="Assets\YourExecutableFileName.exe" />
</Extensions>
Run Code Online (Sandbox Code Playgroud)

应用程序标签下。然后,添加以下代码:

<rescap:Capability Name="runFullTrust" />
Run Code Online (Sandbox Code Playgroud)

进入你的能力标签。这一步意味着:与编译器交谈以了解它应该信任Assets\YourExecutableFileName.exe位置中的 .exe 文件。
5. 在您的 UWP 应用程序中,每当您想要启动 .exe 文件时,您都需要执行以下代码:

await FullTrustProcessLauncher.LaunchFullTrustProcessForCurrentAppAsync();
Run Code Online (Sandbox Code Playgroud)

参考:很好的答案

  • 当我将 rescap-capability 部分添加到 &lt;capability&gt; 部分时,我收到这个奇怪的错误。https://ibb.co/gTGz5Rc 错误读取为“命名空间 'http://schemas.microsoft.com/appx/manifest/foundation/windows10/' 中的元素 'Capabilitis' 在命名空间 ' 中具有无效的子元素 'Capability' .../限制能力' " . 如果可能的话,您能否发布 Package.appxmanifest 文件内容。 (2认同)