C++ 如何用C++;?
我一直在Visual Studio 2015(C++)中开发一个应用程序。这是我学校技术支持的一个信息亭应用程序。基本上,它是一个支持站点,将在一个信息亭中运行。我需要弄清楚如何锁定窗口,使其只运行该程序。在全屏模式下运行程序也会很有帮助。请记住,所有信息亭都运行Windows 7。设置注册表项C++ 如何用C++;?,c++,windows,fullscreen,kiosk,C++,Windows,Fullscreen,Kiosk,我一直在Visual Studio 2015(C++)中开发一个应用程序。这是我学校技术支持的一个信息亭应用程序。基本上,它是一个支持站点,将在一个信息亭中运行。我需要弄清楚如何锁定窗口,使其只运行该程序。在全屏模式下运行程序也会很有帮助。请记住,所有信息亭都运行Windows 7。设置注册表项 HKCU SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon Shell="c:\path\to\whatever.exe" 通过taskmgr
HKCU SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
Shell="c:\path\to\whatever.exe"
通过taskmgr.exe的安全性禁用任务管理器(向二进制文件添加拒绝读取+拒绝执行)
设置自动登录:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
DefaultUserName = whatever
DefaultPassword = whatever
手边有一个启动盘。扭转这种情况的唯一方法是引导引导盘,并在安装相应的配置单元后撤消其中一个步骤。您可以在主窗口处于全屏模式并弹出时创建程序:
hWnd = CreateWindowEx(WS_EX_CLIENTEDGE|WS_EX_APPWINDOW|WS_EX_TOPMOST,
lpClsName,
"MDI Project under Visual C++ WINAPI",
WS_BORDER|WS_POPUP,
...);// add the remaining parameters
找到taskmgr.exe并将其隐藏,然后单击“开始”菜单按钮并将其隐藏:
hTaskBar = ::FindWindow ("Shell_TrayWnd", "");
hStart = ::FindWindowEx(GetDesktopWindow(), NULL, "Button", "Start");
ShowWindow(hTaskBar, SW_HIDE);
ShowWindow(hStart, SW_HIDE);
<> P>所以你的程序看起来像EasyCale/HuffyCale[< /P>> P>我实际上从C++转换到C,所以我将用C来解释我的答案。 我使用了一个键盘钩子库来捕获键盘输入,并阻止所有非字母/数字输入,这样alt-f4、alt-tab等就不起作用了。然后,我使用另一个键盘挂钩(LWin+C+Home+F12+PrtSc)确定了字符的结束序列 至于Ctrl-Alt-Del,它不能被禁用(据我所知),因为它是一个系统函数,所以我只是保持原样 我还获得了屏幕的边界,并在应用程序启动时,以及在应用程序调整大小或移动时,将窗口大小设置为最大屏幕大小。这基本上使得应用程序覆盖了任务栏,带有关闭和最小化按钮的任务栏也被覆盖,但如果有人找到了移动它的方法,它会立即恢复到原来的大小
我还设置了autologin,这在前面的回答中有详细说明,但我只是没有通过代码来设置。Windows7有一个“kiosk模式”。你应该可以用它来做你想做的事情。@ChrisF-不,它真的没有。