CreatePseudoConsole 函式
為呼叫進程建立新的 pseudoconsole 物件。
語法
HRESULT WINAPI CreatePseudoConsole(
_In_ COORD size,
_In_ HANDLE hInput,
_In_ HANDLE hOutput,
_In_ DWORD dwFlags,
_Out_ HPCON* phPC
);
參數
size [in]
視窗/緩衝區的維度,以字元計數表示,將在初始建立 pseudoconsole 時使用。 稍後可以使用 ResizePseudoConsole 來調整。
hInput [in]
代表使用者輸入裝置之數據流的開啟句柄。 這目前僅限於 同步 I/O。
hOutput [in]
代表裝置應用程式輸出之數據流的開啟句柄。 這目前僅限於 同步 I/O。
dwFlags [in]
此值可以是下列其中一項:
值 | 意義 |
---|---|
0 | 執行標準 pseudoconsole 建立。 |
PSEUDOCONSOLE_INHERIT_CURSOR (DWORD)1 | 建立的 pseudoconsole 會話會嘗試繼承父控制台的數據指標位置。 |
phPC [out]
將接收新 pseudoconsole 裝置句柄的位置指標。
傳回值
類型: HRESULT
如果此方法成功,則會傳 回S_OK。 否則,它會傳 回 HRESULT 錯誤碼。
備註
此函式主要用於嘗試成為命令行使用者介面 (CUI) 應用程式的終端機視窗的應用程式。 呼叫端會負責呈現輸出數據流上的資訊,以及收集用戶輸入,並將其串行化至輸入數據流。
編碼為UTF-8的輸入和輸出數據流包含與虛擬終端機序列交錯的純文本。
在輸出數據流上 ,呼叫應用程式可以譯碼虛擬終端機序列 ,以配置並呈現顯示視窗中的純文本。
在輸入數據流上,純文本代表使用者輸入的標準鍵盤按鍵。 更複雜的作業會以編碼控制鍵和滑鼠移動來表示,做為 內嵌在此數據流中的虛擬終端機序列 。
當作業完成時,必須使用 ClosePseudoConsole 關閉此函式所建立的句柄。
PSEUDOCONSOLE_INHERIT_CURSOR
如果使用 ,則呼叫端應用程式應該準備在背景線程上以異步方式回應資料指標狀態的要求,方法是轉送或解譯將接收hOutput
的數據指標資訊要求,並在上hInput
回復 。 若無法這麼做,可能會導致呼叫應用程式在提出虛擬console 系統的另一個要求時停止回應。
範例
如需使用此函式建立 pseudoconsole 會話的完整逐步解說,請參閱 建立 Pseudoconsole 會話。
需求
最低支援的用戶端 | Windows 10 2018 年 10 月更新 (1809 版) [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2019 [僅限傳統型應用程式] |
頁首 | ConsoleApi.h (透過 WinCon.h,包括 Windows.h) |
程式庫 | Kernel32.lib |
DLL | Kernel32.dll |