Bagikan melalui


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.

Catatan Menggunakan fungsi ini untuk mengakses komputer jarak jauh tidak didukung dimulai dengan Windows 8 dan Windows Server 2012, karena fungsi ini telah dihapus.
 

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.
(Hak istimewa dijelaskan dalam dokumentasi Microsoft Windows SDK.)

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