Método IFileOperation::SetOperationFlags (shobjidl_core.h)
Define parâmetros para a operação atual.
Sintaxe
HRESULT SetOperationFlags(
[in] DWORD dwOperationFlags
);
Parâmetros
[in] dwOperationFlags
Tipo: DWORD
Sinalizadores que controlam a operação de arquivo. Esse membro pode ser uma combinação dos sinalizadores a seguir. Os sinalizadores FOF são definidos em Shellapi.h e os sinalizadores FOFX são definidos em Shobjidl.h.
FOF_ALLOWUNDO (0x0040)
Preservar informações de desfazer, se possível.
Antes do Windows Vista, as operações só podiam ser desfeitas do mesmo processo que executava a operação original.
No Windows Vista e em sistemas posteriores, o escopo do desfazer é uma sessão do usuário. Qualquer processo em execução na sessão do usuário pode desfazer outra operação. O estado de desfazer é mantido no processo de Explorer.exe e, enquanto esse processo estiver em execução, ele poderá coordenar as funções desfazer.
Se o parâmetro de arquivo de origem não contiver nomes de arquivo e caminho totalmente qualificados, esse sinalizador será ignorado.
FOF_FILESONLY (0x0080)
Execute a operação somente em arquivos (não em pastas) se um nome de arquivo curinga (.) for especificado.
FOF_NOCONFIRMATION (0x0010)
Responda com Sim a Todos para qualquer caixa de diálogo exibida.
FOF_NOCONFIRMMKDIR (0x0200)
Não confirme a criação de uma nova pasta se a operação exigir que uma seja criada.
FOF_NO_CONNECTED_ELEMENTS (0x2000)
Não mova itens conectados como um grupo. Mova apenas os arquivos especificados.
FOF_NOCOPYSECURITYATTRIBS (0x0800)
Não copie os atributos de segurança do item.
FOF_NOERRORUI (0x0400)
Não exiba uma mensagem para o usuário se ocorrer um erro. Se esse sinalizador for definido sem FOFX_EARLYFAILURE, qualquer erro será tratado como se o usuário tivesse escolhido Ignorar ou Continuar em uma caixa de diálogo. Ele interrompe a ação atual, define um sinalizador para indicar que uma ação foi anulada e prossegue com o restante da operação.
FOF_NORECURSION (0x1000)
Operar somente na pasta local. Não opere recursivamente em subdiretórios.
FOF_RENAMEONCOLLISION (0x0008)
Dê ao item que está sendo operado um novo nome em uma operação de movimentação, cópia ou renomeação se já existir um item com o nome de destino.
FOF_SILENT (0x0004)
Não exiba uma caixa de diálogo de progresso.
FOF_WANTNUKEWARNING (0x4000)
Envie um aviso se um arquivo ou pasta estiver sendo destruído durante uma operação de exclusão em vez de reciclado. Esse sinalizador substitui parcialmente FOF_NOCONFIRMATION.
FOFX_ADDUNDORECORD (0x20000000)
Introduzido no Windows 8. A operação de arquivo foi invocada pelo usuário e deve ser colocada na pilha de desfazer. Esse sinalizador é preferencial para FOF_ALLOWUNDO.
FOFX_NOSKIPJUNCTIONS (0x00010000)
Entre nas junções de namespace do Shell. Por padrão, as junções não são inseridas. Para obter mais informações sobre junções, consulte Especificando o local de uma extensão de namespace.
FOFX_PREFERHARDLINK (0x00020000)
Se possível, crie um link rígido em vez de uma nova instância do arquivo no destino.
FOFX_SHOWELEVATIONPROMPT (0x00040000)
Se uma operação exigir direitos elevados e o sinalizador FOF_NOERRORUI estiver definido para desabilitar a interface do usuário do erro, exiba um prompt de interface do usuário do UAC, no entanto.
FOFX_EARLYFAILURE (0x00100000)
Se FOFX_EARLYFAILURE for definido junto com FOF_NOERRORUI, todo o conjunto de operações será interrompido ao encontrar qualquer erro em qualquer operação. Esse sinalizador é válido somente quando FOF_NOERRORUI está definido.
FOFX_PRESERVEFILEEXTENSIONS (0x00200000)
Renomeie colisões de maneira a preservar extensões de nome de arquivo. Esse sinalizador é válido somente quando FOF_RENAMEONCOLLISION também está definido.
FOFX_KEEPNEWERFILE (0x00400000)
Mantenha o arquivo ou pasta mais recente, com base na propriedade Date Modified, se ocorrer uma colisão. Isso é feito automaticamente sem nenhuma interface do usuário de prompt apresentada ao usuário.
FOFX_NOCOPYHOOKS (0x00800000)
Não use ganchos de cópia.
FOFX_NOMINIMIZEBOX (0x01000000)
Não permita que a caixa de diálogo de progresso seja minimizada.
FOFX_MOVEACLSACROSSVOLUMES (0x02000000)
Copie os atributos de segurança do item de origem para o item de destino ao executar uma operação de movimentação entre volumes. Sem esse sinalizador, o item de destino recebe os atributos de segurança de sua nova pasta.
FOFX_DONTDISPLAYSOURCEPATH (0x04000000)
Não exiba o caminho do item de origem na caixa de diálogo de progresso.
FOFX_DONTDISPLAYDESTPATH (0x08000000)
Não exiba o caminho do item de destino na caixa de diálogo de progresso.
FOFX_RECYCLEONDELETE (0x00080000)
Introduzido no Windows 8. Quando um arquivo é excluído, envie-o para a Lixeira em vez de excluí-lo permanentemente.
FOFX_REQUIREELEVATION (0x10000000)
Introduzido no Windows Vista SP1. O usuário espera um requisito de elevação de direitos, portanto, não exiba uma caixa de diálogo solicitando uma confirmação da elevação.
FOFX_COPYASDOWNLOAD (0x40000000)
Introduzido no Windows 7. Exiba um Download em vez de Copiar mensagem na caixa de diálogo em andamento.
FOFX_DONTDISPLAYLOCATIONS (0x80000000)
Introduzido no Windows 7. Não exiba a linha de localização na caixa de diálogo de progresso.
Retornar valor
Tipo: HRESULT
Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.
Comentários
Defina esses sinalizadores antes de chamar IFileOperation::P erformOperations para definir os parâmetros para todas as operações que estão sendo executadas, como copiar, excluir ou renomear.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows Vista, Windows 7 [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 R2 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | shobjidl_core.h (inclua Shobjidl.h) |