Hashfile erstellen: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(9 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 6: | Zeile 6: | ||
==Beschreibung== | ==Beschreibung== | ||
Errechnet zu | Errechnet zu jeder Datei eines DOs einen Hash und speichert diesen ab. Es gibt zwei Varianten: | ||
* Zu jedem File im Objektordner wird ein eigenes Hashfile erstellt. | |||
* Pro Objektordner wird '''ein''' Hashfile erstellt mit den Hashes aller File im Ordnerordner. | |||
Der Serverjob lautet '''OJOHZDOHashErstellen'''. | Der Serverjob lautet '''OJOHZDOHashErstellen'''. | ||
==Pane im Produktionsauftrag (FHK_Maske)== | |||
[[File:Systemtyp 46.JPG]] | |||
===OFilesystem.$getHash(pDateipfad,pTyp)=== | ===OFilesystem.$getHash(pDateipfad,pTyp)=== | ||
Zeile 21: | Zeile 27: | ||
* WinOption | * WinOption | ||
* MacOption | * MacOption | ||
Die aktuelle Liste beinhaltet folgende Hashtypen: | |||
* 0 = '''-crc32''' | |||
* 1 = '''-md2''' | |||
* 2 = '''-md4''' | |||
* 3 = '''-md5''' | |||
* 4 = '''-sha1''' | |||
* 5 = '''-sha256''' | |||
* 6 = '''-sha384''' | |||
* 7 = '''-sha512''' | |||
===OJOHZDOHashErstellen.$calcHash(pPfad,pTyp)=== | ===OJOHZDOHashErstellen.$calcHash(pPfad,pTyp)=== | ||
Zeile 30: | Zeile 46: | ||
Es werden vier verschiedene Fälle beachtet: | Es werden vier verschiedene Fälle beachtet: | ||
* '''Erster''' Fall wäre, wenn HZ_FILENAME leer ist. Dann wird einfach ein TXT-File erstellt mit dem Dateinamen des Bildes. Beispiel: 'Mirko.jpg' -> 'Mirko.txt' | * '''Erster''' Fall wäre, wenn HZ_FILENAME leer ist. Dann wird einfach ein TXT-File erstellt mit dem Dateinamen des Bildes. Beispiel: 'Mirko.jpg' -> 'Mirko.jpg.txt' | ||
* Im '''zweiten''' Fall wird der Inhalt von HZ_FILENAME eins zu eins übernommen. | * Im '''zweiten''' Fall wird der Inhalt von HZ_FILENAME eins zu eins übernommen. | ||
* Der '''dritte''' Fall wäre, dass ''[DOFilename]'' als Platzhalter genutzt wird. Dazu hat es eine gewählte Dateiendung, welche übernommen wird. Beispielsweise haben wir ''[DOFilename].hsh'' in HZ_FILENAME stehen. Dann hätten wir folgenden Fall: 'Mirko.jpg' -> 'Mirko.hsh' | * Der '''dritte''' Fall wäre, dass ''[DOFilename]'' als Platzhalter genutzt wird. Dazu hat es eine gewählte Dateiendung, welche übernommen wird. Beispielsweise haben wir ''[DOFilename].hsh'' in HZ_FILENAME stehen. Dann hätten wir folgenden Fall: 'Mirko.jpg' -> 'Mirko.jpg.hsh' | ||
* '''Vierter''' und letzter Fall wäre ein Mix aus den letzten zwei Fällen. Hier hat man auch wieder einen Platzhalter und wenn man beispielsweise ''Hash_[DOFilename] | * '''Vierter''' und letzter Fall wäre ein Mix aus den letzten zwei Fällen. Hier hat man auch wieder einen Platzhalter und wenn man beispielsweise ''Hash_[DOFilename].md5'' in HZ_FILENAME stehen hat, dann wird wieder der Platzhalter ersetzt mit dem Bildernamen. Bei ''Hash_[DOFilename].md5'' führt es zu diesem Fall: 'Gugus.tif' -> 'Hash_Gugus.tif.md5' | ||
==Essentielle Felder== | ==Essentielle Felder== | ||
Zeile 40: | Zeile 56: | ||
HZ_HASHTYP ''Typ des Hashes'' | HZ_HASHTYP ''Typ des Hashes'' | ||
== | HZ_FILEVERHALTEN 0=Pro File ein Hashfile, 1=pro Ordner ein Hashfile | ||
Aktuelle Version vom 23. März 2021, 17:48 Uhr
- Mantiseinträge
2316
- Systemtyp
46
Beschreibung
Errechnet zu jeder Datei eines DOs einen Hash und speichert diesen ab. Es gibt zwei Varianten:
- Zu jedem File im Objektordner wird ein eigenes Hashfile erstellt.
- Pro Objektordner wird ein Hashfile erstellt mit den Hashes aller File im Ordnerordner.
Der Serverjob lautet OJOHZDOHashErstellen.
Pane im Produktionsauftrag (FHK_Maske)
OFilesystem.$getHash(pDateipfad,pTyp)
Die Methode $getHash berechnet den Hash, mit dem angegebenen Typ (pTyp), aus der gewählten Datei (pDateipfad) und gibt den Wert als Text zurück.
THerstellzeile.$WL_HZ_HASHTYP
$WL_HZ_HASHTYP erstellt eine Liste mit allen Hashtypen, die wir zurzeit benötigen und gibt diese Werte zurück.
Die Liste besteht aus vier Spalten:
- Code (eindeutige Nummerierung des Typen)
- Wert
- WinOption
- MacOption
Die aktuelle Liste beinhaltet folgende Hashtypen:
- 0 = -crc32
- 1 = -md2
- 2 = -md4
- 3 = -md5
- 4 = -sha1
- 5 = -sha256
- 6 = -sha384
- 7 = -sha512
OJOHZDOHashErstellen.$calcHash(pPfad,pTyp)
Verwendet grundsätzlich nur die Methode OFilesystem.$getHash und gibt den Hashwert im Textformat zurück.
OJOHZDOHashErstellen.$calcHash(pHZFileName,pFileName,pPfad)
Die Namensgebung der Hashfiles findet hier statt. Der Name des Hashfiles wird ebenfalls im Textformat zurückgegeben.
Es werden vier verschiedene Fälle beachtet:
- Erster Fall wäre, wenn HZ_FILENAME leer ist. Dann wird einfach ein TXT-File erstellt mit dem Dateinamen des Bildes. Beispiel: 'Mirko.jpg' -> 'Mirko.jpg.txt'
- Im zweiten Fall wird der Inhalt von HZ_FILENAME eins zu eins übernommen.
- Der dritte Fall wäre, dass [DOFilename] als Platzhalter genutzt wird. Dazu hat es eine gewählte Dateiendung, welche übernommen wird. Beispielsweise haben wir [DOFilename].hsh in HZ_FILENAME stehen. Dann hätten wir folgenden Fall: 'Mirko.jpg' -> 'Mirko.jpg.hsh'
- Vierter und letzter Fall wäre ein Mix aus den letzten zwei Fällen. Hier hat man auch wieder einen Platzhalter und wenn man beispielsweise Hash_[DOFilename].md5 in HZ_FILENAME stehen hat, dann wird wieder der Platzhalter ersetzt mit dem Bildernamen. Bei Hash_[DOFilename].md5 führt es zu diesem Fall: 'Gugus.tif' -> 'Hash_Gugus.tif.md5'
Essentielle Felder
HZ_FILENAME Name des Hashfiles
HZ_HASHTYP Typ des Hashes
HZ_FILEVERHALTEN 0=Pro File ein Hashfile, 1=pro Ordner ein Hashfile