我正在配置Windows10Enterprise (IoT)来运行一个自定义外壳程序,但是遇到了“黑屏,只有一个光标”的现象。
我的应用程序--一个.Net4 Winforms应用程序--已经安装好了,并且在桌面上运行得很好。
我可以通过批处理文件将其作为自定义外壳启动,如下所示:How to run an application as shell replacement on Windows 10 Enterprise
但将我的应用程序设置为自定义shell时,我只能看到黑屏。
我注意到上面链接中关于应用程序正在签名的注释,但我已经尝试了两个迷你测试应用程序(也是.net winforms),一个签名,一个没有签名,它们都作为自定义shells运行得很好。(我的应用程序有几个依赖项,并不是所有的依赖项都是签名的,所以要签名就意味着要经历ILMerge工厂或类似的过程,如果可以的话,我宁愿避免这样的情况。)
我不期望人们能够告诉我为什么我的应用程序不能运行(尽管那会很好!)但我正在寻找诊断这个问题的方法。查看事件日志等,不会产生任何信息。我的应用程序保留了自己的事件日志,其中没有显示任何应用程序启动的证据。
提前感谢
发布于 2016-09-21 21:44:41
问题已解决:
如果shell应用程序需要提升权限,则必须关闭UAC。通过控制面板关闭通知是不够的,因为UAC仍在后台运行-它只是不通知你!要完全关闭UAC,请编辑注册表项: HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System并将DWORD值EnableLUA设置为0
可以在windows事件日志中找到UAC行为的证据: Applications -> Services Logs -> Microsoft -> Windows ->UAC
https://stackoverflow.com/questions/39613612
复制相似问题