FileInfo.Encrypt Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Szyfruje plik, aby tylko konto używane do szyfrowania pliku może go odszyfrować.
public:
void Encrypt();
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public void Encrypt ();
public void Encrypt ();
[System.Runtime.InteropServices.ComVisible(false)]
public void Encrypt ();
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
member this.Encrypt : unit -> unit
member this.Encrypt : unit -> unit
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.Encrypt : unit -> unit
Public Sub Encrypt ()
- Atrybuty
Wyjątki
Określono nieprawidłowy dysk.
Nie można odnaleźć pliku opisanego przez bieżący FileInfo obiekt.
Podczas otwierania pliku wystąpił błąd We/Wy.
System plików nie jest ntfs.
Bieżący system operacyjny nie jest systemem Microsoft Windows NT lub nowszym.
Plik opisany przez bieżący FileInfo obiekt jest tylko do odczytu.
-lub-
Ta operacja nie jest obsługiwana na bieżącej platformie.
-lub-
Obiekt wywołujący nie posiada wymaganych uprawnień.
Przykłady
Poniższy przykład kodu używa Encrypt metody i Decrypt metody do szyfrowania pliku, a następnie odszyfrowywania go.
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
Uwagi
Metoda Encrypt umożliwia szyfrowanie pliku tak, aby tylko konto użyte do wywołania tej metody może go odszyfrować. Decrypt Użyj metody , aby odszyfrować plik zaszyfrowany przez metodę Encrypt .
Encrypt Zarówno metoda, jak i Decrypt metoda używają dostawcy usług kryptograficznych (CSP) zainstalowanego na komputerze i kluczy szyfrowania plików procesu wywołującego metodę.
Bieżący system plików musi być sformatowany jako NTFS, a bieżący system operacyjny musi być microsoft Windows NT lub nowszy.