问题:在我的以下案例中,如何使用UWP 应用程序的allowElevation功能在安装了 1809 更新的 Windows 10 桌面上以提升的权限执行代码。Stefan Wick 的这篇好文章解释了从 UWP 应用程序到 WPF 应用程序的这种功能的类似用法,但在我的例子中,我使用的是类库而不是 exe。详细信息:在我的 VS2019 UWP 项目中,我添加了.NET Standard Class Library 项目。我的一个 UWP 方法是调用我的类库项目的以下方法。但由于 UWP 的沙盒性质——正如预期的那样——该应用程序在代码Access denied行抛出错误。Process.Start()public void Process_Start_Test(){ using (Process myProcess = new Process()) { myProcess.StartInfo.UseShellExecute = false; myProcess.StartInfo.FileName = @"C:\DotNET2019\UWP\TestFolder\MyExeApp.exe"; myProcess.StartInfo.CreateNoWindow = true; myProcess.Start(); //Access denied error here }}
1 回答
四季花海
TA贡献1811条经验 获得超5个赞
不能Process.Start
从沙盒 UWP 应用引用的 .NET Standard 库调用。
您需要创建一个实际的提升进程( .exe
),Process.Start
正如 Stefan 的博客文章所解释的那样调用。
完全信任.exe
当然可以在Process_Start_Test()
定义 的地方引用您的类库,但是无论是否在库中定义该方法,都必须从完全信任过程中调用。
- 1 回答
- 0 关注
- 145 浏览
添加回答
举报
0/150
提交
取消