File.Decrypt(String) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Descriptografa um arquivo que foi criptografado pela conta atual usando o Encrypt(String) método.
public:
static void Decrypt(System::String ^ path);
public static void Decrypt(string path);
static member Decrypt : string -> unit
Public Shared Sub Decrypt (path As String)
Parâmetros
- path
- String
Um caminho que descreve um arquivo para descriptografar.
Exceções
.NET Framework e .NET Core versões anteriores a 2.1: o parâmetro path é uma cadeia de caracteres de comprimento zero, contém apenas espaço em branco ou contém um ou mais caracteres inválidos. Você pode consultar caracteres inválidos usando o GetInvalidPathChars() método.
O path parâmetro é null.
Uma unidade inválida foi especificada.
Não foi possível encontrar o path arquivo descrito pelo parâmetro.
Ocorreu um erro de E/S ao abrir o arquivo. Por exemplo, o arquivo criptografado já está aberto.
-ou-
Não há suporte para essa operação na plataforma atual.
O caminho especificado, o nome do arquivo ou ambos excedem o comprimento máximo definido pelo sistema.
O sistema operacional atual não é o Windows NT ou posterior.
O sistema de arquivos não é NTFS.
O path parâmetro especificou um arquivo que é somente leitura.
-ou-
Não há suporte para essa operação na plataforma atual.
-ou-
O path parâmetro especificou um diretório.
-ou-
O chamador não tem a permissão necessária.
Exemplos
O exemplo de código a seguir usa o Encrypt método e o Decrypt método para criptografar e descriptografar um arquivo. O arquivo deve existir para que o exemplo funcione.
using System;
using System.IO;
using System.Security.AccessControl;
namespace FileSystemExample
{
class FileExample
{
public static void Main()
{
try
{
string FileName = "test.xml";
Console.WriteLine("Encrypt " + FileName);
// Encrypt the file.
AddEncryption(FileName);
Console.WriteLine("Decrypt " + FileName);
// Decrypt the file.
RemoveEncryption(FileName);
Console.WriteLine("Done");
}
catch (Exception e)
{
Console.WriteLine(e);
}
Console.ReadLine();
}
// Encrypt a file.
public static void AddEncryption(string FileName)
{
File.Encrypt(FileName);
}
// Decrypt a file.
public static void RemoveEncryption(string FileName)
{
File.Decrypt(FileName);
}
}
}
open System.IO
// Encrypt a file.
let addEncryption fileName = File.Encrypt fileName
// Decrypt a file.
let removeEncryption fileName = File.Decrypt fileName
let fileName = "test.xml"
printfn $"Encrypt {fileName}"
// Encrypt the file.
addEncryption fileName
printfn $"Decrypt {fileName}"
// Decrypt the file.
removeEncryption fileName
printfn "Done"
Imports System.IO
Imports System.Security.AccessControl
Module FileExample
Sub Main()
Try
Dim FileName As String = "test.xml"
Console.WriteLine("Encrypt " + FileName)
' Encrypt the file.
AddEncryption(FileName)
Console.WriteLine("Decrypt " + FileName)
' Decrypt the file.
RemoveEncryption(FileName)
Console.WriteLine("Done")
Catch e As Exception
Console.WriteLine(e)
End Try
Console.ReadLine()
End Sub
' Encrypt a file.
Sub AddEncryption(ByVal FileName As String)
File.Encrypt(FileName)
End Sub
' Decrypt the file.
Sub RemoveEncryption(ByVal FileName As String)
File.Decrypt(FileName)
End Sub
End Module
Comentários
O Decrypt método permite descriptografar um arquivo que foi criptografado usando o Encrypt método. O Decrypt método pode descriptografar apenas os arquivos que foram criptografados usando a conta de usuário atual.
Importante
Essa API só tem suporte em plataformas Windows que podem usar o EFS (Sistema de Arquivos de Criptografia NTFS). Qualquer tentativa de usá-lo em sistemas não Windows, sistemas Windows Home Edition ou unidades não NTFS resulta em um PlatformNotSupportedException ou NotSupportedException, dependendo da situação.
O uso dessa API no .NET Core não é recomendado; ele é incluído para habilitar a portabilidade de aplicativos que se movem para .NET Core, mas ainda direcionam explicitamente Windows.
O Decrypt método requer acesso exclusivo ao arquivo que está sendo descriptografado e gerará uma exceção se outro processo estiver usando o arquivo.
Encrypt O método e o Decrypt método usam o CSP (provedor de serviços criptográfico) instalado no computador e as chaves de criptografia de arquivo do processo que chama o método.
O sistema de arquivos atual deve ser formatado como NTFS e o sistema operacional atual deve ser Windows NT ou posterior.