Freigeben über


CreateNtmsMediaPool-Funktion (ntmsapi.h)

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

Die CreateNtmsMediaPool-Funktion erstellt einen neuen Anwendungsmedienpool.

Syntax

DWORD CreateNtmsMediaPool(
  [in]  HANDLE                hSession,
  [in]  LPCTSTR               lpPoolName,
  [in]  LPNTMS_GUID           lpMediaType,
  [in]  DWORD                 dwAction,
  [in]  LPSECURITY_ATTRIBUTES lpSecurityAttributes,
  [out] LPNTMS_GUID           lpPoolId
);

Parameter

[in] hSession

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

[in] lpPoolName

Name des neuen Medienpools. Medienpoolnamen müssen innerhalb des Bereichs einer einzelnen RSM-Datenbank eindeutig sein.

[in] lpMediaType

Bezeichner für den Medientyp in diesem Medienpool. Verwenden Sie die Funktion EnumerateNtmsObject , um eine Liste der verfügbaren Medientypen und deren Attribute abzurufen. Die Anwendung kann einen NULL-Zeiger übergeben, um einen Medienpool zu erstellen, der nur andere Medienpools enthält.

[in] dwAction

Auszuführende Aktion. Dieser Parameter muss einen der folgenden Werte aufweisen.

Wert Bedeutung
NTMS_OPEN_EXISTING
Öffnet einen vorhandenen Medienpool nach Name. Gibt ERROR_OBJECT_NOT_FOUND zurück, wenn der Pool nicht vorhanden ist.
NTMS_OPEN_ALWAYS
Öffnet einen vorhandenen Medienpool oder erstellt den Pool, falls er nicht vorhanden ist.
NTMS_CREATE_NEW
Erstellt einen neuen Medienpool. Gibt ERROR_ALREADY_EXISTS zurück, wenn der Pool vorhanden ist.

[in] lpSecurityAttributes

Optionaler Sicherheitsdeskriptor, der zum Einschränken des Zugriffs auf den Pool verwendet wird.

[out] lpPoolId

Zeiger auf eine Variable, die den eindeutigen Bezeichner des Medienpools empfängt, nachdem der Medienpool erfolgreich erstellt oder geöffnet wurde.

Rückgabewert

Diese Funktion gibt einen der folgenden Werte zurück.

Wert Bedeutung
ERROR_ACCESS_DENIED
NTMS_CONTROL_ACCESS des Stammpools oder des übergeordneten Medienpools wird beim Erstellen eines neuen Medienpools verweigert. Es sind auch andere Sicherheitsfehler möglich, die jedoch auf einen Sicherheitssubsystemfehler hinweisen würden.

Windows XP: NTMS_MODIFY_ACCESS dem übergeordneten Medienpool wird verweigert, wenn Sie versuchen, einen neuen Medienpool zu erstellen. Es sind auch andere Sicherheitsfehler möglich, die jedoch auf einen Sicherheitssubsystemfehler hinweisen würden.

ERROR_ALREADY_EXISTS
Es kann kein neuer Medienpool erstellt werden, da bereits ein Medienpool mit diesem Namen vorhanden ist.
ERROR_DATABASE_FAILURE
Auf die Datenbank kann nicht zugegriffen werden oder ist beschädigt.
ERROR_DATABASE_FULL
Die Datenbank ist voll. Es sind auch andere Sicherheitsfehler möglich, die jedoch auf einen Sicherheitssubsystemfehler hinweisen würden.
ERROR_INVALID_HANDLE
Das Sitzungshandle fehlt oder ist ungültig.
ERROR_INVALID_MEDIA
Der ausgewählte Medientyp ist ungültig.
ERROR_INVALID_NAME
Die Syntax des Poolnamens ist ungültig. (Der Name ist zu lang.)
ERROR_INVALID_PARAMETER
Der Medienpoolname oder der Medienpool-ID-Zeiger fehlt.
ERROR_OBJECT_NOT_FOUND
Ein vorhandener Medienpool kann nicht geöffnet werden.
ERROR_SUCCESS
Die Funktion war erfolgreich.

Hinweise

Free-, Unrecognized- und Import-Medienpools werden von RSM erstellt und können nicht mit der CreateNtmsMediaPool-Funktion erstellt werden.

RSM-Medienpools sind als Hierarchie organisiert, die durch das Zeichen "" getrennt ist. Anwendungs-, Free-, Unrecognized- und Import-Medienpools befinden sich am Stamm der Hierarchie. RSM erstellt und verwaltet die Pools Free, Unrecognized und Import. RSM erstellt einen Free-Medienpool für jeden verfügbaren Medientyp.

Anwendungsspezifische Medienpools werden von Anwendungen erstellt. Anwendungen erstellen Medienpools für ihre eigene Verwendung unter dem Stammanwendungspool. Diese Medienpools verfügen über dateisystemähnliche Namen. Nur der Endpunkt des Namens enthält Medien und Richtlinien. Eine Anwendung kann Pools wie \MyApp\Pool1 und \MyApp\Pool2 definieren. Dadurch wird die Hierarchie an die Benutzeroberfläche übertragen und doppelte Namen vermieden. Jede Poolebene muss einzeln erstellt werden. zuerst MyApp und dann Pool1 und Pool2, ähnlich wie Ordner und Dateien.

Windows Server 2003: Zum Erstellen eines Medienpools müssen Sie über NTMS_CONTROL_ACCESS zum Stammpool und zum übergeordneten Pool verfügen. Wenn kein Sicherheitsdeskriptor bereitgestellt wird, erbt der Pool die ACEs des übergeordneten Pools (wenn der übergeordnete Pool nicht der Stammpool ist). Darüber hinaus haben die Ersteller- und die lokalen Systemkonten vollen Zugriff auf den Pool. Wenn der übergeordnete Pool der Stammpool ist, werden seine ACEs nicht geerbt. die einzigen ACEs in der DACL sind Vollzugriff für die Ersteller- und lokalen Systemkonten.

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

AllocateNtmsMedia

DeleteNtmsMediaPool

GetNtmsObjectSecurity

Media Services-Funktionen

SetNtmsObjectSecurity