Jump to content

Encrypts all the files of an folder


orkius
 Share

Recommended Posts

Hi,

I wanted to know if you have a code that performs this:

1) read (_FileListToArray) files in a folder;

2) encryptare files and save them, in the same folder, with the same names plus a number or a letter or .cript

Example:

find all files (.doc) in the folder myDocument (autoit.doc, my.doc, your.doc, etc.).

encrypts files with different name (autoit.crypt, my.cript, your.crypt).

Thanks for the answers

Link to comment
Share on other sites

Hi orkius,

$a_files = _FileListToArray(@ScriptDir)

For $i = 1 To $a_files[0]
    $rc  = _Crypt_EncryptFile($a_files[$i],$a_files[$i] & ".crypt", "APASSWORD", $CALG_AES_256)
    If $rc Then
        ConsoleWrite("File " & $a_files[$i] & " has been enencrypted to " & $a_files[$i] & ".crypt" & @CRLF)
    Else
        ConsoleWrite("Error: " & @error & @CRLF)
    EndIf
Next

Or:

Read the HelpFile. :)

Regards,

Hannes

Regards,Hannes[spoiler]If you can't convince them, confuse them![/spoiler]
Link to comment
Share on other sites

Another alternative for Folder Encryption is 7-Zip, here is something to get you started >>

Func _7Zip_Decrypt($sZipFile, $sDestinationFolder = @ScriptDir, $sPassword = "")
    If FileExists($sZipFile) = 0 Then
        Return SetError(1, 0, 0)
    EndIf
    If StringRight($sDestinationFolder, 1) <> "\" Then
        $sDestinationFolder &= "\"
    EndIf
    If FileExists($sDestinationFolder) = 0 Then
        DirCreate($sDestinationFolder)
    EndIf
    If $sPassword <> "" Then
        $sPassword = "-p" & '"' & $sPassword & '" '
    EndIf
    If FileExists(@ScriptDir & "\" & "7za.exe") = 0 Then
        FileInstall("7za.exe", @ScriptDir & "\" & "7za.exe", 0)
    EndIf
    Return RunWait('7za.exe' & ' x "' & $sZipFile & '" ' & $sPassword & "-y -o" & '"' & $sDestinationFolder & '"', "", @SW_HIDE)
EndFunc   ;==>_7Zip_Decrypt

Plus, I thought I saw a similar question like this today by you? :)

Edited by guinness

UDF List:

 
_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_ArrayFilter/_ArrayReduce_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 22/04/2018

Link to comment
Share on other sites

Hi orkius,

$a_files = _FileListToArray(@ScriptDir)

For $i = 1 To $a_files[0]
    $rc  = _Crypt_EncryptFile($a_files[$i],$a_files[$i] & ".crypt", "APASSWORD", $CALG_AES_256)
    If $rc Then
        ConsoleWrite("File " & $a_files[$i] & " has been enencrypted to " & $a_files[$i] & ".crypt" & @CRLF)
    Else
        ConsoleWrite("Error: " & @error & @CRLF)
    EndIf
Next

Thanks Hannes123,

I tried your script and it works for what concerns the routine of the files in the folder and their new name.

But the encrypted files are not written in the same folder and the encryption is not correct

The new files .crip are all 16 bits.

Thanks also to guinness, but I wanted to encrypt them one by one

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...