Compartilhar via


Método IPortableDeviceContent::D elete (portabledeviceapi.h)

O método Delete exclui um ou mais objetos do dispositivo.

Sintaxe

HRESULT Delete(
  [in]      const DWORD                          dwOptions,
  [in]      IPortableDevicePropVariantCollection *pObjectIDs,
  [in, out] IPortableDevicePropVariantCollection **ppResults
);

Parâmetros

[in] dwOptions

Um dos enumeradores DELETE_OBJECT_OPTIONS .

[in] pObjectIDs

Ponteiro para uma interface IPortableDevicePropVariantCollection que contém uma ou mais cadeias de caracteres terminadas em nulo (tipo VT_LPWSTR) especificando as IDs de objeto dos objetos a serem excluídos.

[in, out] ppResults

Opcional. No retorno, esse parâmetro contém uma coleção de valores VT_ERROR indicando o êxito ou a falha da operação. O primeiro elemento retornado em ppResults corresponde ao primeiro objeto na coleção pObjectIDs , o segundo elemento retornado em ppResults corresponde ao segundo objeto na coleção pObjectIDs e assim por diante. Esse parâmetro poderá ser NULL se o aplicativo não estiver preocupado com os resultados.

Retornar valor

O método retorna um HRESULT. Os possíveis valores incluem, mas sem limitação, aqueles na tabela a seguir. Se algum valor de erro for retornado, nenhum objeto será excluído no dispositivo.

Código de retorno Descrição
S_OK
O método foi bem-sucedido.
S_FALSE
Pelo menos um objeto não pôde ser excluído. O parâmetro ppResults , se especificado, contém o código de erro por objeto.
E_XXXXXXXX
O driver não excluiu nenhum objeto.
E_INVALIDARG
Um valor inválido foi especificado para dwOptions.
E_ACCESSDENIED
O aplicativo não tem permissão para excluir o objeto.
HRESULT_FROM_WIN32(ERROR_DIR_NOT_EMPTY)
A pasta ou diretório especificado não pôde ser excluído porque não estava vazio.
HRESULT_FROM_WIN32(ERROR_INVALID_OPERATION)
O aplicativo especificou PORTABLE_DEVICE_DELETE_NO_RECURSION e o objeto tem filhos.
HRESULT_FROM_WIN32(ERROR_NOT_FOUND)
O objeto não pôde ser excluído porque ele não existe no dispositivo.

Comentários

Para ver se há suporte para exclusão recursiva, chame IPortableDeviceCapabilities::GetCommandOptions. Se a interface IPortableDeviceValues recuperada contiver um valor de propriedade chamado WPD_OPTION_OBJECT_MANAGEMENT_RECURSIVE_DELETE_SUPPORTED com um valor boolVal de True, o dispositivo oferecerá suporte à exclusão recursiva.

A tabela a seguir lista os possíveis códigos de retorno que podem aparecer na coleção na qual ppResults aponta.

Exemplos

Para obter um exemplo de como usar esse método, consulte Excluindo conteúdo do dispositivo.

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho portabledeviceapi.h
Biblioteca PortableDeviceGUIDs.lib

Confira também

Excluindo conteúdo do dispositivo

IPortableDeviceContent Interface