Delphi-PRAXiS
Seite 5 von 12   « Erste     345 67     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Filedup 1.0.7.0 - Identische Dateien finden (https://www.delphipraxis.net/50137-filedup-1-0-7-0-identische-dateien-finden.html)

bigg 11. Jun 2006 11:13

Re: FileDup - identische Dateien auf einem Laufwerk suchen
 
Huhu himitsu,

der Fehler lag wohl an einem doppelten Slash in der Dateisuche. :oops:
Könntest ja nochmal drüber gehen und mir sagen, ob der Fehler noch immer auftritt. :mrgreen: :wall:

Neu in dieser Version sind: (1.0.0.7)
  • Suchvorgang kann abgebochen werden
  • Symbolleiste hinzugefügt
  • neue Spalte "Dateityp" hinzugefügt
  • Markierter Eintrag / Datei kann gelöscht werden

himitsu 15. Jun 2006 12:15

Re: FileDup - identische Dateien auf einem Laufwerk suchen
 
Nochwas ... AlwaysOnTop des Statusfensters ... mach dat weg :warn:
[insert]büüüütte http://fnse.de/S01/0VO.gif[/insert]

Das Teil ist störend ... /me nutzt FileDup im Moment bei seiner Datenrettung und wenn man da mehrere hunderttausend Dateien und Gigabytes durchsucht, dann läuft dein Programm ja nicht gerade kurz und die ganze Zeit über hat man dieses Fenster ganz.


Sowas sollte man wirklich nur machen, wenn es sich erstens um ganz kleine Fenster handelt und es unbedingt nötig ist.



[nachtrag]
wärend die Suche läuft, kann man die Button und das Menü des Hauptforms noch nutzbar ...
man könnte also z.B. weitere Suchläufe starten, oder sonstwas (hab jetzt aber nicht getestet, as dann passiert, aber ich kann mir vorstellen, daß diese sich dann gegenseitig etwas stören.

Außerdem hab ich jetzt 'nen weggefunden dein Statusfenster in AlwaysInBack umzuwandeln ... hab einfach mal das Menü (Datei) geöffnet und plötzlich war dieses Statusfenster weg ... hab's dann hinter dem Hauptformular entdecken können, nachdem ich es zur Seite schob.

[nachtrag2]
hab endlich bemerkt, daß es nur solange AlwaysOnTop ist, wie es im Status "•Suche Dateien..." ist, danach geht es wieder ^^

bigg 15. Jun 2006 15:39

Re: FileDup - identische Dateien auf einem Laufwerk suchen
 
hi himitsu,

danke für's Testen. :)
Mir ist auch klar, das man das Programm noch nicht auf den "Standard-Benutzer" loslassen darf, grade weil ich noch
den Suchprozess optimieren muss. ;-)

Zitat:

Zitat von himitsu
Das Teil ist störend ... /me nutzt FileDup im Moment bei seiner Datenrettung und wenn man da mehrere hunderttausend Dateien und Gigabytes durchsucht, dann läuft dein Programm ja nicht gerade kurz und die ganze Zeit über hat man dieses Fenster ganz.

Sowas sollte man wirklich nur machen, wenn es sich erstens um ganz kleine Fenster handelt und es unbedingt nötig ist.

Dito! Das Statusfenster ist ja nicht verkehrt und ich werde es auch noch anpassen / verbessern.
(Unter anderem auch das Hauptformular verstecken, Such-Funktionen aktivieren / deaktivieren / Im Hintergrund suchen lassen etc.)

himitsu 23. Jun 2006 11:37

Re: FileDup - identische Dateien auf einem Laufwerk suchen
 
Liste der Anhänge anzeigen (Anzahl: 2)
irgendwas is mir die ganze Zeit an dem Proggi komisch vorgekommen ... ich wußte bißher nur nich was ._.
Sheepo? http://fnse.de/S05/1O8.gif


Ach ja ... /me hat ma einiges geändert ... das Gröbste:
Delphi-Quellcode:
// #VSData ist ja ein Pointer-Typ
TVSData > PVSData

// der Typ !!!Typ und Variablen mit gleichen Namen
FileInfo > TFileInfo
// die Variable
// (dank der KompilerMagic geht es auch so, aber so
// sieht man wenigstens gleich was gemacht wird)
FileInfo. > FileInfo^.


// da das Verzeichnis mal länger sein kann und es blöd aussieht, wenn das umgebrochen wird ^^
TStatusForm.Memo.WordWrap = False
Weil mich das AlwaysOnTop gestört hat:
Delphi-Quellcode:
TStatusForm.FormStyle = fsNormal
TStatusForm.Visible = False

procedure TMainForm.FormActivate{OnActivate}(Sender: TObject);
begin
  if StatusForm.Showing then
    StatusForm.BringToFront;
end;
Und da, wenn man das Statusfenster geschloßen hat, nichts mehr machen kann, außer blind zu warten, bis er fertig ist (abbrechen geht ja auch nicht mehr) ... sobald das Fenster geschlossen wird, wird auch die Suche abgebrochen.
Delphi-Quellcode:
procedure TStatusForm.CloseClick(Sender: TObject);
begin
  CancelProcess := True;
  Self.Close;
end;
Im Menü gibt es 'nen neues SubMenü ... dort kann man auswählen welche Ergebnisse angezeigt werden sollen.
(dieses wird aber nur wärend der Suche angewendet ... späteres Umstellen hat keine Wirkung)
also bei 4+ (hab's mir mit den Namen erstma einfach gemacht) werden nur gleiche Dateien angezeicht, also also mit Status 4 (oder größer).
siehe TMainForm.ListView_Fill...

Aber aus irgend einem Gruß is Delphi in Vista ja etwas durchgedreht und das Auswählen geht nicht mehr ... im Designer geht es noch, dort ist auch noch der Punkt zu sehn, aber nach dem Kompilieren kann man nichts mehr auswählen und auch der Punkt wurde durch den Hacken ersetzt ... anfangs ging es mal ... also besser ihr Kompiliert das Ganze nochmal.

Die ToolButtons ... hatte ich nicht installiert, daher sind dort jetzt mal ein DelphiEigenen :roll:


Das Löschen: es werden jetzt die gelöscht, welche dat Häckchen haben und nicht nur die Selektierte.


Ansonsten gibt's noch weiter kleinere Änderungen ... am Einfachsten du vergleichst mal die Main.pas's miteinander ... alle Änderungen außerhalb hab ich schon aufgeführt).


PS: die Suche ist auch ein bissl schneller, da jetzt die Anzeige nicht mehr bei jedem Bissl aktualisiert wird (maximal alle 50ms, also höchstens 20x pro Sekunde ... hatte erst 300ms - 3x/sec, aber so sieht es besser aus, auch wenn dat andere noch ä bissl Schneller war).
Hier werden dir ja viele sagen können was passiert, wenn man Application.ProgressMessages zu oft aufruft :angel2:

himitsu 11. Jul 2006 15:27

Re: FileDup - identische Dateien auf einem Laufwerk suchen
 
Liste der Anhänge anzeigen (Anzahl: 1)
OK, /me hatte 'ne Option falsch gesetzt ... man kann jetzt auch mal die Auswahl unter Datei\Suchanzeige ändern.
( AutoCheck=True in den Untermenüs mußte gesetzt werden :wall: )

Aber warum die Schriftart in den Buttons falsch ist (wenn man 'nen Button anklick stimmt's ja), weiß ich noch nicht.
(vermute mal es hängt mit der VirtualTreeView zusammen)

Weßhalb unter Datei\Suchanzeige keine Punkte, sondern Häckchen sind ... irgendwas is in der .RES drin ... ohne diese sind Pünktchen zu sehn :gruebel:


PS: ich laß das Programm immer mit Suchanzeige=4 laufen ... ist gleich viel übersichtlicher, wenn man nur die "Gleichen" angezeigt bekommt :stupid:

bigg 11. Jul 2006 16:40

Re: FileDup - identische Dateien auf einem Laufwerk suchen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi Himitsu,

Zitat:

OK, /me hatte 'ne Option falsch gesetzt ... man kann jetzt auch mal die Auswahl unter Datei\Suchanzeige ändern.
( AutoCheck=True in den Untermenüs mußte gesetzt werden ouch! )

Aber warum die Schriftart in den Buttons falsch ist (wenn man 'nen Button anklick stimmt's ja), weiß ich noch nicht.
(vermute mal es hängt mit der VirtualTreeView zusammen)

Weßhalb unter Datei\Suchanzeige keine Punkte, sondern Häckchen sind ... irgendwas is in der .RES drin ... ohne diese sind Pünktchen zu sehn Grübelnd...

PS: ich laß das Programm immer mit Suchanzeige=4 laufen ... ist gleich viel übersichtlicher, wenn man nur die "Gleichen" angezeigt bekommt Stupid
Also Sheepo gefällt mir ganz gut, ich habe das Icon schon mal in die neue Version integriert und hoffe doch, das das Symbol noch nicht verwendet wird, oder :stupid: ?

Und ansonsten gibt es noch nicht viel neues. Das Eintragen der Dateien werde ich direkt in das VT machen. Is einfach mal noch flotter. Dann wird sortiert und selektiert, so dass sich nur noch gleich große Dateien in einem Knoten befinden.
Grade auf alten Kiste geht das nochmal ab... :>

PS: In der kommenden Woche hab ich mehr Zeit, dann leg ich nochmal los und code nen bissl :>

himitsu 11. Jul 2006 16:47

Re: FileDup - identische Dateien auf einem Laufwerk suchen
 
Was ich noch empfehlen würde, wäre ein echter 100%-Test (als 5), also Byte für Byte, wenn die Hash's gleich sind.
Hash's sind ja nich ganz identisch ... es kann dennoch vorkommen, daß Dateien zwar den selben Hash haben, aber dennoch nicht identisch sind.

und daß die Dateien jetzt noch gesplittet sind is och nicht schlecht ... übersichtlicher ^^
(dann brauch ich ja mein eigenes Vergleichprogamm doch nicht mehr neu aufsetzen, wenn sich dat hier prächtig entwickelt ... bei mir hatte ich ja ein Fehler eingeschlichen, aber ich weiß nicht wo -.-'')

PS: die interen Vergleicher/das Sortieren is wirklich noch nich so doll .. selbst ei 'nen schnellen Rechner is dat Programm für mehrere Minuten und mit 100% CPU nicht bediehnbar ... so bei 600.000 Dateien, 200 GB :roll:

MagicAndre1981 11. Jul 2006 16:55

Re: FileDup - identische Dateien auf einem Laufwerk suchen
 
Liste der Anhänge anzeigen (Anzahl: 1)
hmm unter Vista werden die Bilder der Buttons nicht angezeigt :gruebel: Das ist das selbe Problem, wie bei QIP 2005, da fehlen auch die Bilder.

bigg 11. Jul 2006 16:58

Re: FileDup - identische Dateien auf einem Laufwerk suchen
 
Den Byte-Vergleich werde ich noch einbauen, grade um die Routinen zu überpüfen.
Und wenn sich eh nur 2 Dateien im Knoten befinden, sollte man eh nen direkten Vergleich vorziehen.
Also Optmierungspotenzial is auch noch drin.

Wobei gleiche Dateigrößen und gleiche Checksummmen (Hash1+Hash2) "relativ eindeutig" sind.

edit:
@Andre: Die Bilder werden unter Vista (32 Bit Version) angezeigt, teste mal die aus dem ersten Thread, ob's damit geht.
Wenn nich gucksch mal, was da los is.

MagicAndre1981 11. Jul 2006 19:48

Re: FileDup - identische Dateien auf einem Laufwerk suchen
 
Zitat:

Zitat von bigg
Die Bilder werden unter Vista (32 Bit Version) angezeigt, teste mal die aus dem ersten Thread, ob's damit geht.

Die Original-Exe geht, aber bei der letzten im Thread gepostete Version werden die Bilder nicht angezeigt :gruebel:


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:03 Uhr.
Seite 5 von 12   « Erste     345 67     Letzte »    

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