為呼叫進程配置新的控制台。
語法
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) |
| 圖書館 | 內核 32.lib |
| DLL | Kernel32.dll |