为调用进程分配一个新的控制台。
语法
BOOL WINAPI AllocConsole(void);
参数
此函数没有参数。
返回值
如果该函数成功,则返回值为非零值。
如果函数失败,则返回值为零。 若要获取扩展的错误信息,请调用 GetLastError。
注解
一个进程只能与一个控制台相关联,因此,如果调用进程已有控制台, 则 AllocConsole 函数会失败。 进程可以使用 FreeConsole 函数将其与当前控制台分离,然后它可以调用 AllocConsole 以创建新的控制台或 AttachConsole 以附加到另一个控制台。
如果调用进程创建子进程,则子进程将继承新控制台。
AllocConsole 为新控制台初始化标准输入、标准输出和标准错误句柄。 标准输入句柄是控制台输入缓冲区的句柄,而标准输出和标准错误句柄则是控制台屏幕缓冲区的句柄。 若要检索这些句柄,请使用 GetStdHandle 函数。
此函数主要用于图形用户界面(GUI)应用程序创建控制台窗口。 在没有控制台的情况下初始化 GUI 应用程序。 控制台应用程序通常通过控制台初始化,除非它们是在创建为分离进程时(通过带有 DETACHED_PROCESS 标志的 CreateProcess 函数创建的)。
要求
支持的最低客户端 | Windows 2000 Professional [仅限桌面应用] |
支持的最低服务器 | Windows 2000 Server [仅限桌面应用] |
标题 | ConsoleApi.h(通过 WinCon.h,包含 Windows.h) |
图书馆 | Kernel32.lib |
DLL | Kernel32.dll |