Condividi tramite


Funzione CreateNtmsMediaPoolA (ntmsapi.h)

[ di Gestione archiviazione rimovibile non è più disponibile a partire da Windows 7 e Windows Server 2008 R2.]

La funzione CreateNtmsMediaPool crea un nuovo pool di supporti dell'applicazione.

Sintassi

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

Parametri

[in] hSession

Handle per la sessione restituita dalla funzione OpenNtmsSession .

[in] lpPoolName

Nome del nuovo pool di supporti. I nomi del pool di supporti devono essere univoci nell'ambito di un singolo database RSM.

[in] lpMediaType

Identificatore per il tipo di supporto in questo pool di supporti. Usare la funzione EnumerateNtmsObject per ottenere un elenco dei tipi di supporto disponibili e dei relativi attributi. L'applicazione può passare un puntatore NULL per creare un pool di supporti contenente solo altri pool di supporti.

[in] dwAction

Azione da eseguire. Questo parametro deve essere uno dei valori seguenti.

Valore Significato
NTMS_OPEN_EXISTING
Apre un pool di supporti esistente in base al nome. Restituisce ERROR_OBJECT_NOT_FOUND se il pool non esiste.
NTMS_OPEN_ALWAYS
Apre un pool di supporti esistente o crea il pool, se non esiste.
NTMS_CREATE_NEW
Crea un nuovo pool di supporti. Restituisce ERROR_ALREADY_EXISTS se il pool esiste.

[in] lpSecurityAttributes

Descrittore di sicurezza facoltativo usato per limitare l'accesso al pool.

[out] lpPoolId

Puntatore a una variabile che riceve l'identificatore univoco del pool di supporti dopo la creazione o l'apertura del pool di supporti.

Valore restituito

Questa funzione restituisce uno dei valori seguenti.

Valore Significato
ERROR_ACCESS_DENIED
NTMS_CONTROL_ACCESS al pool radice o al pool di supporti padre viene negato durante il tentativo di creare un nuovo pool di supporti. Sono anche possibili altri errori di sicurezza, ma indicano un errore del sottosistema di sicurezza.

Windows XP: NTMS_MODIFY_ACCESS al pool di supporti padre viene negato durante il tentativo di creare un nuovo pool di supporti. Sono anche possibili altri errori di sicurezza, ma indicano un errore del sottosistema di sicurezza.

ERROR_ALREADY_EXISTS
Impossibile creare un nuovo pool di supporti perché ne esiste già uno con questo nome.
ERROR_DATABASE_FAILURE
Il database non è accessibile o danneggiato.
ERROR_DATABASE_FULL
Il database è pieno. Sono anche possibili altri errori di sicurezza, ma indicano un errore del sottosistema di sicurezza.
ERROR_INVALID_HANDLE
L'handle di sessione è mancante o non è valido.
ERROR_INVALID_MEDIA
Il tipo di supporto selezionato non è valido.
ERROR_INVALID_NAME
La sintassi del nome del pool non è valida. Il nome è troppo lungo.
ERROR_INVALID_PARAMETER
Manca il nome del pool multimediale o il puntatore dell'ID del pool di supporti.
ERROR_OBJECT_NOT_FOUND
Impossibile aprire il pool di supporti esistente.
ERROR_SUCCESS
La funzione ha avuto esito positivo.

Osservazioni

I pool di supporti free, Unrecognized e Import vengono creati da RSM e non possono essere creati con la funzione CreateNtmsMediaPool.

I pool di supporti RSM sono organizzati come gerarchia separata dal carattere "". I pool di supporti di applicazione, gratuito, non riconosciuto e importazione esistono nella radice della gerarchia. RSM crea e gestisce i pool Free, Unrecognized e Import. RSM crea un pool di supporti gratuito per ogni tipo di supporto disponibile.

I pool di supporti specifici dell'applicazione vengono creati dalle applicazioni. Le applicazioni creano pool multimediali per il proprio uso nel pool di applicazioni radice. Questi pool di supporti hanno nomi simili al file system. Solo il punto finale del nome contiene elementi multimediali e criteri. Un'applicazione può definire pool come \MyApp\Pool1 e \MyApp\Pool2. In questo modo la gerarchia viene trasmessa all'interfaccia utente ed evita i nomi duplicati. Ogni livello di pool deve essere creato singolarmente; prima MyApp e quindi Pool1 e Pool2, molto simili a cartelle e file.

Windows Server 2003: Per creare un pool di supporti, è necessario avere NTMS_CONTROL_ACCESS al pool radice e al pool padre. Se non viene specificato un descrittore di sicurezza, il pool eredita gli ACL del pool padre (se il pool padre non è il pool radice). Inoltre, l'autore e gli account di sistema locali hanno accesso completo al pool. Se il pool padre è il pool radice, gli ACL non vengono ereditati; gli unici ACL nel DACL sono l'accesso completo per l'autore e gli account di sistema locali.

Nota

L'intestazione ntmsapi.h definisce CreateNtmsMediaPool come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows XP [solo app desktop]
server minimo supportato Windows Server 2003 [solo app desktop]
piattaforma di destinazione Finestre
intestazione ntmsapi.h
libreria Ntmsapi.lib
dll Ntmsapi.dll

Vedere anche

AllocateNtmsMedia

DeleteNtmsMediaPool

GetNtmsObjectSecurity

Funzioni di Servizi multimediali

SetNtmsObjectSecurity