fungsi CM_Request_Device_Eject_ExA (cfgmgr32.h)
[Dimulai dengan Windows 8 dan Windows Server 2012, fungsi ini tidak digunakan lagi. Gunakan CM_Request_Device_Eject sebagai gantinya.]
Fungsi CM_Request_Device_Eject_Ex menyiapkan instans perangkat lokal atau jarak jauh untuk penghapusan yang aman, jika perangkat dapat dilepas. Jika perangkat dapat dikeluarkan secara fisik, itu akan menjadi.
Sintaks
CMAPI CONFIGRET CM_Request_Device_Eject_ExA(
[in] DEVINST dnDevInst,
[out, optional] PPNP_VETO_TYPE pVetoType,
[out, optional] LPSTR pszVetoName,
[in] ULONG ulNameLength,
[in] ULONG ulFlags,
[in, optional] HMACHINE hMachine
);
Parameter
[in] dnDevInst
Handel instans perangkat yang disediakan penelepon yang terikat ke handel mesin yang disediakan oleh hMachine.
[out, optional] pVetoType
(Opsional.) Jika bukan NULL, ini menunjuk ke lokasi yang, jika permintaan penghapusan gagal, menerima nilai yang ditik PNP_VETO_TYPE yang menunjukkan alasan kegagalan.
[out, optional] pszVetoName
(Opsional.) Jika bukan NULL, ini adalah penunjuk yang disediakan penelepon ke buffer string yang menerima string teks. Jenis informasi yang disediakan string ini tergantung pada nilai yang diterima oleh pVetoType. Untuk informasi tentang string ini, lihat PNP_VETO_TYPE.
[in] ulNameLength
(Opsional.) Nilai yang disediakan penelepon mewakili panjang buffer string yang disediakan oleh pszVetoName. Ini harus diatur ke MAX_PATH.
[in] ulFlags
Tidak digunakan.
[in, optional] hMachine
Handel mesin yang disediakan penelepon yang ditangani instans perangkat yang disediakan pemanggil terikat.
Menampilkan nilai
Jika operasi berhasil, fungsi akan mengembalikan CR_SUCCESS. Jika tidak, kode kesalahan mengembalikan salah satu kode kesalahan awalan CR_ yang ditentukan dalam Cfgmgr32.h.
Keterangan
Jika pszVetoNameADALAH NULL, manajer PnP menampilkan pesan kepada pengguna yang menunjukkan perangkat telah dihapus atau, jika permintaan gagal, mengidentifikasi alasan kegagalan tersebut. Jika pszVetoName bukan NULL, manajer PnP tidak menampilkan pesan. (Catatan, bagaimanapun, bahwa hanya untuk Microsoft Windows 2000, manajer PnP menampilkan pesan bahkan jika pszVetoName bukan NULL, jika kemampuan CM_DEVCAP_DOCKDEVICE perangkat diatur.)
Untuk komputer jarak jauh, fungsi ini hanya berfungsi untuk instans perangkat "dock". Artinya, fungsi hanya dapat digunakan dari jarak jauh untuk melepas dock komputer. Dalam hal ini, pemanggil harus memiliki SeUndockPrivilege.
Pemanggil CM_Request_Eject_Ex terkadang memerlukan SeUndockPrivilege atau SeLoadDriverPrivilege, sebagai berikut:
- Jika kemampuan CM_DEVCAP_DOCKDEVICE perangkat diatur (perangkat adalah perangkat "dock"), pemanggil harus memiliki SeUndockPrivilege. (SeLoadDriverPrivilege tidak diperlukan.)
- Jika kemampuan CM_DEVCAP_DOCKDEVICE perangkat tidak diatur (perangkat bukan perangkat "dock"), dan jika proses panggilan tidak interaktif atau berjalan di lingkungan multi-pengguna dalam sesi yang tidak terpasang ke konsol fisik (seperti sesi Layanan Terminal jarak jauh) pemanggil fungsi ini harus memiliki SeLoadDriverPrivilege.
Untuk informasi tentang menggunakan handel instans perangkat yang terikat ke komputer lokal atau jarak jauh, lihat CM_Get_Child_Ex.
Fungsionalitas untuk mengakses komputer jarak jauh telah dihapus di Windows 8 dan Windows Server 2012 dan sistem operasi yang lebih baru sehingga Anda tidak dapat mengakses komputer jarak jauh saat berjalan pada versi Windows ini.
Persyaratan
Klien minimum yang didukung | Tersedia di Microsoft Windows 2000 dan versi Windows yang lebih baru. |
Target Platform | Desktop |
Header | cfgmgr32.h (termasuk Cfgmgr32.h) |
Pustaka | Cfgmgr32.lib |
Lihat juga
CM_Get_Child_Ex
CM_Request_Device_EjectCM_Query_And_Remove_SubTree_Ex CM_Query_And_Remove_SubTree