问题: win10下编写Windows下控制台程序时发现程序经常被阻塞.
原因: windows Powershell 分快速编辑模式和标准模式. 当处于快速编辑模式时, 鼠标点击控制台会导致,改程序被阻塞. 且系统默认情况下,是快速编辑模式
解决: 通过代码重置控制台的属性.
HANDLE hStdin = GetStdHandle(STD_INPUT_HANDLE);
DWORD mode;
GetConsoleMode(hStdin, &mode);
mode &= ~ENABLE_QUICK_EDIT_MODE; //移除快速编辑模式
mode &= ~ENABLE_INSERT_MODE; //移除插入模式
mode &= ~ENABLE_MOUSE_INPUT;
SetConsoleMode(hStdin, mode);