Koneksi Utas ke Desktop
Setelah proses tersambung ke stasiun jendela, sistem menetapkan desktop ke utas yang membuat koneksi. Sistem menentukan desktop untuk ditetapkan ke utas sesuai dengan aturan berikut:
- Jika utas telah memanggil fungsi SetThreadDesktop , utas akan tersambung ke desktop yang ditentukan.
- Jika utas tidak memanggil SetThreadDesktop, utas akan tersambung ke desktop yang diwarisi dari proses induk.
- Jika utas tidak memanggil SetThreadDesktop dan tidak mewarisi desktop, sistem mencoba membuka untuk akses MAXIMUM_ALLOWED dan menyambungkan ke desktop sebagai berikut:
- Jika nama desktop ditentukan dalam anggota lpDesktop dari struktur STARTUPINFO yang digunakan saat proses dibuat, utas akan tersambung ke desktop yang ditentukan.
- Jika tidak, utas tersambung ke desktop default stasiun jendela tempat proses tersambung.
Desktop yang ditetapkan selama proses koneksi ini tidak dapat ditutup dengan memanggil fungsi CloseDesktop .
Saat proses tersambung ke desktop, sistem mencari tabel handel proses untuk handel yang diwariskan. Sistem menggunakan handel desktop pertama yang ditemukannya. Jika Anda ingin proses anak tersambung ke desktop tertentu yang diwariskan, Anda harus memastikan bahwa satu-satunya handel yang diinginkan ditandai dapat diwariskan. Jika proses anak mewarisi beberapa handel desktop, hasil koneksi desktop tidak terdefinisi.
Menangani ke desktop yang dibuka sistem saat menyambungkan proses ke desktop tidak dapat diwariskan.
Topik terkait
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk