CreatePseudoConsole

呼び出し側プロセスに新しい疑似コンソールを割り当てる CreatePseudoConsole 関数に関するリファレンス情報を参照のこと。

CreatePseudoConsole size, hInput, hOutput, dwFlags, phPC

size : [var] 疑似コンソールの初期作成時に使用されるウィンドウ/バッファの文字数単位の寸法。後で [ResizePseudoConsole](resizepseudoconsole.md) で調整できる。
hInput : [intptr] デバイスへのユーザー入力を表すデータストリームへの開かれたハンドル。現在は[同期](/windows/desktop/Sync/synchronization-and-overlapped-input-and-output) I/O に制限されている。
hOutput : [intptr] デバイスからのアプリケーション出力を表すデータストリームへの開かれたハンドル。現在は[同期](/windows/desktop/Sync/synchronization-and-overlapped-input-and-output) I/O に制限されている。
dwFlags : [int] 値は以下のいずれか: | 値 | 意味 | |-|-| | **0** | 標準的な疑似コンソール作成を実行する。 | | **PSEUDOCONSOLE_INHERIT_CURSOR** (DWORD)1 | 作成される疑似コンソールセッションが親コンソールのカーソル位置を継承しようとする。 |
phPC : [intptr] 新しい疑似コンソールデバイスへのハンドルを受け取る場所へのポインタ。

(プラグイン / モジュール : kernel32.dll)

解説

呼び出し側プロセスに新しい疑似コンソールを割り当てる CreatePseudoConsole 関数に関するリファレンス情報を参照のこと。

[戻り値]
型: **HRESULT** 成功した場合は **S_OK** を返す。そうでない場合、**HRESULT** エラーコードを返す。

[備考]
この関数は主にコマンドラインユーザーインターフェイス (CUI)
アプリケーションのためのターミナルウィンドウになろうとするアプリケーションで使われる。呼び出し側は出力ストリームの情報の表示、ユーザー入力の収集と入力ストリームへのシリアライズに対する責任を持つ。UTF-8
でエンコードされた入出力ストリームには、[Virtual Terminal
Sequences](console-virtual-terminal-sequences.md)
と交互に平文テキストが含まれる。出力ストリームでは、呼び出し側アプリケーションが [virtual terminal
sequences](console-virtual-terminal-sequences.md)
をデコードして、平文テキストを表示ウィンドウ内にレイアウトして表示できる。入力ストリームでは、平文はユーザーが入力した標準キーボードキーを表す。より複雑な操作は、コントロールキーやマウスの動きを
[virtual terminal sequences](console-virtual-terminal-sequences.md)
としてストリームに埋め込むことで表現される。この関数で作成されたハンドルは、操作完了時に
[ClosePseudoConsole](closepseudoconsole.md)
で閉じなければならない。`PSEUDOCONSOLE_INHERIT_CURSOR`
を使用する場合、呼び出し側アプリケーションはカーソル状態の要求に対し、バックグラウンドスレッドで非同期的に応答する準備をしておく必要がある。これは
`hOutput` で受け取ったカーソル情報要求を転送または解釈し、`hInput`
で応答することによって行う。これを怠ると、疑似コンソールシステムへの別の要求を行っている間に呼び出し側アプリケーションがハングする可能性がある。

情報

プラグイン / モジュールkernel32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の kernel32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_kernel32_gen2.hs