Crypte un fichier ou un r�pertoire
#include <WinAPIFiles.au3>
_WinAPI_EncryptFile ( $sFilePath )
$sFilePath | Le nom du fichier ou du r�pertoire � crypter. Si $sFilePath sp�cifie un fichier en lecture seule, la fonction �choue et le dernier code d'erreur est ERROR_FILE_READ_ONLY (6009). Si $sFilePath sp�cifie un r�pertoire qui contient un fichier en lecture seule, la fonction r�ussit mais le r�pertoire n'est pas crypt�. |
Succ�s: | Retourne True. |
�chec: | Retourne False, appelez _WinAPI_GetLastError() pour obtenir des informations sur l'erreur |
La fonction _WinAPI_EncryptFile() n�cessite un acc�s exclusif au fichier en cours de cryptage, et �chouera si un autre processus utilise le fichier.
Si le fichier est d�j� crypt�, la fonction retourne simplement une valeur diff�rente de z�ro, ce qui indique la r�ussite.
Si le fichier est compress�, la fonction d�compresse le fichier avant de le crypter.
Pour d�crypter un fichier crypt�, utilisez la fonction _WinAPI_DecryptFile().
Consultez EncryptFile dans la librairie MSDN.
#include <APIFilesConstants.au3> #include <MsgBoxConstants.au3> #include <WinAPIFiles.au3> Local $sFile = FileOpenDialog('Select File', @ScriptDir, 'All Files (*.*)', 1 + 2) If @error Then Exit Switch _WinAPI_FileEncryptionStatus($sFile) Case $FILE_ENCRYPTABLE If _WinAPI_EncryptFile($sFile) Then MsgBox(BitOR($MB_ICONINFORMATION, $MB_SYSTEMMODAL), 'Cryptage de fichier', 'Le fichier est crypt� avec succ�s.') Else MsgBox(BitOR($MB_ICONERROR, $MB_SYSTEMMODAL), 'Cryptage de fichier', 'Impossible de crypter le fichier.') EndIf Case $FILE_IS_ENCRYPTED If MsgBox(BitOR($MB_YESNO, $MB_ICONQUESTION, $MB_SYSTEMMODAL), 'Cryptage de fichier', 'Le fichier est d�j� crypt�.' & @CRLF & @CRLF & 'Je le d�crypte?') = 6 Then If _WinAPI_DecryptFile($sFile) Then MsgBox(BitOR($MB_ICONINFORMATION, $MB_SYSTEMMODAL), 'Cryptage dr fichier', 'Le fichier est d�crypt� avec succ�s.') Else MsgBox(BitOR($MB_ICONERROR, $MB_SYSTEMMODAL), 'Cryptage de fichier', 'Impossible de d�crypter le fichier.') EndIf EndIf Case Else MsgBox(BitOR($MB_ICONERROR, $MB_SYSTEMMODAL), 'Cryptage de fichier', 'Impossible d''effectuer l''op�ration.') EndSwitch