Freigeben über


MountNtmsMedia-Funktion (ntmsapi.h)

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

Die MountNtmsMedia-Funktion bindet ein oder mehrere Medienelemente synchron ein.

Syntax

DWORD MountNtmsMedia(
  [in]      HANDLE                   hSession,
  [in]      LPNTMS_GUID              lpMediaId,
  [in, out] LPNTMS_GUID              lpDriveId,
  [in]      DWORD                    dwCount,
  [in]      DWORD                    dwOptions,
  [in]      int                      dwPriority,
  [in]      DWORD                    dwTimeout,
            LPNTMS_MOUNT_INFORMATION lpMountInformation
);

Parameter

[in] hSession

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

[in] lpMediaId

Array von eindeutigen Bezeichnern logischer Medien oder Seiten.

[in, out] lpDriveId

Array von Laufwerksbezeichnern, das der Liste der Medien im lpMediaId-Parameter entspricht. Dieses Array gibt entweder eine Liste der Laufwerke an, in die Medien eingebunden werden sollen, oder empfängt die Liste der Laufwerke, in die medien bei Abschluss des Vorgangs eingebunden werden. Weitere Informationen finden Sie unten im NTMS_MOUNT_SPECIFIC_DRIVE Wert. Wenn für die MountNtmsMedia-Funktion vor Abschluss der Einbindung ein Zeitausfall aufgetreten ist, gibt RSM die Liste der Laufwerke nicht zurück.

[in] dwCount

Anzahl der Medienbezeichner und Laufwerksbezeichner, die in den Parametern lpMediaId und lpDriveId übergeben werden. Beachten Sie, dass lpMediaId und lpDriveId auf das erste Element von Arrays gleicher Länge zeigen müssen.

[in] dwOptions

Optionen. Dieser Parameter kann einen oder mehrere der folgenden Werte aufweisen.

Wert Bedeutung
NTMS_MOUNT_SPECIFIC_DRIVE
Binden Sie die Medien in die spezifischen Laufwerke ein, die im lpDriveId-Parameter bereitgestellt werden.
NTMS_MOUNT_READ
Binden Sie die Medien für den Lesezugriff ein. Verwenden Sie diesen Wert, um schreibgeschützte Medien einzuhängen.
NTMS_MOUNT_WRITE
Binden Sie die Medien für den Schreibzugriff ein. Verwenden Sie dieses Flag, um zu verhindern, dass RSM abgeschlossene Medien einbezieht. Dieser Wert kann mit NTMS_MOUNT_READ für Lese-/Schreibzugriff kombiniert werden.

RSM kann abgeschlossene Medien nicht einbinden, wenn dieses Flag ausgewählt ist.

NTMS_MOUNT_ERROR_NOT_AVAILABLE
Dieser Wert gibt einen Fehler zurück, wenn das Medium oder ein Laufwerk nicht verfügbar ist.
NTMS_MOUNT_ERROR_OFFLINE
Stellen Sie keine Operatoranforderung zum Einbinden von Offlinemedien aus. Gibt einen Fehler zurück, wenn sich die angegebenen Medien derzeit nicht in einer Bibliothek befinden.

[in] dwPriority

Priorität der Einbindung, die von RSM verwendet wird, um den Zugriff auf Laufwerke zu ermöglichen. Prioritäten reichen von -15 bis 15, wobei 15 die höchste Priorität und 0 die Standardeinstellung ist. Dieser Parameter kann auch eine der folgenden Konstanten annehmen. Eine Anwendung sollte NTMS_PRIORITY_NORMAL bestehen, es sei denn, eine spezielle Einbindungspriorität ist erforderlich.

Wert Bedeutung
NTMS_PRIORITY_NORMAL
Bereitstellungen, die nicht zeitkritisch sind.
NTMS_PRIORITY_LOW
Einbindungen, die als Hintergrundaktivität ausgeführt werden.
NTMS_PRIORITY_HIGH
Bereitstellungen, die zeitkritisch sind.
NTMS_PRIORITY_LOWEST
Einbindung mit der niedrigsten Priorität.
NTMS_PRIORITY_HIGHEST
Bereitstellung mit höchster Priorität.

[in] dwTimeout

Maximal zulässige Zeit zum Einbinden der angegebenen Medien in Millisekunden. Legen Sie diesen Parameter auf INFINITE fest, um zu warten, bis die Einbindung abgeschlossen ist.

lpMountInformation

Dieser Parameter ist reserviert und sollte NULL sein.

Rückgabewert

Diese Funktion gibt einen der folgenden Werte zurück.

