File.Decrypt(String) Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Ontsleutelt een bestand dat is versleuteld door het huidige account met behulp van de Encrypt(String) methode.
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)
Parameters
- path
- String
Een pad dat een bestand beschrijft om te ontsleutelen.
Uitzonderingen
.NET Framework en .NET Core-versies ouder dan 2.1: de parameter path is een tekenreeks met lengte nul, bevat alleen witruimte of bevat een of meer ongeldige tekens. U kunt een query uitvoeren op ongeldige tekens met behulp van de GetInvalidPathChars() methode.
De path parameter is null.
Er is een ongeldig station opgegeven.
Het bestand dat door de path parameter wordt beschreven, is niet gevonden.
Er is een I/O-fout opgetreden tijdens het openen van het bestand. Het versleutelde bestand is bijvoorbeeld al geopend.
– of –
Deze bewerking wordt niet ondersteund op het huidige platform.
Het opgegeven pad, de bestandsnaam of beide overschrijden de door het systeem gedefinieerde maximumlengte.
Het huidige besturingssysteem is niet Windows NT of hoger.
Het bestandssysteem is niet NTFS.
De path parameter heeft een bestand opgegeven dat alleen-lezen is.
– of –
Deze bewerking wordt niet ondersteund op het huidige platform.
– of –
De path parameter heeft een map opgegeven.
– of –
De beller heeft niet de vereiste machtiging.
Voorbeelden
In het volgende codevoorbeeld worden de Encrypt methode en de Decrypt methode gebruikt om een bestand te versleutelen en vervolgens te ontsleutelen. Het bestand moet bestaan om het voorbeeld te laten werken.
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
Opmerkingen
Met Decrypt de methode kunt u een bestand ontsleutelen dat is versleuteld met behulp van de Encrypt methode. De Decrypt methode kan alleen bestanden ontsleutelen die zijn versleuteld met behulp van het huidige gebruikersaccount.
Important
Deze API wordt alleen ondersteund op Windows platforms die het EFS (NTFS Encrypting File System) kunnen gebruiken. Elke poging om dit te gebruiken op niet-Windows systemen, Windows Home Edition-systemen of niet-NTFS-stations resulteert in een PlatformNotSupportedException of NotSupportedException, afhankelijk van de situatie.
Het gebruik van deze API in .NET Core wordt niet aanbevolen; het wordt opgenomen om draagbaarheid mogelijk te maken voor toepassingen die naar .NET Core gaan, maar die nog steeds expliciet zijn gericht op Windows.
De Decrypt methode vereist exclusieve toegang tot het bestand dat wordt ontsleuteld en genereert een uitzondering als een ander proces het bestand gebruikt.
Zowel de Encrypt methode als de Decrypt methode gebruiken de cryptografische serviceprovider (CSP) die is geïnstalleerd op de computer en de bestandsversleutelingssleutels van het proces dat de methode aanroept.
Het huidige bestandssysteem moet zijn geformatteerd als NTFS en het huidige besturingssysteem moet worden Windows NT of hoger.