CM_Request_Device_EjectA (cfgmgr32.h)
Fungsi CM_Request_Device_Eject menyiapkan instans perangkat lokal untuk penghapusan yang aman, jika perangkat dapat dilepas. Jika perangkat dapat dikeluarkan secara fisik, itu akan menjadi.
Sintaks
CMAPI CONFIGRET CM_Request_Device_EjectA(
[in] DEVINST dnDevInst,
[out, optional] PPNP_VETO_TYPE pVetoType,
[out, optional] LPSTR pszVetoName,
[in] ULONG ulNameLength,
[in] ULONG ulFlags
);
Parameter
[in] dnDevInst
Handel instans perangkat yang disediakan penelepon yang terikat ke komputer lokal.
[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 tersebut.
[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.
Mengembalikan nilai
Jika operasi berhasil, fungsi akan mengembalikan CR_SUCCESS. Jika tidak, ia 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. (Perhatikan, bagaimanapun, bahwa hanya untuk Microsoft Windows 2000, manajer PnP menampilkan pesan bahkan jika pszVetoName tidak NULL, jika kemampuan CM_DEVCAP_DOCKDEVICE perangkat diatur.)
Pemanggil CM_Request_Device_Eject 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, lihat CM_Get_Child.
Persyaratan
Persyaratan | Nilai |
---|---|
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
CM_Query_And_Remove_SubTree
CM_Query_And_Remove_SubTree_Ex
CM_Request_Device_Eject_Ex