File.Decrypt(String) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
yöntemini kullanarak Encrypt(String) geçerli hesap tarafından şifrelenen bir dosyanın şifresini çözer.
public:
static void Decrypt(System::String ^ path);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static void Decrypt (string path);
public static void Decrypt (string path);
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
static member Decrypt : string -> unit
static member Decrypt : string -> unit
Public Shared Sub Decrypt (path As String)
Parametreler
- path
- String
Şifresi çözülecek dosyayı açıklayan yol.
- Öznitelikler
Özel durumlar
2.1'den eski .NET Framework ve .NET Core sürümleri: path
Parametre sıfır uzunluklu bir dizedir, yalnızca boşluk içerir veya bir veya daha fazla geçersiz karakter içerir. yöntemini kullanarak GetInvalidPathChars() geçersiz karakterleri sorgulayabilirsiniz.
path
parametresidirnull
.
Geçersiz bir sürücü belirtildi.
parametresi tarafından path
açıklanan dosya bulunamadı.
Dosyayı açarken bir G/Ç hatası oluştu. Örneğin, şifrelenmiş dosya zaten açık.
-veya-
Bu işlem geçerli platformda desteklenmiyor.
Belirtilen yol, dosya adı veya her ikisi birden sistem tarafından tanımlanan en fazla uzunluğu aşıyor.
Geçerli işletim sistemi Windows NT veya üzeri değil.
Dosya sistemi NTFS değil.
path
parametresi salt okunur bir dosya belirtti.
-veya-
Bu işlem geçerli platformda desteklenmiyor.
-veya-
path
parametresi bir dizin belirtti.
-veya-
Çağıranın gerekli izni yok.
Örnekler
Aşağıdaki kod örneği, bir dosyayı şifrelemek ve Decrypt şifresini çözmek için yöntemini ve yöntemini kullanırEncrypt. Örneğin çalışması için dosyanın mevcut olması gerekir.
using namespace System;
using namespace System::IO;
int main()
{
String^ fileName = "test.xml";
if (!File::Exists(fileName))
{
Console::WriteLine("The file " + fileName
+ " does not exist.");
return 0;
}
try
{
Console::WriteLine("Encrypt " + fileName);
// Encrypt the file.
File::Encrypt(fileName);
Console::WriteLine("Decrypt " + fileName);
// Decrypt the file.
File::Decrypt(fileName);
Console::WriteLine("Done");
}
catch (IOException^ ex)
{
Console::WriteLine("There was an IO problem.");
Console::WriteLine(ex->Message);
}
catch (PlatformNotSupportedException^)
{
Console::WriteLine("Encryption is not supported on " +
"this system.");
}
catch (NotSupportedException^)
{
Console::WriteLine("Encryption is not supported on " +
"this system.");
}
catch (UnauthorizedAccessException^)
{
Console::WriteLine("The operation could not be "
+ "carried out.");
}
}
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
Açıklamalar
yöntemi, Decrypt yöntemi kullanılarak Encrypt şifrelenen bir dosyanın şifresini çözmenize olanak tanır. Decrypt yöntemi yalnızca geçerli kullanıcı hesabı kullanılarak şifrelenen dosyaların şifresini çözebilir.
Önemli
Bu API yalnızca NTFS Şifreleme Dosya Sistemi'ni (EFS) kullanabilen Windows platformlarında desteklenir. Bunu Windows dışı sistemlerde, Windows Home Edition sistemlerinde veya NTFS olmayan sürücülerde kullanma girişimleri duruma bağlı olarak veya PlatformNotSupportedExceptionNotSupportedExceptionile sonuçlanır.
Bu API'nin .NET Core'da kullanılması önerilmez; .NET Core'a taşınan ancak yine de Açıkça Windows'ı hedefleyen uygulamalar için taşınabilirliği etkinleştirmek üzere eklenmiştir.
yöntemi, Decrypt şifresi çözülen dosyaya özel erişim gerektirir ve dosyayı başka bir işlem kullanıyorsa özel durum oluşturur.
Encrypt Hem yöntem hem Decrypt de yöntem, bilgisayarda yüklü şifreleme hizmeti sağlayıcısını (CSP) ve yöntemini çağıran işlemin dosya şifreleme anahtarlarını kullanır.
Geçerli dosya sistemi NTFS olarak biçimlendirilmeli ve geçerli işletim sistemi Windows NT veya üzeri olmalıdır.