Bagikan melalui


Fungsi CreatePseudoConsole

Membuat objek pseudoconsole baru untuk proses panggilan.

Sintaks

HRESULT WINAPI CreatePseudoConsole(
    _In_ COORD size,
    _In_ HANDLE hInput,
    _In_ HANDLE hOutput,
    _In_ DWORD dwFlags,
    _Out_ HPCON* phPC
);

Parameter

ukuran [in]
Dimensi jendela/buffer dalam jumlah karakter yang akan digunakan pada pembuatan awal pseudoconsole. Ini dapat disesuaikan nanti dengan ResizePseudoConsole.

hInput [in]
Handel terbuka ke aliran data yang mewakili input pengguna ke perangkat. Ini saat ini dibatasi untuk I/O sinkron .

hOutput [in]
Handel terbuka ke aliran data yang mewakili output aplikasi dari perangkat. Ini saat ini dibatasi untuk I/O sinkron .

dwFlags [in]
Nilainya dapat berupa salah satu dari berikut ini:

Value Makna
0 Lakukan pembuatan pseudoconsole standar.
PSEUDOCONSOLE_INHERIT_CURSOR (DWORD)1 Sesi pseudoconsole yang dibuat akan mencoba mewarisi posisi kursor konsol induk.

phPC [out]
Penunjuk ke lokasi yang akan menerima handel ke perangkat pseudoconsole baru.

Nilai hasil

Jenis: HRESULT

Jika metode ini berhasil, metode akan mengembalikan S_OK. Jika tidak, kode kesalahan HRESULT akan dikembalikan.

Keterangan

Fungsi ini terutama digunakan oleh aplikasi yang mencoba menjadi jendela terminal untuk aplikasi antarmuka pengguna baris perintah (CUI). Penelepon menjadi bertanggung jawab atas presentasi informasi tentang aliran output dan untuk mengumpulkan input pengguna dan menserialisasikannya ke dalam aliran input.

Aliran input dan output yang dikodekan sebagai UTF-8 berisi teks biasa yang diselingi dengan Urutan Terminal Virtual.

Pada aliran output, urutan terminal virtual dapat didekodekan oleh aplikasi panggilan ke tata letak dan menyajikan teks biasa di jendela tampilan.

Pada aliran input, teks biasa mewakili input tombol keyboard standar oleh pengguna. Operasi yang lebih rumit diwakili oleh pengodean tombol kontrol dan gerakan mouse sebagai urutan terminal virtual yang disematkan dalam aliran ini.

Handel yang dibuat oleh fungsi ini harus ditutup dengan ClosePseudoConsole ketika operasi selesai.

Jika menggunakan PSEUDOCONSOLE_INHERIT_CURSOR, aplikasi panggilan harus siap untuk menanggapi permintaan untuk status kursor dengan cara asinkron pada utas latar belakang dengan meneruskan atau menafsirkan permintaan informasi kursor yang akan diterima dan hOutput membalas hInput. Kegagalan untuk melakukannya dapat menyebabkan aplikasi panggilan macet saat membuat permintaan lain dari sistem pseudoconsole.

Contoh

Untuk panduan lengkap tentang menggunakan fungsi ini untuk membuat sesi pseudoconsole, silakan lihat Membuat Sesi Pseudoconsole.

Persyaratan

   
Klien minimum yang didukung Pembaruan Windows 10 Oktober 2018 (versi 1809) [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2019 [hanya aplikasi desktop]
Header ConsoleApi.h (melalui WinCon.h, sertakan Windows.h)
Pustaka Kernel32.lib
DLL Kernel32.dll

Baca juga

Pseudoconsoles

Membuat Sesi Pseudoconsole

Mengubah ukuranPseudoConsole

ClosePseudoConsole