Método ITransferDestination::CreateItem (shobjidl_core.h)
Cria o arquivo especificado.
Sintaxe
HRESULT CreateItem(
[in] LPCWSTR pszName,
[in] DWORD dwAttributes,
[in] ULONGLONG ullSize,
[in] TRANSFER_SOURCE_FLAGS flags,
[out] REFIID riidItem,
[out] void **ppvItem,
[in] REFIID riidResources,
[out] void **ppvResources
);
Parâmetros
[in] pszName
Tipo: LPCWSTR
Um ponteiro para um buffer encerrado em nulo que contém o nome do arquivo em relação ao diretório atual.
[in] dwAttributes
Tipo: DWORD
Um ou mais dos sinalizadores de FILE_ATTRIBUTE definidos na estrutura BY_HANDLE_FILE_INFORMATION . O valor mais significativo é FILE_ATTRIBUTE_DIRECTORY, o que indica que uma pasta deve ser criada.
[in] ullSize
Tipo: ULONGLONG
O tamanho, em bytes, do arquivo a ser criado. Esse valor poderá ser 0 se o tamanho for desconhecido.
[in] flags
Tipo: TRANSFER_SOURCE_FLAGS
Sinalizadores que controlam a operação de arquivo. Um ou mais sinalizadores de TRANSFER_SOURCE_FLAGS .
[out] riidItem
Tipo: REFIID
Uma referência ao IID da interface a ser recuperada por meio de ppvItem, normalmente IID_IShellItem ou outra interface derivada dela.
[out] ppvItem
Tipo: void**
Quando esse método retorna, contém o ponteiro de interface solicitado em riidItem. Normalmente, isso é IShellItem ou uma interface derivada.
[in] riidResources
Tipo: REFIID
Uma referência ao IID da interface a ser recuperada por meio de ppvResources, normalmente IID_IShellItemResources ou outra interface derivada dela.
[out] ppvResources
Tipo: void**
Quando esse método retorna, contém o ponteiro de interface solicitado em riidResources. Normalmente, isso é IShellItemResources ou uma interface derivada.
Retornar valor
Tipo: HRESULT
Retorna um código de êxito se tiver êxito ou um valor de erro, caso contrário. Os códigos de êxito incluem:
- S_OK: a movimentação foi bem-sucedida e ppvItem e ppvResources apontam para objetos válidos.
- COPYENGINE_S_USER_IGNORED: o item de destino já existe e não foi substituído. Os valores apontados por ppvItem e ppvResources são NULL. Se o chamador estiver implementando uma movimentação como uma operação de cópia e exclusão, o chamador deverá concluir a movimentação excluindo o item de origem.
Comentários
Esse método pode ser usado para criar um objeto de item shell que representa a pasta de destino para uma operação de cópia ou movimentação. A interface ITransferSource fornece métodos para realmente mover objetos de IShellItem para o destino.
Chame ITransferDestination::Advise antes de chamar qualquer outro método ITransferDestination para que o manipulador possa fazer o retorno de chamada em qualquer erro que possa ocorrer. Se não estiver definido, o manipulador deverá considerar uma indicação de que nenhum comentário está disponível e fazer a operação "padrão".
É recomendável que você use a macro IID_PPV_ARGS , definida em Objbase.h, para empacotar os parâmetros riidResources e ppvResources . Essa macro fornece o IID correto com base na interface apontada pelo valor em ppvResources, o que elimina a possibilidade de um erro de codificação.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | shobjidl_core.h (inclua Shobjidl.h) |