Função CreateNtmsMediaPool (ntmsapi.h)

[O Gerenciador de Armazenamento Removível não está mais disponível a partir do Windows 7 e do Windows Server 2008 R2.]

A função CreateNtmsMediaPool cria um novo pool de mídia de aplicativo.

Sintaxe

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

Parâmetros

[in] hSession

Manipule para a sessão retornada pela função OpenNtmsSession .

[in] lpPoolName

Nome do novo pool de mídia. Os nomes do pool de mídia devem ser exclusivos dentro do escopo de um único banco de dados RSM.

[in] lpMediaType

Identificador para o tipo de mídia neste pool de mídia. Use a função EnumerateNtmsObject para obter uma lista de tipos de mídia disponíveis e seus atributos. O aplicativo pode passar um ponteiro NULL para criar um pool de mídia que contenha apenas outros pools de mídia.

[in] dwAction

Ação a ser executada. Esse parâmetro deve usar um dos valores a seguir.

Valor Significado
NTMS_OPEN_EXISTING
Abre um pool de mídia existente por nome. Retornará ERROR_OBJECT_NOT_FOUND se o pool não existir.
NTMS_OPEN_ALWAYS
Abre um pool de mídia existente ou cria o pool se ele não existir.
NTMS_CREATE_NEW
Cria um novo pool de mídia. Retornará ERROR_ALREADY_EXISTS se o pool existir.

[in] lpSecurityAttributes

Descritor de segurança opcional usado para restringir o acesso ao pool.

[out] lpPoolId

Ponteiro para uma variável que recebe o identificador exclusivo do pool de mídia depois que o pool de mídia é criado ou aberto com êxito.

Retornar valor

Essa função retorna um dos valores a seguir.

Valor Significado
ERROR_ACCESS_DENIED
NTMS_CONTROL_ACCESS para o pool raiz ou o pool de mídia pai é negado ao tentar criar um pool de mídia. Outros erros de segurança também são possíveis, mas indicam um erro de subsistema de segurança.

Windows XP: NTMS_MODIFY_ACCESS para o pool de mídia pai é negado ao tentar criar um pool de mídia. Outros erros de segurança também são possíveis, mas indicam um erro de subsistema de segurança.

ERROR_ALREADY_EXISTS
Não é possível criar um pool de mídia porque já existe um com esse nome.
ERROR_DATABASE_FAILURE
O banco de dados está inacessível ou danificado.
ERROR_DATABASE_FULL
O banco de dados está cheio. Outros erros de segurança também são possíveis, mas indicam um erro de subsistema de segurança.
ERROR_INVALID_HANDLE
O identificador de sessão está ausente ou não é válido.
ERROR_INVALID_MEDIA
O tipo de mídia selecionado não é válido.
ERROR_INVALID_NAME
A sintaxe do nome do pool não é válida. (O nome é muito longo.)
ERROR_INVALID_PARAMETER
O nome do pool de mídia ou o ponteiro da ID do pool de mídia está ausente.
ERROR_OBJECT_NOT_FOUND
Não é possível abrir o pool de mídia existente.
ERROR_SUCCESS
A função foi bem-sucedida.

Comentários

Pools de mídia gratuitos, não reconhecidos e de importação são criados pelo RSM e não podem ser criados com a função CreateNtmsMediaPool .

Os pools de mídia RSM são organizados como uma hierarquia separada pelo caractere "". Os pools de mídia Application, Free, Unrecognized e Import existem na raiz da hierarquia. O RSM cria e gerencia os pools Gratuito, Não Reconhecido e Importação. O RSM cria um pool de mídia gratuito para cada tipo de mídia disponível.

Pools de mídia específicos do aplicativo são criados por aplicativos. Os aplicativos criam pools de mídia para uso próprio no pool de aplicativos raiz. Esses pools de mídia têm nomes semelhantes ao sistema de arquivos. Somente o ponto de extremidade do nome contém mídia e política. Um aplicativo pode definir pools como \MyApp\Pool1 e \MyApp\Pool2. Isso transmite a hierarquia para a interface do usuário e evita nomes duplicados. Cada nível de pool deve ser criado individualmente; primeiro MyApp e, em seguida, Pool1 e Pool2, assim como pastas e arquivos.

Windows Server 2003: Para criar um pool de mídia, você deve ter NTMS_CONTROL_ACCESS ao pool raiz e ao pool pai. Se um descritor de segurança não for fornecido, o pool herdará os ACEs de seu pool pai (se o pool pai não for o pool raiz). Além disso, as contas do criador e do sistema local têm acesso total ao pool. Se o pool pai for o pool raiz, seus ACEs não serão herdados; os únicos ACEs na DACL têm acesso completo para as contas do sistema local e do criador.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho ntmsapi.h
Biblioteca Ntmsapi.lib
DLL Ntmsapi.dll

Confira também

AllocateNtmsMedia

DeleteNtmsMediaPool

GetNtmsObjectSecurity

Funções dos Serviços de Mídia

SetNtmsObjectSecurity