如何从在指定访问模式下运行的UWP应用程序关闭Windows平板电脑?

时间:2016-01-05 05:14:22

标签: c# windows-10 uwp kiosk-mode windows-10-universal

我在没有物理键盘的Windows平板电脑上运行指定访问模式的UWP应用程序。一旦用户完成操作,我想让用户关闭平板电脑(无法按Alt + CTRL + DEL并关闭,因为没有物理键盘)。我知道UWP没有关闭平板电脑的API。但有没有解决方法? Microsoft如何处理这种情况?

1 个答案:

答案 0 :(得分:3)

这在UWP应用程序中无法实现,该应用程序在App Container内部运行,并且没有此类权限。

但是,您可以为侧载的Windows应用商店应用试用Brokered Windows运行时组件。从本质上讲,它允许您使用UWP应用程序调用托管在不同进程中的Win32 API,该进程在App容器之外运行。

在您的代理组件中,您可以使用以下代码关闭您的PC。

var psi = new ProcessStartInfo("shutdown", "/s /t 0");
psi.CreateNoWindow = true;
psi.UseShellExecute = false;
Process.Start(psi);

以下是VS2015的代理WinRT组件模板 https://visualstudiogallery.msdn.microsoft.com/d2e9cac0-66a8-464a-a902-55ae765c8e6e?tduid=(c5f2776eb12ea55b8926d0c075062c9d)(256380)(2459594)(TnL5HPStwNw-gN1OuW5VyKxMyOTAH.bK0w)()

以下是为UWP创建代理组件的一个很好的示例, https://xamltips.wordpress.com/2015/11/13/brokered-component-for-uwp-on-windows-10/

有关详细信息,请参阅https://msdn.microsoft.com/en-us/library/windows/apps/dn630195.aspx