我在AllocConsole()之间有一些std::cout和std::cin命令;和FreeConsole();,但是当我按ctrl +大写键锁定控制台时,只是短暂地闪烁而不会退出或等待cin。

设置用于启动控制台的热键的方法是否错误?

if (GetAsyncKeyState(VK_CONTROL) && GetAsyncKeyState(VK_CAPITAL)){ // ctrl + caps
            AllocConsole();
            ....
            ....
            ....
            ....
            FreeConsole();
        }

谢谢你的时间。

最佳答案

尝试GetAsyncKeyState(VK_CONTROL)&1

无论哪种方式,除非您将一些Sleep()放在其中,否则它只会打开然后立即关闭。

这绝对是RegisterHotKey的工作

09-17 06:50