AllocConsole();使用GetAsyncKeyState();

时间:2015-04-24 14:03:39

标签: c++ console

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

这是设置热键以启动控制台的错误方法吗?

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

感谢您的时间。

1 个答案:

答案 0 :(得分:1)

尝试GetAsyncKeyState(VK_CONTROL)& 1

无论哪种方式,除非你在里面放一些Sleep(),否则它会立即打开然后立即关闭。

这绝对是RegisterHotKey

的工作