AllocConsole 函式

為呼叫程序配置新的主控台。

語法

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

另請參閱

主控台函式

主控台

AttachConsole

CreateProcess

FreeConsole

GetStdHandle