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.
[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.
[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 |
---|---|
|
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. |
|
Die Medien oder Laufwerke sind ausgelastet. |
|
Die Anforderung wurde von der CloseNtmsSession-Funktion abgebrochen. |
|
Auf die Datenbank kann nicht zugegriffen werden oder beschädigt werden. |
|
Die Datenbank ist voll. |
|
Die angegebenen Medien und Laufwerke befinden sich nicht in derselben Bibliothek. |
|
Mindestens eines der angegebenen Laufwerke ist ungültig. |
|
Die Bibliothek, die die Laufwerke oder Medien enthält, ist ungültig. |
|
Mindestens eins der angegebenen Medien ist ungültig, oder es gibt doppelte Medien-IDs in der Liste der Medien. |
|
Während der Bereitstellung ist ein unerwarteter Medien- oder Gerätezustand aufgetreten. |
|
Die Medien sind offline und können nicht eingebunden werden. |
|
Während der Verarbeitung ist ein Speicherbelegungsfehler aufgetreten. |
|
Der Benutzer hat die Anforderung über die Benutzeroberfläche abgebrochen. |
|
Mindestens eine Ressource, die für die Bereitstellung erforderlich ist, ist deaktiviert. |
|
Das Medium wurde bereitgestellt und ist einsatzbereit. |
|
Das Timeoutereignis ist beim Versuch, eine oder mehrere erforderliche Ressourcen zu erhalten, abgelaufen. Die Bereitstellungsanforderung wurde abgebrochen. |
|
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 |