Freigeben über


InjectNtmsMedia-Funktion (ntmsapi.h)

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

Die InjectNtmsMedia-Funktion ermöglicht das Einfügen von Medien in den Port der angegebenen Bibliothek. Wenn die Bibliothek ausgelastet ist, stellt RSM InjectNtmsMedia in die Warteschlange und gibt den Erfolg zurück.

Syntax

DWORD InjectNtmsMedia(
  [in]  HANDLE      hSession,
  [in]  LPNTMS_GUID lpLibraryId,
  [out] LPNTMS_GUID lpInjectOperation,
  [in]  DWORD       dwAction
);

Parameter

[in] hSession

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

[in] lpLibraryId

Eindeutiger Bezeichner eines Bibliotheksobjekts.

[out] lpInjectOperation

GUID des Einfügebibliotheksvorgangs. Wenn dwAction NTMS_INJECT_START ist, empfängt dieser Parameter die GUID für den Vorgang. Wenn dwAction NTMS_INJECT_STOP ist, muss dieser Parameter auf die GUID festgelegt werden, damit der Vorgang beendet wird.

[in] dwAction

Dieser Parameter kann einen der folgenden Werte annehmen.

Wert Bedeutung
NTMS_INJECT_START
Starten Sie den Einfügevorgang mit einem Port. Medien werden wiederholt eingefügt, bis das Timeoutereignis auftritt oder die Funktion mit NTMS_INJECT_STOP erneut aufgerufen wird.
NTMS_INJECT_STOP
Beenden Sie den Einfügevorgang, bevor das Timeoutereignis abgelaufen ist.
NTMS_INJECT_RETRACT
Weisen Sie die Bibliothek an, den Ein-/Auswurfport zurückzuziehen und nach Medien zu suchen, die vom Operator dort platziert wurden.
NTMS_INJECT_START_MANY
Leiten Sie den Einfüge-/Auswurfport so aus, dass er kontinuierlich geöffnet wird, und überprüfen Sie, ob die Vom Operator dort platzierten Medien vorhanden sind. Wenn ein Medium gefunden wird, wird der Einfüge-/Auswerfport erneut geöffnet, um weitere Medien zu empfangen.

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_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
Die Aktion Beenden wurde für eine ungültige Vorgangs-ID ausgeführt.
ERROR_INVALID_PARAMETER
Der Bibliotheks-ID- oder Vorgangs-ID-Zeiger fehlt.
ERROR_LIBRARY_OFFLINE
Die Bibliotheks-ID bezieht sich auf eine Offlinebibliothek, die keine Medien auswerfen kann.
ERROR_NOT_ENOUGH_MEMORY
Während der Verarbeitung ist ein Zuordnungsfehler aufgetreten.
ERROR_SUCCESS
Der Einfügevorgang wird in eine Warteschlange eingereiht.

Hinweise

Diese Funktion kehrt zur Anwendung zurück, sobald die Einfügeanforderung in die Warteschlange gestellt wird.

Wenn die durch die InjectNtmsMedia-Funktion angegebene Bibliothek keinen Port aufweist, verwenden Sie die AccessNtmsLibraryDoor-Funktion , um Medien einzufügen und auszuwerfen.

Diese Funktion kann nicht mit der Offlinebibliothek verwendet werden.

Insert beginnt mit dem Einfügen von Medien in eine Bibliothek. Da Bibliotheken je nach Funktionalität des NTMS_IEPORT-Objekts variieren, kann jedes Gerät etwas anders funktionieren. In den folgenden Schritten wird beschrieben, wie RSM eine Einschleusung im Allgemeinen behandelt:

So fügen Sie Medien in eine Bibliothek ein

  1. Zulassen/Entsperren/Erweitern des NTMS_IEPORT.
  2. Rufen Sie einen vollständigen NTMS_IEPORT, einen zurückgezogenen NTMS_IEPORT, einen Befehl Einspritzen beenden oder einen Timeoutwert ab. Wenn keine dieser Fehler aufgetreten ist, warten Sie weiter. (Ein-/Auswurfports mit mehreren Patronen werden nicht auf vollständige status überprüft.)
  3. Wenn eines der vorherigen Ereignisse auftritt, wird das NTMS_IEPORT gesperrt, jedes Medium in der NTMS_IEPORT wird in einen Slot verschoben, und für jedes Medium wird ein Befehl zum Identifizieren des Mediums in die Warteschlange gestellt.
Wenn nicht genügend Slots für die Medien im NTMS_IEPORT-Objekt vorhanden sind, verbleibt das Medium im NTMS_IEPORT-Objekt, und eine Operatoranforderung wird veröffentlicht, um Medien aus der Bibliothek zu entfernen.

Wenn keine freien Slots vorhanden sind, erhält die InjectNtmsMedia-Funktion einen Fehler.

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

EjectNtmsMedia

Bibliothekssteuerungsfunktionen