Função EncryptFileA (winbase.h)
Criptografa um arquivo ou diretório. Todos os fluxos de dados em um arquivo são criptografados. Todos os novos arquivos criados em um diretório criptografado são criptografados.
Sintaxe
BOOL EncryptFileA(
[in] LPCSTR lpFileName
);
Parâmetros
[in] lpFileName
O nome do arquivo ou diretório a ser criptografado.
O chamador deve ter os direitos de acesso FILE_READ_DATA, FILE_WRITE_DATA, FILE_READ_ATTRIBUTES, FILE_WRITE_ATTRIBUTESe SYNCHRONIZE. Para obter mais informações, consulte de Segurança de Arquivos e Direitos de Acesso.
Valor de retorno
Se a função for bem-sucedida, o valor retornado não será zero.
Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.
Observações
A função EncryptFile requer acesso exclusivo ao arquivo que está sendo criptografado e falhará se outro processo estiver usando o arquivo.
Se o arquivo já estiver criptografado, EncryptFile simplesmente retornará um valor diferente de zero, o que indica êxito. Se o arquivo for compactado, EncryptFile descompactará o arquivo antes de criptografá-lo.
Se lpFileName especificar um arquivo somente leitura, a função falhará e GetLastError retornará ERROR_FILE_READ_ONLY. Se lpFileName especificar um diretório que contém um arquivo somente leitura, as funções serão bem-sucedidas, mas o diretório não será criptografado.
Para descriptografar um arquivo criptografado, use a função DecryptFile.
No Windows 8, no Windows Server 2012 e posterior, essa função tem suporte nas tecnologias a seguir.
Tecnologia | Suportado |
---|---|
Protocolo SMB (Bloco de Mensagens do Servidor) 3.0 | Sim |
TFO (Failover Transparente) do SMB 3.0 | Não |
SMB 3.0 com Compartilhamentos de Arquivos de Expansão (SO) | Não |
Sistema de Arquivos de Volume Compartilhado de Cluster (CsvFS) | Não |
ReFS (Sistema de Arquivos Resiliente) | Não |
O SMB 3.0 não dá suporte ao EFS em compartilhamentos com capacidade de disponibilidade contínua.
Nota
O cabeçalho winbase.h define EncryptFile como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows XP Professional [somente aplicativos da área de trabalho] |
servidor com suporte mínimo | Windows Server 2003 [somente aplicativos da área de trabalho] |
da Plataforma de Destino |
Windows |
cabeçalho | winbase.h (inclua Windows.h) |
biblioteca | Advapi32.lib |
de DLL |
Advapi32.dll |
conjunto de API | ext-ms-win-advapi32-encryptedfile-l1-1-0 (introduzido no Windows 8) |
Consulte também