Wert Bedeutung
ERROR_ACCESS_DENIED
NTMS_USE_ACCESS zu dem Medienpool oder der Bibliothek, der die Medien enthält, wird verweigert. Andere Sicherheitsfehler sind ebenfalls möglich, weisen jedoch auf einen Fehler des Sicherheitssubsystems hin.
ERROR_BUSY
Die Medien oder Laufwerke sind ausgelastet.
ERROR_CANCELLED
Die Anforderung wurde von der CloseNtmsSession-Funktion abgebrochen.
ERROR_DATABASE_FAILURE
Auf die Datenbank kann nicht zugegriffen werden oder beschädigt werden.
ERROR_DATABASE_FULL
Die Datenbank ist voll.
ERROR_DRIVE_MEDIA_MISMATCH
Die angegebenen Medien und Laufwerke befinden sich nicht in derselben Bibliothek.
ERROR_INVALID_DRIVE
Mindestens eines der angegebenen Laufwerke ist ungültig.
ERROR_INVALID_LIBRARY
Die Bibliothek, die die Laufwerke oder Medien enthält, ist ungültig.
ERROR_INVALID_MEDIA
Mindestens eins der angegebenen Medien ist ungültig, oder es gibt doppelte Medien-IDs in der Liste der Medien.
ERROR_INVALID_STATE
Während der Bereitstellung ist ein unerwarteter Medien- oder Gerätezustand aufgetreten.
ERROR_MEDIA_OFFLINE
Die Medien sind offline und können nicht eingebunden werden.
ERROR_NOT_ENOUGH_MEMORY
Während der Verarbeitung ist ein Speicherbelegungsfehler aufgetreten.
ERROR_REQUEST_REFUSED
Der Benutzer hat die Anforderung über die Benutzeroberfläche abgebrochen.
ERROR_RESOURCE_DISABLED
Mindestens eine Ressource, die für die Bereitstellung erforderlich ist, ist deaktiviert.
ERROR_SUCCESS
Das Medium wurde bereitgestellt und ist einsatzbereit.
ERROR_TIMEOUT
Das Timeoutereignis ist beim Versuch, eine oder mehrere erforderliche Ressourcen zu erhalten, abgelaufen. Die Bereitstellungsanforderung wurde abgebrochen.
ERROR_WRITE_PROTECT
Der Medienstatus ist auf Abgeschlossen festgelegt, und der wert NTMS_MOUNT_WRITE wurde angegeben.

Hinweise

Die MountNtmsMedia-Funktion stellt eine Anforderung in die Warteschlange, um die angegebenen Medien bereitzustellen, und wartet dann auf die Anzahl von Millisekunden, die im dwTimeout-Parameter angegeben ist, bis die Einbindung abgeschlossen ist oder ein Fehler erkannt wird. Wenn RSM den Bereitstellungsvorgang nicht abschließen kann, bevor dwTimeout abläuft, bricht NTMS die Anforderung ab und gibt einen Fehler zurück. Wenn sich die angegebenen Medien in einer Offlinebibliothek befinden, wird die Anwendung möglicherweise für einen längeren Zeitraum blockiert. Sie können die GetNtmsObjectInformation-Funktion verwenden, um den aktuellen Speicherort des angegebenen Mediums zu bestimmen. Sie können auch den wert NTMS_MOUNT_ERROR_OFFLINE verwenden, um einen sofortigen Fehler anstelle einer Operatoranforderung zu generieren, wenn das Medium offline ist.

Wenn das angegebene Medium verwendet wird oder kein Laufwerk verfügbar ist, blockiert der Prozess den Timeoutwert und gibt ERROR_BUSY zurück. Wenn der NTMS_MOUNT_ERROR_NOT_AVAILABLE Wert angegeben wird, gibt die Funktion sofort einen Fehler zurück, wenn eine Ressource (Medien oder Laufwerk) nicht verfügbar ist.

Der Timeoutwert infinite kann verwendet werden, um die Funktion warten zu lassen, ohne dass ein Timeout auftritt. Wenn im dwTimeout-Parameter ein Timeoutwert ungleich 0 angegeben wird, wartet RSM darauf, dass alle in lpMediaId angegebenen Medien bereitgestellt werden. Wenn die angegebene Zeit verstrichen ist, bevor alle Medien bereitgestellt werden, gibt die MountNtmsMedia-Funktion einen Fehler zurück und bricht die Anforderung ab. Die Anwendung kann die zurückgegebenen status untersuchen und die Anforderung bei Bedarf erneut übermitteln.

Wenn mehrere Medien, die bereitgestellt werden sollen, mit einem einzigen Aufruf angegeben werden, müssen sich alle angegebenen Medien in einer einzelnen Bibliothek befinden. Wenn eines der angegebenen Medien offline ist, wird keines der Medien eingebunden, bis alle Medien online sind.

Nach Abschluss der Einbindung ist der Laufwerkszustand (z. B. Fix- oder Variablenmodus) nicht definiert. Die Anwendung muss das Laufwerk einrichten.

Die CloseNtmsSession-Funktion kann verwendet werden, um eine bereitstellung abzubrechen, die aussteht. Das Standardverhalten ist folgendes:

  • Wenn das angegebene Medium offline ist, sendet RSM eine Operatoranforderung zum Einbinden der Medien, und die MountNtmsMedia-Funktion wartet auf den im dwTimeout-Parameter angegebenen Zeitraum.
  • Wenn das angegebene Medium online ist, fordert RSM die Einbindung an.
  • Wenn kein Laufwerk oder Medium verfügbar ist, sendet RSM die Anforderung, und die MountNtmsMedia-Funktion wartet auf den im dwTimeout-Parameter angegebenen Zeitraum.

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

Media Services-Funktionen