RPi3正在运行Win 10 IoT核心版v.10.0.17661.1001,并且配置为无头模式,因此任何前台应用都不能运行。 参考:https://docs.microsoft.com/en-us/windows/iot-core/learn-about-hardware/headlessmode
部署必须在没有任何人工干预的情况下进行,并且必须在默认情况下将应用配置为启动,然后问题就开始了。
已安装后台“自动更新”应用程序,并将其配置为手动启动。这可能会更新或安装其他应用程序(侧载),而无需任何用户输入,但是,在安装新应用程序时,我需要将其配置为启动,因此,如果设备重新启动,我可以确定进程正在运行。
此外,将需要配置多个应用程序才能在启动时启动。
我尝试了以下方法:
1)启动任务扩展名在Win10 IoT核心版上不起作用,仅在Win Desktop上可用: https://docs.microsoft.com/en-us/uwp/api/windows.applicationmodel.startuptask#windows-web-app-wwa-startup-task-extension
2)在首次运行时配置为启动也不起作用,并且通过启动ID查询时会引发异常。 https://blogs.windows.com/buildingapps/2017/08/01/configure-app-start-log/#17JjiMyXTtyyAkRV.97
3)安装新应用后,从“自动更新”过程中运行powershell脚本或IotStartup命令,但是在Win10IoT Core上,无法从应用程序中执行(至少对于powershell)。 https://www.hackster.io/AnuragVasanwala/windows-10-iot-core-setting-startup-app-887ed0
4)我发现这种方法可以从IoT上的代码运行cmd http://www.iot-developer.net/windows-iot/uwp-programming-in-c/command-line-uwp-programming-in-c/executing-command-line-commands
有趣的是 Windows.System.ProcessLauncher ,并且相关类似乎不存在。
我想,与启动应用程序时配置应用程序最接近的是所描述的第4种方法,尽管我仍然需要弄清楚ProcessLauncher会发生什么,或者是否可能需要某些特定版本的SDK才能使用它。
已经浪费了数小时来尝试执行此工作,因此,如果有人有任何见解或想法,请告诉我! :)