Fungsi EjectNtmsMedia (ntmsapi.h)

[Manajer Penyimpanan yang Dapat Dilepas tidak lagi tersedia pada Windows 7 dan Windows Server 2008 R2.]

Fungsi EjectNtmsMedia mengeluarkan media yang ditentukan dari port pustaka saat ini. Jika pustaka sibuk, RSM mengantre EjectNtmsMedia dan mengembalikan keberhasilan.

Sintaks

DWORD EjectNtmsMedia(
  [in]      HANDLE      hSession,
  [in]      LPNTMS_GUID lpMediaId,
  [in, out] LPNTMS_GUID lpEjectOperation,
  [in]      DWORD       dwAction
);

Parameter

[in] hSession

Tangani ke sesi yang dikembalikan oleh fungsi OpenNtmsSession .

[in] lpMediaId

Pengidentifikasi unik dari sepotong media fisik (PMID).

[in, out] lpEjectOperation

GUID permintaan pustaka proses keluar. Jika dwAction NTMS_EJECT_START, parameter ini menerima GUID untuk operasi. Jika dwAction NTMS_EJECT_STOP, parameter ini harus diatur ke GUID agar operasi dihentikan. Parameter ini tidak digunakan dengan NTMS_EJECT_QUEUE.

[in] dwAction

Tindakan yang harus dilakukan. Parameter ini bisa menjadi salah satu nilai berikut.

Nilai Makna
NTMS_EJECT_START
Mulai operasi keluarkan dengan port. Media yang ditentukan dikeluarkan sampai peristiwa waktu habis terjadi atau fungsi dipanggil lagi dengan NTMS_EJECT_STOP. Nilai waktu habis ditentukan dalam objek pustaka dan diterapkan ke semua ejeksi di pustaka.
NTMS_EJECT_STOP
Hentikan proses ejeksi yang ditentukan oleh lpEjectOperation sebelum peristiwa waktu habis berakhir.
NTMS_EJECT_QUEUE
Antrekan media yang ditentukan untuk ejeksi. Digunakan untuk mengelompokkan media untuk objek NTMS_IEPORT multi-slot.

Nilai kembali

Fungsi ini mengembalikan salah satu nilai berikut.

Nilai Makna
ERROR_ACCESS_DENIED
NTMS_CONTROL_ACCESS ke pustaka ditolak. Kesalahan keamanan lainnya juga dimungkinkan, tetapi akan menunjukkan kesalahan subsistem keamanan.
ERROR_BUSY
Lebih banyak media diantrekan daripada slot yang tersedia di objek NTMS_IEPORT.
ERROR_DATABASE_FAILURE
Database tidak dapat diakses atau rusak.
ERROR_DATABASE_FULL
Database penuh.
ERROR_DEVICE_NOT_AVAILABLE
Pustaka dinonaktifkan.
ERROR_INVALID_HANDLE
ID sesi hilang atau tidak valid.
ERROR_INVALID_OPERATION
Penghentian dilakukan pada ID operasi yang tidak valid.
ERROR_INVALID_PARAMETER
ID pustaka atau penunjuk ID operasi hilang.
ERROR_LIBRARY_OFFLINE
ID pustaka mengacu pada pustaka offline yang tidak dapat mengeluarkan media.
ERROR_MEDIA_NOT_AVAILABLE
Media dinonaktifkan.
ERROR_NOT_ENOUGH_MEMORY
Terjadi kegagalan alokasi selama pemrosesan.
ERROR_SUCCESS
Keluarnya diantrekan.

Keterangan

Fungsi EjectNtmsMedia kembali ke aplikasi segera setelah permintaan dikeluarkan diantrekan.

Media yang dikeluarkan menggunakan fungsi EjectNtmsMedia dipindahkan ke pustaka offline atau dihapus dari database. Kartrid pembersih, media impor, media yang tidak dikenal, dan media yang tidak kompatibel akan dihapus saat dikeluarkan.

Bendera NTMS_EJECT_QUEUE digunakan untuk memaketkan atau media batch yang ditandai untuk ejeksi ke pustaka multi-slot. Anda dapat mengantre media untuk ejeksi menggunakan tindakan antrean ketika aplikasi telah mengantrekan semua media yang diperlukan. Aplikasi ini menggunakan perintah mulai untuk memulai operasi keluarkan fisik. Jika lebih banyak media diantrekan daripada slot di objek NTMS_IEPORT, EjectNtmsMedia mengembalikan ERROR_BUSY. Untuk memulai operasi keluarkan fisik, aplikasi dapat menggunakan NTMS_EJECT_START dengan ID media terakhir atau NULL.

Jika media saat ini sedang digunakan (dipasang atau dibuka), fungsi ini mengembalikan kesalahan.

Jika pustaka tidak memiliki port, gunakan fungsi AccessNtmsLibraryDoor untuk menyisipkan dan mengeluarkan media.

Fungsi EjectNtmsMedia tidak berfungsi dengan pustaka offline.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header ntmsapi.h
Pustaka Ntmsapi.lib
DLL Ntmsapi.dll

Lihat juga

InjectNtmsMedia

Fungsi Kontrol Pustaka