aru*_*rul 0 c winapi windows-explorer windows-shell
我需要确保explorer.exe作为系统shell运行.我需要做的是:
Winlogon\Shell)explorer.exeexplorer.exe(作为shell)在最后两个步骤之间是一场比赛:
所以问题是,是否有任何事件/互斥/回调我可以调用以确保资源管理器初始化为shell?
我设法做的最好是等待托盘窗口,如:
while(!FindWindow("Shell_TrayWnd", NULL)) {
sleep(250);
}
Run Code Online (Sandbox Code Playgroud)
这似乎有点草率,有更好的方法吗?
我甚至都不会尝试这样做.您应该创建一个新的winsta0桌面(Win32 API CreateDesktop),在该桌面上启动Kiosk应用程序并切换到它.这样您就可以单独保留默认桌面,运行资源管理器,如果需要,可以返回它.在我们建立的自助服务终端项目中,我们取得了很大的成功.