AllocConsole()

Posted develon

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AllocConsole()相关的知识,希望对你有一定的参考价值。

AllocConsole() 为 Windows 程序创建一个控制台窗口, 失败返回零, 可调用 GetLastError().

分配控制台后可能需要重定向标准输出和标准输入(Windows 平台标准错误和标准输出相同),

这时就需要两个特殊的文件名了:

  CONOUT$     --Console output

  CONIN$      --Console input

使用 OpenFile() 或者 VC++ 提供的 C I/O 函数来操练它们吧!

如果使用 Unicode 字符集, 可能需要设置控制台的代码页或者设置 VC++ 运行时的 Unicode 字符的映射目标字符编码:

  system("chcp 65001"); // 设置控制台使用 UTF-8 编码映射代码页

  const char *infoSetCodePage = setlocale(LC_CTYPE, ""); // 自动设置目标字符集为系统默认代码页

总之控制台对于国际化十分不友好, 不要太依靠它!

以上是关于AllocConsole()的主要内容,如果未能解决你的问题,请参考以下文章

AllocConsole 错误代码

带有隐藏控制台窗口的 AllocConsole()

coco2d-x open console

AllocConsole()

golang 使用编译选项-H=windowsgui后,仍然输出log到console

从 AllocConsole C++ 获取行输入