Funktionsreferenz

_Crypt_HashFile

Erstellt den Hash einer Datei mit dem festgelegten Algorithmus.

#Include <Crypt.au3>
_Crypt_HashFile($sFile, $iALG_ID)

 

Parameter

$sFile Pfad zur Datei
$iALG_ID Hash-ID

 

Rückgabewert

Erfolg Gibt Wert des Hash wieder
Setzt @error auf 0
1 - Öffnen der Datei fehlgeschlagen
2 - Fehler im fertigem Hashwert
3 - Fehler beim erhalten des Hashwert

 

Bemerkungen

Keine.

 

Verwandte Funktionen

_Crypt_HashData

 

Beispiel


#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <Crypt.au3>

; Beispiel für das Hashen eines Datei

; Erstellt eine GUI
$hWnd=GUICreate("Hasher",370,60)
$hFileControl=GUICtrlCreateInput("",5,5,200,20)
$hBrowseButton=GUICtrlCreateButton("...",210,5,35,20)
$hHashCombo=GUICtrlCreateCombo("MD5",250,5,50,20)
GUICtrlSetData(-1,"MD2|MD4|SHA1")
$hCalcButton=GUICtrlCreateButton("Berechnen",305,5,60,20)
$hHashLabel=GUICtrlCreateLabel("Hash",5,35,365,20,$SS_CENTER)

GUISetState(@SW_SHOW)

_Crypt_Startup()

Do
    $msg=GUIGetMsg()

    Switch $msg
        Case $hBrowseButton
            $sFile=FileOpenDialog("Datei öffnen","","Alle Dateien (*.*;)")
            GUICtrlSetData($hFileControl,$sFile)

        Case $hCalcButton
            $iALG_ID=0
            ; Welcher Algorithmus wurde gewählt?
            Switch GUICtrlread($hHashCombo)
                Case "MD2"
                    $iALG_ID=$CALG_MD2
                Case "MD4"
                    $iALG_ID=$CALG_MD4
                Case "MD5"
                    $iALG_ID=$CALG_MD5
                Case "SHA1"
                    $iALG_ID=$CALG_SHA1
                Case Else
                    MsgBox(16,"Fehler","Ungültiger Algorithmus!")
                    ContinueLoop
            EndSwitch
            $sFile=GUICtrlRead($hFileControl)
            If Not FileExists($sFile) Then
                MsgBox(16,"Fehler","Datei existiert nicht")
                ContinueLoop
            EndIf
            $bDigest=_Crypt_HashFile($sFile,$iALG_ID)
            GUICtrlSetData($hHashLabel,$bDigest)

        Case $GUI_EVENT_CLOSE
            ExitLoop

    EndSwitch
Until False

_Crypt_Shutdown()