Freigeben über


EjectNtmsMedia-Funktion (ntmsapi.h)

[Wechseldatenträger-Manager ist ab Windows 7 und Windows Server 2008 R2 nicht mehr verfügbar.]

Die Funktion EjectNtmsMedia wirft das angegebene Medium aus dem Port der aktuellen Bibliothek aus. Wenn die Bibliothek ausgelastet ist, stellt RSM EjectNtmsMedia in die Warteschlange und gibt den Erfolg zurück.

Syntax

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

Parameter

[in] hSession

Handle für die von der OpenNtmsSession-Funktion zurückgegebene Sitzung.

[in] lpMediaId

Eindeutiger Bezeichner eines Stücks physischer Medien (PMID).

[in, out] lpEjectOperation

GUID der Anforderung der Auswerfprozessbibliothek. Wenn dwAction NTMS_EJECT_START ist, empfängt dieser Parameter die GUID für den Vorgang. Wenn dwAction NTMS_EJECT_STOP ist, muss dieser Parameter auf die GUID festgelegt werden, damit der Vorgang beendet wird. Dieser Parameter wird nicht mit NTMS_EJECT_QUEUE verwendet.

[in] dwAction

Auszuführende Aktion. Dieser Parameter kann einen der folgenden Werte annehmen.

Wert Bedeutung
NTMS_EJECT_START
Starten Sie den Auswurfvorgang mit einem Port. Das angegebene Medium wird ausgeworfen, bis das Timeoutereignis auftritt oder die Funktion mit NTMS_EJECT_STOP erneut aufgerufen wird. Der Timeoutwert wird im Bibliotheksobjekt angegeben und auf alle Auswerfungen in der Bibliothek angewendet.
NTMS_EJECT_STOP
Beenden Sie den von lpEjectOperation angegebenen Auswurfprozess, bevor das Timeoutereignis verstreicht.
NTMS_EJECT_QUEUE
Stellen Sie die angegebenen Medien für den Auswurf in die Warteschlange. Wird zum Gruppieren von Medien für Objekte mit mehreren Slots NTMS_IEPORT verwendet.

Rückgabewert

Diese Funktion gibt einen der folgenden Werte zurück.

Wert Bedeutung
ERROR_ACCESS_DENIED
NTMS_CONTROL_ACCESS der Bibliothek wird verweigert. Es sind auch andere Sicherheitsfehler möglich, die jedoch auf einen Sicherheitssubsystemfehler hinweisen würden.
ERROR_BUSY
Es wurden mehr Medien in die Warteschlange gestellt als Slots, die im NTMS_IEPORT-Objekt verfügbar waren.
ERROR_DATABASE_FAILURE
Auf die Datenbank kann nicht zugegriffen werden oder ist beschädigt.
ERROR_DATABASE_FULL
Die Datenbank ist voll.
ERROR_DEVICE_NOT_AVAILABLE
Die Bibliothek ist deaktiviert.
ERROR_INVALID_HANDLE
Die Sitzungs-ID fehlt oder ist ungültig.
ERROR_INVALID_OPERATION
Für eine ungültige Vorgangs-ID wurde ein Stopp ausgeführt.
ERROR_INVALID_PARAMETER
Eine Bibliotheks-ID oder ein Vorgangs-ID-Zeiger fehlt.
ERROR_LIBRARY_OFFLINE
Die Bibliotheks-ID bezieht sich auf eine Offlinebibliothek, die keine Medien auswerfen kann.
ERROR_MEDIA_NOT_AVAILABLE
Das Medium ist deaktiviert.
ERROR_NOT_ENOUGH_MEMORY
Während der Verarbeitung ist ein Zuordnungsfehler aufgetreten.
ERROR_SUCCESS
Der Auswurf wird in eine Warteschlange eingereiht.

Hinweise

Die Funktion EjectNtmsMedia kehrt zur Anwendung zurück, sobald die Auswerfanforderung in die Warteschlange gestellt wird.

Medien, die mit der Funktion EjectNtmsMedia ausgeworfen werden, werden in die Offlinebibliothek verschoben oder aus der Datenbank gelöscht. Reinigerkartuschen, Importieren von Medien, nicht erkannten Medien und inkompatible Medien werden gelöscht, wenn sie ausgeworfen werden.

Das flag NTMS_EJECT_QUEUE wird verwendet, um Medien zu bündeln oder zu batchen, die für den Auswurf in eine Bibliothek mit mehreren Slots markiert sind. Sie können Medien für den Auswurf mithilfe der Warteschlangenaktion in die Warteschlange warteschlangen, wenn die Anwendung alle erforderlichen Medien in die Warteschlange gestellt hat. Die Anwendung verwendet den Startbefehl, um den physischen Auswurfvorgang zu starten. Wenn im NTMS_IEPORT-Objekt mehr Medien als Slots in die Warteschlange gestellt werden, gibt EjectNtmsMedia ERROR_BUSY zurück. Zum Starten des physischen Auswurfvorgangs kann die Anwendung NTMS_EJECT_START mit der letzten Medien-ID oder NULL verwenden.

Wenn das Medium derzeit verwendet wird (eingebunden oder geöffnet), gibt diese Funktion einen Fehler zurück.

Wenn die Bibliothek keinen Port hat, verwenden Sie die AccessNtmsLibraryDoor-Funktion , um Medien einzufügen und auszuwerfen.

Die Funktion EjectNtmsMedia funktioniert nicht mit der Offlinebibliothek.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile ntmsapi.h
Bibliothek Ntmsapi.lib
DLL Ntmsapi.dll

Weitere Informationen

InjectNtmsMedia

Bibliothekssteuerungsfunktionen