FileInfo.Decrypt 方法  
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
使用 Encrypt() 方法解密由当前帐户加密的文件。
public:
 void Decrypt();
	[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public void Decrypt ();
	public void Decrypt ();
	[System.Runtime.InteropServices.ComVisible(false)]
public void Decrypt ();
	[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
member this.Decrypt : unit -> unit
	member this.Decrypt : unit -> unit
	[<System.Runtime.InteropServices.ComVisible(false)>]
member this.Decrypt : unit -> unit
	Public Sub Decrypt ()
	- 属性
 
例外
指定了无效的驱动器。
找不到当前 FileInfo 对象描述的文件。
打开文件时发生 I/O 错误。
文件系统不是 NTFS。
当前操作系统不是 Microsoft Windows NT 或更高版本。
示例
下面的代码示例使用 Encrypt 方法和 Decrypt 方法对文件进行加密和解密。
using namespace System;
using namespace System::IO;
using namespace System::Security::AccessControl;
    static void Addencryption(String^ fileName)
{
    // Create a new FileInfo object.
    FileInfo^ fInfo = gcnew FileInfo(fileName);
    if (!fInfo->Exists)
    {
        fInfo->Create();
    }
    // Add encryption.
    fInfo->Encrypt();
    
}
    static void Removeencryption(String^ fileName)
{
//    Create a new FileInfo object.
    FileInfo^ fInfo = gcnew FileInfo(fileName);
    if (!fInfo->Exists)
    {
        fInfo->Create();
    }
    // Remove encryption.
    fInfo->Decrypt();
}
int main()
{
    try
    {
        String^ fileName = "c:\\MyTest.txt";
        Console::WriteLine("Encrypt " + fileName);
        // Encrypt the file.
     
        Addencryption(fileName);
        Console::WriteLine("Decrypt " + fileName);
        // Decrypt the file.
        Removeencryption(fileName);
        Console::WriteLine("Done");
     }
     catch (IOException^ ex)
     {
        Console::WriteLine(ex->Message);
     }
}
//This code produces output similar to the following; 
//results may vary based on the computer/file structure/etc.:
//
//Encrypt c:\MyTest.txt
//Decrypt c:\MyTest.txt
//Done
using System;
using System.IO;
using System.Security.AccessControl;
namespace FileSystemExample
{
    class FileExample
    {
        public static void Main()
        {
            try
            {
                string FileName = @"c:\MyTest.txt";
                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);
            }
        }
        public static void AddEncryption(string FileName)
        {
            // Create a new FileInfo object.
            FileInfo fInfo = new FileInfo(FileName);
            if (!fInfo.Exists)
            {
                //Create the file.
                fInfo.Create();
            }
            // Add encryption.
            fInfo.Encrypt();
        }
        public static void RemoveEncryption(string FileName)
        {
            // Create a new FileInfo object.
            FileInfo fInfo = new FileInfo(FileName);
            if (!fInfo.Exists)
            {
                //Create the file.
                fInfo.Create();
            }
            // Remove encryption.
            fInfo.Decrypt();
        }
    }
}
//This code produces output similar to the following;
//results may vary based on the computer/file structure/etc.:
//
//Encrypt c:\MyTest.txt
//Decrypt c:\MyTest.txt
//Done
Imports System.IO
Imports System.Security.AccessControl
Module FileExample
    Sub Main()
        Try
            Dim FileName As String = "c:\MyTest.txt"
            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
    End Sub
    Sub AddEncryption(ByVal FileName As String)
        ' Create a new FileInfo object.
        Dim fInfo As New FileInfo(FileName)
        If fInfo.Exists = False Then
            fInfo.Create()
        End If
        ' Add encryption.
        fInfo.Encrypt()
    End Sub
    Sub RemoveEncryption(ByVal FileName As String)
        ' Create a new FileInfo object.
        Dim fInfo As New FileInfo(FileName)
        If fInfo.Exists = False Then
            fInfo.Create()
        End If
        ' Remove encryption.
        fInfo.Decrypt()
    End Sub
End Module
'This code produces output similar to the following; 
'results may vary based on the computer/file structure/etc.:
'
'Encrypt c:\MyTest.txt
'Decrypt c:\MyTest.txt
'Done
	注解
方法 Decrypt 允许解密使用 Encrypt 方法加密的文件。 方法 Decrypt 只能解密使用当前用户帐户加密的文件。
Encrypt方法和 Decrypt 方法都使用计算机上安装的加密服务提供程序 (CSP) ,以及调用 方法的进程的文件加密密钥。
当前文件系统的格式必须为 NTFS,当前操作系统必须是 Microsoft Windows NT 或更高版本。