呼び出し元プロセスに新しいコンソールを割り当てます。
構文
BOOL WINAPI AllocConsole(void);
パラメーター
この関数にはパラメーターはありません。
戻り値
関数が成功すると、戻り値は 0 以外になります。
関数が失敗した場合は、0 を返します。 拡張エラー情報を取得するには、 GetLastError を呼び出します。
注釈
プロセスを関連付けることができるコンソールは 1 つだけであるため、呼び出し元のプロセスにコンソールが既に存在する場合、 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 |