Advanced AES Crypter > Files &Strings &Termination Handling

Applications, Games, Tools, User libs and useful stuff coded in PureBasic
walbus
Addict
Addict
Posts: 929
Joined: Sat Mar 02, 2013 9:17 am

Re: Advanced AES Coder for Files &Strings &Termination Handl

Post by walbus »

Simple, but full automatic working folder crypter addon for the QAES coders above

Hints:
This little coder addon encrypt all founded not encrypted files in a folder
and decrypt all founded encrypted files in a folder, full automatic

The addon is also included in the QAES crypted pinboard

Code: Select all

; === Module QAES_simple_folder_coder ===
DeclareModule QAES_simple_folder_coder
  UseModule QAES_smart_file_coder
  Declare QAES_simple_folder_coder(mode, window_ID, progressbar_ID, directory$, key$, include_hidden=#True, file_extender$="")
EndDeclareModule

Module QAES_simple_folder_coder
  
  EnableExplicit
  
  Procedure QAES_simple_folder_coder(mode, window_ID, progressbar_ID, directory$, key$, include_hidden=#True, file_extender$="")
    ; Set mode=1 for broken file hash messages
    Protected directory, entry_atrributes, entry_type, mode_1
    Protected pathslash$, entry_name$, result$
    
    CompilerIf #PB_Compiler_OS = #PB_OS_Windows : directory$+"\" : CompilerElse : directory$+"/" : CompilerEndIf
    directory=ExamineDirectory(#PB_Any, directory$, "*.*")
    If directory
      While NextDirectoryEntry(directory)
        entry_name$=DirectoryEntryName(directory)
        entry_atrributes=DirectoryEntryAttributes(directory)
        entry_type=DirectoryEntryType(directory)
        If entry_name$="." Or entry_name$=".." : Continue : EndIf
        If Not include_hidden
          CompilerIf #PB_Compiler_OS = #PB_OS_Windows
            If entry_atrributes & #PB_FileSystem_Hidden : Continue : EndIf
          CompilerElse
            If Left(entry_name$, 1) = "." : Continue : EndIf
          CompilerEndIf
        EndIf
        Select entry_type 
          Case #PB_DirectoryEntry_Directory
            QAES_simple_folder_coder(1, window_ID, progressbar_ID, directory$+entry_name$, key$, include_hidden, file_extender$)
          Case #PB_DirectoryEntry_File
            result$=QAES_smart_file_coder(4, window_ID, progressbar_ID, directory$+entry_name$, key$, file_extender$)
            If Left(result$, 5)="ALLok" : mode_1=2 : Else : mode_1=1 : EndIf
            result$=QAES_smart_file_coder(mode_1, window_ID, progressbar_ID, directory$+entry_name$, key$, file_extender$)
            If mode_1=2 And Left(result$, 7)="WARNING"
              result$=Left(entry_name$, Len(entry_name$)-Len(file_extender$))
              If mode
                MessageRequester("WARNING", "Broken file hash found"+#CRLF$+#CRLF$+directory$+result$) 
                RenameFile(directory$+result$, directory$+result$+" [File hash broken]")
              EndIf
            EndIf
        EndSelect
      Wend
      FinishDirectory(directory)
      ProcedureReturn 1
    EndIf
  EndProcedure
EndModule
UseModule QAES_simple_folder_coder

Post Reply