Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何用C++;?_C++_Windows_Fullscreen_Kiosk - Fatal编程技术网

C++ 如何用C++;?

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

我一直在Visual Studio 2015(C++)中开发一个应用程序。这是我学校技术支持的一个信息亭应用程序。基本上,它是一个支持站点,将在一个信息亭中运行。我需要弄清楚如何锁定窗口,使其只运行该程序。在全屏模式下运行程序也会很有帮助。请记住,所有信息亭都运行Windows 7。

设置注册表项

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-不,它真的没有。