AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte gimme md5!-Ein kleines Programm zum Vergleichen von Dateien
Thema durchsuchen
Ansicht
Themen-Optionen

gimme md5!-Ein kleines Programm zum Vergleichen von Dateien

Ein Thema von zahor · begonnen am 20. Feb 2008 · letzter Beitrag vom 20. Feb 2008
Antwort Antwort
Seite 3 von 3     123   
zahor
Registriert seit: 27. Jun 2006
Weil es mir gelegentlich passiert, dass ich eine Datei zwei Mal oder noch öfter herunterlade, und dann nicht weiß, ob sie genau gleich sind (Dateigröße muss ja nicht unbedingt gleich sein), habe ich mir ein Programm geschrieben, das bis zu drei Dateien anhand ihrer md5-Checksumme vergleicht. Vielleicht braucht's ja wer
Natürlich kann man es auch verwenden, um einfach nur die md5-Checksums auszulesen
Außerdem kann das Programm die Verzeichnisse auslesen, die im Windows Explorer geöffnet sind, und schon voreintragen - dann fehlt nur noch der Dateiname.
Die Dateinamen muss man im Moment allerdings noch von Hand oder per [Strg]+[V] einfügen, Drag&Drop kommt, sobald ich es hingekriegt habe. Wäre dabei für Unterstützung dankbar, da ich noch keinerlei Plan habe, wie ich das machen kann/soll

Um den Quelltext kompilieren zu können, muss man unter Umständen noch auf 'Komponente'-->'ActiveX importieren' gehen, dann 'Microsoft Internet Controls' oder 'Microsoft Internet Controls 1.1' (je nach Windows-Version) auswählen und dann Installieren drücken - bekommt man die Fehlermeldung, TWebBrowser sei schon installiert und man kann es trotzdem nicht kompilieren, dann muss man halt auf 'Unit anlegen' klicken. So ist jedenfalls bei mir (Delphi 7 Enterprise / Windows Vista) gewesen.
Die andere nicht unbedingt vorhandene Unit (md5) ist dabei. Die muss man nur noch im Delphi-Hauptverzeichnis im Unterverzeichnis 'lib' platzieren, also z.B. in 'C:\Programme\borland\Delphi 7\lib\'. Dann müsste es funktionieren.

Ich bin für Feedback jeglicher Art dankbar!
Miniaturansicht angehängter Grafiken
screenshot_173.png  
Angehängte Dateien
Dateityp: zip gimme_md5_-_binaries_only_829.zip (240,3 KB, 16x aufgerufen)
Dateityp: zip gimme_md5_-_source_only_102.zip (11,8 KB, 20x aufgerufen)
Dateityp: zip gimme_md5_-_source_binaries_139.zip (252,2 KB, 25x aufgerufen)
Real Programmers always confuse Christmas and Halloween because Oct31 = Dec25. - Andrew Rutherford
 
zahor

 
Delphi 2007 Professional
 
#21
  Alt 20. Feb 2008, 19:39
@jmit: gar nichts markieren
du öffnest einfach ein paar ordner, z.b. eigene dateien oder programme oder so, und klickst dann zurück im programm auf den button. bei mir funktioniert's unter vista prächtig, win 2000 ist auch kein problem, also wieso sollte xp nicht gehen? probier's doch nochmal
und könntest du deine vorschläge zum interface vielleicht etwas präzisieren? danke. wie gesagt, kritik ist immer willkommen!
@larsi: http://www.delphipraxis.net/internal...ct.php?t=59489 das projekt scheint's aber nicht mehr zu geben...
vllt. hilft dir das weiter: http://www.heise.de/software/download/o0g0s0l3k311 sind bestimmt auch ein paar opensource dabei!
  Mit Zitat antworten Zitat
Benutzerbild von jmit
jmit

 
Turbo Delphi für Win32
 
#22
  Alt 20. Feb 2008, 20:34
Hallo

Zitat von zahor:
@jmit: gar nichts markieren
du öffnest einfach ein paar ordner, z.b. eigene dateien oder programme oder so, und klickst dann zurück im programm auf den button. bei mir funktioniert's unter vista prächtig, win 2000 ist auch kein problem, also wieso sollte xp nicht gehen? probier's doch nochmal
...
Gemacht wie beschrieben. Bekomme dann folgende Meldung (Siehe Anhang)
Miniaturansicht angehängter Grafiken
meldung_157.jpg  
  Mit Zitat antworten Zitat
zahor

 
Delphi 2007 Professional
 
#23
  Alt 20. Feb 2008, 21:43
hm... das ist komisch. wie man im quelltext sieht greift das programm ja auf gar keine dateien zu (außer natürlich beim errechnen der hashes)!
hast du windows vielleicht nicht auf c: installiert? oder sonst irgendwelche "exotischen" dinge mit deinem windows gemacht? das wären die einzigen möglichkeiten die mir so spontan um halb elf noch einfallen^^

Der quelltext des kopier-buttons ist ja folgender:

Delphi-Quellcode:
var
  ShellWin: IShellWindows;
  i: Integer;
  ClName: array[0..64]of Char;
  Pfad: AnsiString;
begin
  ShellWin := CoShellWindows.Create;
  for i := 0 to Pred(ShellWin.Count) do
    with ShellWin.Item(i) as IWebBrowser2 do
    begin
      GetClassName(hwnd, ClName, SizeOf(ClName));
      if (string(ClName)= 'ExploreWClass') or (string(ClName)= 'CabinetWClass') then
      begin
        Pfad:= StringReplace(LocationURL, 'file:///', '', [rfReplaceAll, rfIgnoreCase]);
        Pfad:= StringReplace(Pfad, '/', '\', [rfReplaceAll]);
        Pfad:= StringReplace(Pfad, '%20', ' ', [rfReplaceAll]);
        if DirectoryExists(Pfad) then
          ListBox1.Items.Add(IncludeTrailingPathDelimiter(Pfad));
        //ListBox1.Items.Add(Format('%d %s %s', [HWND, LocationURL, LocationName]))
      end;
    end;
du kannst ja mal den source nehmen und mit f7 compilieren (immer wieder f7 drücken, am besten draufbleiben, du kennst das wahrscheinlich eh) und mir sagen, in welcher zeile der fehler kommt. die md5-berechnungs-blöcke aber am besten per f8 überspringen, sonst sitzt du noch nächstes jahr mit dem finger auf f7 rum^^

EDIT: oder in delphi die listbox vergrößern und visible auf true setzten. sie ist so 8*8 pixel groß in der linken oberen ecke im moment und posten was da drin steht. vllt. vorher noch die kommentierung entfernen damit das ding ein bisschen mehr verrät
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


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 10:04 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz