AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

MD5Hash einer Datei ändern?

Ein Thema von Koloss · begonnen am 28. Dez 2019 · letzter Beitrag vom 9. Jan 2020
Antwort Antwort
Seite 1 von 3  1 23      
Benutzerbild von Dalai
Dalai
Online

Registriert seit: 9. Apr 2006
1.684 Beiträge
 
Delphi 5 Professional
 
#1

AW: MD5Hash einer Datei ändern?

  Alt 8. Jan 2020, 14:09
Er nimmt alle Dateien in einem Ordner und ändert den Hash.
Nö. Alles, was der Batchcode macht, ist an alle Objekte (Dateien+Verzeichnisse+Links+Junctions) im angegebenen Ort %1 den zweiten Parameter %2 (inkl. folgendem Leerzeichen) anzuhängen. Da sich dadurch der Inhalt der Dateien ändert, ist hinterher der Hash jeweils ein anderer. Gerade bei Archiven kann das aber dazu führen, dass sie kaputtgemacht werden, sich nicht mehr entpacken lassen; dann kommt es auf den Archivierer an, wie fehlertolerant der ist.

Damit ist aber trotzdem weiter unklar, mit welchen Parametern genau diese Batch gerufen wird. Davon abgesehen kann man Batches auch von einem Delphi-Programm aus aufrufen - Stichwort MSDN-Library durchsuchenShellExecuteEx.

Die Fragestellung bzw. welches Ziel eigentlich erreicht werden soll, ist zumindest mir immer noch unklar.

Grüße
Dalai

Geändert von Dalai ( 8. Jan 2020 um 14:12 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

AW: MD5Hash einer Datei ändern?

  Alt 8. Jan 2020, 14:15
Ganz ehrlich: Was hast du vor? Was soll der Sinn davon sein?
Das ist alles kompletter Schwachsinn. Was ist dein Ziel?
Es gibt keinen Grund den Hash einer Datei ändern zu wollen. (Abgesehen davon, dass es wie gesagt auch gar nicht geht außer man ändert die Datei selbst).
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Koloss

Registriert seit: 21. Jul 2010
74 Beiträge
 
Delphi 2 Desktop
 
#3

AW: MD5Hash einer Datei ändern?

  Alt 8. Jan 2020, 14:54
@Natural General: Über Sinn oder Unsinn, das las bitte mir über. Du brauchst doch hier nicht zu antworten wenn das für dich Schwachsinn ist.

@Dalai: Die Parameter habe ich oben beschrieben, 1=Pfad der Dateien und 2=MD5Hash
Die Batchdatei rufe ich eh schon in Delphi auf, das klappt eh. Wollte halt den Source in Delphi haben.

Geändert von Koloss ( 8. Jan 2020 um 14:59 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.378 Beiträge
 
Delphi 12 Athens
 
#4

AW: MD5Hash einer Datei ändern?

  Alt 8. Jan 2020, 14:54
Delphi-Referenz durchsuchenFindFirst/FindNext und dann in der Schleife jeweils > Delphi-Referenz durchsuchenAppend, Delphi-Referenz durchsuchenWrite und Delphi-Referenz durchsuchenClose.

oder in Neudephianisch:
Delphi-Quellcode:
for Filename in TDirectory.GetFiles(ParamStr(1), '*') do
  //TFile.WriteAllText(Filename, TFile.ReadAllText(Filename) + ParamStr(2));
  TFile.AppendAllText(Filename, ParamStr(2));
Und wie schon erwähnt wurde, ist soein Vorgehen natürlich nur für Textdateien halbwegs sinnvoll
und hat per se absolut nichts mit MD5 zu tun, außer dass sich natürlich der Hash jeder Datei ändert, wenn man deren Inhalt ändert.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 8. Jan 2020 um 14:58 Uhr)
  Mit Zitat antworten Zitat
Koloss

Registriert seit: 21. Jul 2010
74 Beiträge
 
Delphi 2 Desktop
 
#5

AW: MD5Hash einer Datei ändern?

  Alt 8. Jan 2020, 15:04
@himitsu: Danke für deine Antwort also du meinst er haut den hash hinten dazu? Damit ändert sich der hash natürlich von der Datei.

Das GetFiles usw. kenne ich schon, wirklich sehr gute Funktionen gibt es da.
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai
Online

Registriert seit: 9. Apr 2006
1.684 Beiträge
 
Delphi 5 Professional
 
#6

AW: MD5Hash einer Datei ändern?

  Alt 8. Jan 2020, 15:13
[...] also du meinst er haut den hash hinten dazu?
Nein. Es wird irgendetwas an die Datei gehängt. Was dieses Etwas ist, hängt davon ab, mit welchen Parametern die Batch gerufen wird. Das kann ein einzelnes Zeichen sein oder ein ellenlanger String, oder auch gar nichts (so dass nur das Leerzeichen bleibt) - wir wissen es nicht.

Grüße
Dalai
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: MD5Hash einer Datei ändern?

  Alt 8. Jan 2020, 15:19
Les doch mal bitte wikipedia und beschreibe wenigstens ansatzweise was der Sinn und Zweck sein soll, ansonsten geb ich NG zurecht Recht.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Koloss

Registriert seit: 21. Jul 2010
74 Beiträge
 
Delphi 2 Desktop
 
#8

AW: MD5Hash einer Datei ändern?

  Alt 8. Jan 2020, 15:20
Ich habe doch die Parameter beschrieben. 2 Parameter ist der Hash den übergebe ich ja.

Der Sinn ist das sich der Hash von der Datei ändern soll, weil dieser geprüft wird ob er gleich ist.
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai
Online

Registriert seit: 9. Apr 2006
1.684 Beiträge
 
Delphi 5 Professional
 
#9

AW: MD5Hash einer Datei ändern?

  Alt 8. Jan 2020, 15:28
Und die glaubst im Ernst, dass der an die Datei anzuhängende String dem letztlich resultierenden Hash der Datei entsprechen wird? Was ist, wenn die Batch mehrfach hintereinander gerufen wird? Irgendwie habe ich Zweifel daran, dass dir klar ist, was es mit Hashes auf sich hat.

Grüße
Dalai
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.277 Beiträge
 
Delphi 10.4 Sydney
 
#10

AW: MD5Hash einer Datei ändern?

  Alt 8. Jan 2020, 15:28
Hallo,
for %%a in ("%1*") do echo %2 >> %%a

Hiermit wird der Hash (%s) als neue Zeile in der Textdatei (%1) angefügt.
(siehe auch https://stackoverflow.com/questions/...-file/19879594)

Und damit ändert sich natürlich auch der Hash der Datei.
Der alte Hash steht aber als letzte Zeile drin.

Lade ich die Datei (TStringList) und werfe die letzte Zeile (den Hash) wieder raus,
habe ich die Originaldatei und damit den Originalhash wieder.

Was das ganze soll, spielt doch keine Rolle.
Vielleicht geht es um Archivierung?

Zitat:
Der Sinn ist das sich der Hash von der Datei ändern soll,
OK, tut er durch das Anhängen mit >>

Zitat:
weil dieser geprüft wird ob er gleich ist.
Hier bin ich raus
Heiko
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:16 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz