Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Delphi Cleaner 1.4 [Update!] 2000/XP/Vista (https://www.delphipraxis.net/77896-delphi-cleaner-1-4-%5Bupdate-%5D-2000-xp-vista.html)

Go2EITS 28. Sep 2006 18:39

Re: Delphi Cleaner 1.1 [updated]
 
@Luckie
Zitat:

Ich würde die Schaltflächen durch Menüs ersetzen und zusätzlich eine Toolbar nehmen (Musst nur ein paar schöne Bildchens finden). Das, was in der Groupbox "Ereignis" steht würde ich in eine Statusbar verfrachten, dazu ist sie da. Un für die Einstellungen könnte man einen extra Dialog nehmen.
Danke! Hatte Dein Posting übersehen. Das Programm sollte erstmal fehlerfrei laufen, ok? Sonst wird es für mich zu schwierig. :drunken: :cyclops: :zwinker:


@pertzschc
Zitat:

Ist wohl ein Geheimnis. Auch ok.
War von mir ernst gemeint. Es wird niemand gezwungen.
Das war beim ersten Mal auch mein Ergebnis, nur in ca. 2 Min. :hi:
Die Combobox ist von Natur aus ein Feld, in der man selbst Eingaben vornehmen kann.
(Siehe Hilfe. Wusste ich zuvor auch nicht. Wie stellt man die Eingabe ab?)

Zwischenstand zum Programm:
Nun fehlt nur noch die Belegung der 2 optionalen Endungen, die noch Leer sind und die LogDateien!
Wahrscheinlich wird die Version Freitag fertig.

Viele Grüße an die DP!
Go2EITS

Sunlight7 29. Sep 2006 02:43

Re: Delphi Cleaner 1.1 [updated]
 
Die Eingabe kannste abstellen, wenn Du den Style auf csDropDownList setzt.

Hab noch 1.5 (3 halbe) Bugs gefunden.
  • Wenn man auf "Backupverzeichnis öffnen" klickt, und es noch nicht vorhanden ist.
  • Die von Norton Protection geschützten Dateien vom Papierkorb nicht anzeigen.
  • Nimm das Leerzeichen vom Standard Backuppfad am Ende raus, sonst kann das Verzeichnis nicht mit dem Explorer gelöscht werden.

PS: 13 Dateien, 14.56 KB (hab meinen Cleaner mal kurz ausgeschaltet)

Wenn man ganz kleinlich ist: 198 KB stimmen nicht mehr, es sind bereits 200 KB :zwinker:

Fuchtel 29. Sep 2006 07:08

Re: Delphi Cleaner 1.1 [updated]
 
Hallo Go2EITS,

Du schreibst:

Zitat:

... Bei der Suche hatte ich vergessen, die Liste im Speicher, wenn TStringList.Count > 0ist. mit TStringList.clear zu initialisieren. ...
Bedeutet das, das Du erst eine Stringliste mit den gefundenen Dateien füllst, und dann damit die TCheckListBox.Items füllst oder Assignesd?

Warum füllst Du in deiner Suchfunktion nicht gleich die TCheckListBox.Items und sparst Dir somit die Stringliste.

Weitere Fehler:

Sind folgende Dateien vorhanden:

D:\Test1.bak
D:\Test2.baked

und wird nach *.bak gesucht, so findet er beide Dateien!
Dabei kan die (hier willkürliche) Endung *.baked irgend eine andere wichtige Bedeutung haben.

Dies liegt daran, das bei

Delphi-Quellcode:
FindFirst(IncludeTrailingPathDelimiter(Directory) + Filter, cAttr, SearchRec) ... FindNext
der Filter nicht korrekt ausgewertet wird.

Du mußt also jede gefundene Datei noch mal selbst überprüfen:
  • Function StrSatisfy aus Key Objects Library (C) 2000 by Kladov Vladimir (http://bonanzas.rinet.ru (E)) (hoffentlich noch gültig!)
  • Zumindest aber die Länge der Dateierweiterung (hier 3) testen. (Am schnellsten von hinten bis zu PathDelim zählen).


Fuchtel

oki 29. Sep 2006 07:34

Re: Delphi Cleaner 1.1 [updated]
 
Hi,

das editieren in der ComboBox kann mit der eigenschaft "Style" im OI eingestellt werden. Ändere die Eigenschaft von "csDropDown" in "csDropDownList". dann können nur noch die Einträge ausgewählt werden.

gruß oki

PS. die gelöschten Corel-draw-Dateien waren keine Delphidateien, sonden Backup's von CorelDraw.

Go2EITS 29. Sep 2006 10:41

Re: Delphi Cleaner 1.1 [updated]
 
Liste der Anhänge anzeigen (Anzahl: 1)
@sunlight7
Zitat:

Wenn man auf "Backupverzeichnis öffnen" klickt, und es noch nicht vorhanden ist.
- erledigt. Showmessage eingefügt, wenn kein Backupverzeichnis vorhanden ist.
Zitat:

Die von Norton Protection geschützten Dateien vom Papierkorb nicht anzeigen.
Wer das Programm von Norton installiert, hat seinen Grund. Da pfusche ich lieber nicht rein.
Zitat:

Nimm das Leerzeichen vom Standard Backuppfad am Ende raus, sonst kann das Verzeichnis nicht mit dem Explorer gelöscht werden.
- War nur in der Anzeige drin, Das Verzeichnis wurde nicht mit \backup \ angelegt. Die Anzeige\Shellexecute habe ich entsprechend geändert.

@oki:
Das mit dem Editieren der Combobox habe ich gefunden und geändert. Nun kann man es nicht mehr editieren.

Zitat:

PS. die gelöschten Corel-draw-Dateien waren keine Delphidateien, sonden Backup's von CorelDraw.
Hast Du einen Vorschlag, wie ich die überspringen kann? Liegen die Backups generell in einem speziellen Ordner oder bezieht es sich auf die erstellten Grafiken/Objekte, die der User "wahllos" über die Festplatte verteilt? Sonst muss ich den User warnen, Coreldraw Dateien zu überspringen, bzw. nicht zu markieren.

@Fuchtel: Nein, die Daten schreibe ich in ein Tstringlist und dann ins Backup.
Bei der erneuten Suche habe ich die Tstinglist nicht neu initalisiert. Das ist alles.

Zitat:

Warum füllst Du in deiner Suchfunktion nicht gleich die TCheckListBox.Items und sparst Dir somit die Stringliste.
Sehr gute Idee. Aber ich habe die Daten in der TStringlist und die Filenames in der TCheckListBox.
Zitat:

D:\Test1.bak
D:\Test2.baked
Das ist komisch. Das sollte der Torrycode nicht. Ist ein Bug. Den versuche ich zu reproduzieren und zu beseitigen. Im Übrigen hast Du besonders konstruktive Vorschläge mit Lösungen. Das hilft richtig weiter. Vielen Dank!

@Luckie
Zum Projekt: Ein TMainmenue ist auch schon integiert. den Sinn und Zweck einer TmainMenue ist mir klargeworden. Aber: Die Suche und die Einstellungen möchte ich nebeneinander. Sonst friemelt man sich zu Tode, um eine Suche auszuführen. Das hat mich bei vielen Programmen gestört, dass man für jede Kleinigkeit über ein TMainmenue sich Hangeln muss und dann über zig Ebenen muss.

Zum Programmfortschritt:
- In mein Programm kommt ein Button dazu: DeepClean: Alle Laufwerke werden mit allen eingeschalteten Optionen ausgeführt und alle gefunden Dateien sofort gelöscht.
- Die Einstellungen der Optionen werden nun gespeichert und bei Neustart de Programmes geladen. (ohne Registry!)
- Wenn ein eigener Path zum Säubern gewünscht wird, wird die Combobox disabled und nur der Path gescannt.

Ist noch ein wenig Arbeit. Ihr habt ganz hervorragende Vorschläge. Respekt! :thumb: Weiter so. Beste Grüße an die DP von
Go2EITS

Luckie 29. Sep 2006 10:49

Re: Delphi Cleaner 1.1 [updated]
 
[quote="Go2EITS"]@sunlight7
Zitat:

Wenn man auf "Backupverzeichnis öffnen" klickt, und es noch nicht vorhanden ist.
- erledigt. Showmessage eingefügt, wenn kein Backupverzeichnis vorhanden ist.[quote]
Und warum deaktivierst du ihn nicht einfach? Ist schöner, als wenn dem benutzer so eine Messagebox ins Gesichtspringt, die er erst wieder wegklicken muss, um weiter arbeiten zu können.

pertzschc 29. Sep 2006 10:49

Re: Delphi Cleaner 1.1 [updated]
 
Zitat:

Zitat von Go2EITS
Ist noch ein wenig Arbeit. Ihr habt ganz hervorragende Vorschläge. Respekt! Weiter so.

Weiter geht es: Schau Dir mal die .Top Werte Deiner 3 Groupboxen an, von links nach rechts wird der obere Beginn je um 1-2? Pixel nach unten verschoben.

Gruß,
Christoph

Go2EITS 29. Sep 2006 11:28

Re: Delphi Cleaner 1.1 [updated]
 
@Luckie
OK. Die Meldung nehme ich in die Statusleiste. Erledigt.

@pertzschc
Mach ich dann, wenn den Code mit TurboExplorer compliere. Da kann man die GuiObjekte besser ausrichten. Schreibe unter D7, wegen CnWizards.

Beste Grüße
Go2EITS

Luckie 29. Sep 2006 11:29

Re: Delphi Cleaner 1.1 [updated]
 
Zitat:

Zitat von Go2EITS
@Luckie
OK. Die Meldung nehme ich in die Statusleiste. Erledigt.

Nicht in die Statusleiste. Deaktivier die Schaltfläche so lange kein entsprechendes Verzeichnis existiert.

Go2EITS 29. Sep 2006 12:04

Re: Delphi Cleaner 1.1 [updated]
 
@Luckie
Ist im TMainmenue und wunschgemäß erledigt. :hi:

Go2EITS 29. Sep 2006 13:38

Re: Delphi Cleaner 1.1 [updated]
 
So, News über Delphi Cleaner von mir:

Das Problem des Backups ist gelöst. Die gefundenen Dateien und die gesichterten Dateien stimmen überein.
Das Problem mit .bak und dem gefundenen .bakx habe ich auch gelöst. Genauso bei .dof und .ddp Ein .dofxyz sollte z. B. auch nicht mehr vorkommen.
Aber:
Es muss für die Usereingaben eine universelle Procedure her, die auf die Usereingaben auf ein Sternen wunschgemäßt reagiert und gleichzeitig Dateien mit .XYZVK exakt findet. Letzteres macht die mir vorliegende Routine nicht. Damit das Programm aber für den Delphi Programmierer seien Zweck erfüllt, lasse ich vorerst die userdefinierten Eingabefelder weg, bis das Problem gelöst ist. Denn schließlich ist es ein Delphi Cleaner und nicht Win Cleaner. :zwinker: Das DeepClean habe ich doch nicht rein, weil ich nicht möchte, dass jemand ohne Rückfrage alles markiert, sichert und löscht. Außer Ihr wünscht es.

Jetzt fehlen noch die Logs und die fertige Hilfe.
Und noch ein Problem: Die Verzeichnisse, in denen die Files gelöscht wurden, lassen sich nicht löschen, solange mein Programm läuft. Bitte mal in den Thread Problem offene Streams? reinsehen. Mit der Anordnung der Buttons bin ich auch noch nicht ganz zufrieden. Aber wer weiss, was wir noch ändern.

CU!
Go2EITS

Luckie 29. Sep 2006 14:37

Re: Delphi Cleaner 1.1 [updated]
 
Bitte aktualisier die Dateien im ersten Posting, sonst m,us sman immer den ganzen Thread durchscrollen, um eventuell eine noch aktuellere Version zu finden.

Sunlight7 29. Sep 2006 15:13

Re: Delphi Cleaner 1.1 [updated]
 
Zitat:

Zitat von Go2EITS
Wer das Programm von Norton installiert, hat seinen Grund. Da pfusche ich lieber nicht rein.

Es ist so, das Du da doch "reinpfuscht", weil die Dateien in der Liste erscheinen.
Das ist mir erst gar nicht aufgefallen, weil keine Dateien geschützt waren.

Du könntest den Pfad ?:\Recycled\NProtect (FAT(32)) und ?:\Recycler\NProtect (NTFS) von der Suche ausschließen.

Unverbindlicher Hinweis!

Go2EITS 29. Sep 2006 16:00

Re: Delphi Cleaner 1.2 Beta ist da!
 
@Sunlight7
Bestens, ist nicht in der 1.2 Beta drin. Aberich habe es schon ergänzt und funktioniert auch, das die Files nicht angezeigt werden.
Super Tipp! :thumb:

So, und nun erbitte ich mehr Meinungen, auch von den Gästen. Wer sich anmeldet, bekommt kein Spam (soweit ich weiss). :hi:
Beste Grüße an die DP!
Go2EITS

Balu der Bär 29. Sep 2006 16:02

Re: Delphi Cleaner 1.2 Beta ist da!
 
Sagmal was soll eigentlich:
Zitat:

- Für die DP User - Freeware -
Wenn ich dein Programm an jemanden weitergebe ist es für diesen nicht mehr Freeware oder wie muss ich das verstehen? :gruebel:

Grüße,

Go2EITS 29. Sep 2006 16:07

Re: Delphi Cleaner 1.2 Beta ist da!
 
@Balu der Bär
Kurz: Ja. Weil die Version noch nicht fertig ist und mit Turboexplorer compiliert werden soll.

Go2EITS 29. Sep 2006 16:23

Re: Delphi Cleaner 1.2 Beta ist da!
 
Ja, und nun auch einen Hinweis via PN bekommen:
if Pos('.part.met.bak',directory + search.Name)>0 then Break;
if Pos('\Downloads.bak',directory + search.Name)>0 then Break;
if Pos('\client.met.bak',directory + search.Name)>0 then Break;

Emule .bak werden nun nicht mehr in der Liste aufgelistet.
:thumb: :-D
Danke an PN :mrgreen:

oki 29. Sep 2006 16:34

Re: Delphi Cleaner 1.2 Beta ist da!
 
Hi go2eits (oder so),

das mit den CorelDraw-dateien ist so. In den Optionen kann der Punkt automatische Sicherungskopie aktiviert werden. Hierbei kann zwischen zwei Orten gewählt werden:
1. "Sicherungskopie in gleichen Ordner wie CDR-Datei speichern"
2. "Standardordner für Sicherung" -> hier kann ein Ordner ausgewählt werden.

somit ist es sicher eine Frage der Hilfe/readme, Benutzer von CorelDraw darauf hin zu weisen, dass im Zweifel ihre Sicherungskopien gelöscht werden. Bei Anwahl der Option 2 ist das ein Pfad für DClean/exclude.

Um das auch noch mal klar zu stellen, es geht nicht um ordinäre CorelDraw-Dateien, sondern nur um automatische Sicherungskopien der Selben!

Dann noch eine Sache. Für die auswahl der Laufwerke halte ich es für sinnvoller nicht "Alle Laufwerke" zu nehmen, sondern mittels Checkbox in der Liste auswählbar zu machen. So kann man die wirklich benötigte Untermenge in einem Schwung frei wählen. Der vergebene Name hinter dem Laufwerk ist auch noch ne gute Idee.

Gruß oki

Go2EITS 29. Sep 2006 16:48

Re: Delphi Cleaner 1.2 Beta ist da!
 
@OKI

Ein wichtiger Hinweis von Dir. Danke! Ein Hinweis im Programm wäre gut.
Die Coreldraw Dateien, weisen sie Merkmale wie z. B. Delphi auf? z. b. *~.bak worauf man auf eine Coreldraw schließen könnte, oder ich könnte ab einer Größe von 1 MB einer Datei eine Extra "verdächtige Liste" machen. Aber mir fällt ein Trick ein, wie ich Delphi .bak und .fg Dateien erkenne. Das muss ich gleich mal ausprobieren.

Eine Excludedatei wäre nicht schlecht.

Zitat:

Dann noch eine Sache. Für die auswahl der Laufwerke halte ich es für sinnvoller nicht "Alle Laufwerke" zu nehmen, sondern mittels Checkbox in der Liste auswählbar zu machen. So kann man die wirklich benötigte Untermenge in einem Schwung frei wählen. Der vergebene Name hinter dem Laufwerk ist auch noch ne gute Idee.
Ist mal im Hinterkopf. Bin aber Anfänger und nicht mit allen Kompnenten wie teilweise Ihr vertraut.
Es muss erst mal so laufen.

Vielen Danke für Deine Ideen und Unterstützung! Da werden auch andere profitieren. :thumb:
Beste Grüße von
Go2EITS

xZise 29. Sep 2006 17:58

Re: Delphi Cleaner 1.2 Beta ist da!
 
Zitat:

Zitat von Go2EITS
if Pos('.part.met.bak',directory + search.Name)>0 then Break;
if Pos('\Downloads.bak',directory + search.Name)>0 then Break;
if Pos('\client.met.bak',directory + search.Name)>0 then Break;

Meiner Meinung nach schlecht gelöst. Ich würde eher:
Delphi-Quellcode:
if (Pos('.part.met.bak',directory + search.Name)=0) and (Pos('\Downloads.bak',directory + search.Name)=0) and (Pos('\client.met.bak',directory + search.Name)=0) then
// Datei ggf. löschen

pertzschc 29. Sep 2006 20:45

Re: Delphi Cleaner 1.2 Beta ist da!
 
Hallo Go2EITS,

ich finde es gut, wie Du das Programm vorantreibst. Ich möchte Dir raten, das Cleanen auf ein auszuwählendes Verzeichnis zu beschränken und von da ab rekursiv nach unten zu cleanen und nicht ganze Partitionen einzubeziehen.

Meine Erfahrung ist, das normalerweise die Entwickler Ihre Projekte unterhalb bestimmter Verzeichnisse anordnen um z.B. dann nur das obere Verzeichnis (z.B. D:\Development\Delphi...) zu backupen etc.

Damit kannst Du Dir das ganze Ausnehmen von bestimmten Dateien und Verzeichnissen (Norton...) ersparen.

Grüße,
Christoph

Go2EITS 1. Okt 2006 08:37

Re: Delphi Cleaner 1.2 Beta ist da!
 
@pertzschc
In der Version 1.3 (ist auch schon in Arbeit, bis das Streamproblem gelöst ist) geht Dein Vorschlag ein. Aber der User kann trotzdem einzelne Laufwerke und mit einem Schwung die ganze Festplatte durchsuchen. Und für jede Variante (Liste mit benutzerdefinierten Pfaden, einzelnes Laufwerk oder alle Laufwerke) kann der User jeweils unterschiedliche Einstellungen, einschließlich für den Batchbetrieb vornehmen. In die Version 1.2 fließt dies aber nicht mehr mit ein. Aber sobald das Problem der offenen Streams und den *.bak (keine binären bak.-Dateien sollen gelistet werden) gelöst ist, wird 1.2 nicht mehr Beta sein. Aber die Version ist sonst voll funktionstüchtig!

@sZise:
Wenn jetzt ein Path fehlt, werden die vorhandenen Pfade durchsucht und gelistet. Daher ist es sinnvoll, meine variante zu nehmen. Aber wichtiger ist jedoch, Uppercase einzufügen (schon erledigt), damit Änderungen an den Pfaden nicht zum Datengau führen.

So, ich probiere weiter die Geschichte mit *.bak und den Streams in Griff zu bekommen.
Wer mein Programm nutzt oder verwendet wird mit einer Meldung der gefunden Files und MBs freundlich gebeten. :thumb:

Beste Grüße an die DP.
Go2EITS

Go2EITS 2. Okt 2006 13:24

Re: Delphi Cleaner 1.2 [update]
 
@Alle

Delphi Cleaner 1.2 ist da!
Das Problem mit den *.bak ist gelöst. Es werden nur noch Textdateien gelöscht. Coreldraw Dateien dürften nun nicht mehr angezeigt werden. Das mit Problem dem Test.bak.xxx ist auch gelöst.
.Cfg Dateien scheinen mir wichtig zu sein. Die biete ich nicht mehr zum Löschen an, außer Ihr habt einen plausiblen Grund dafür.

Neu in der Version 1.2
  • Gui verändert: Benutzerdefinierter Path steht an erster Stelle
  • Dateien mit den Ändungen löschbar: *.~*, *.bak *.ddp, und *.dof. Dabei wird bei Bak-Dateien darauf geachtet, dass nur Textdateien zum Löschen angeboten werden. Binäre *.Bak Dateien werden nicht gelöscht!
  • Log Datei kann angelegt werden.
  • Backup ist jetzt korrekt.
  • Batchmodus wird mit Parameter -Silent aufgerufen.
    Das Programm läuft dann im Hintergrund und ohne Eingabeaufforderungen ab. Die eingestellten Parameter der GUI werden beim Verlassen des Programmes gespeichert und stehen bei Programmneustart oder im Batchmodus wieder zur Verfügung.
  • Link zur DP eingefügt.
  • Link für Update des Programmes hinzugefügt.
  • Verschiedenes: Menueleiste eingefügt. Die Ini Datei wird geprüft, ob diese zur Version 1.2 passt.
    Norton Protect und Emule Verzeichnisse werden ignoriert. Auch das eigene Backupverzeichnis wird überprungen.Das Historyverzeichnis von BDS wird ignoriert. Code auf Geschindigkeit optimiert. Batchparammeter -backup wieder rausgenommen, weil nur die Einstellungen der GUI übernommen werden sollen. Der Parameter ist daher überflüssig. Die Option, selbst Parameter wie *.* etc. zur Suche einzufügen, wurde wieder verworfen, da das Programm nur delphispezifische Dateien finden und zum Löschen anbieten soll. Die Anzeige ergänzt, im welchen Modus, "benutzerdefinierter Path", "einzelnes Laufwerk" oder "alle Laufwerke", das Programm ausgeführt wird. Hints, Shortcuts und Hilfedatei eingefügt.

So meldet mal wieder, wie viele Files/MBs Ihr gefunden habt!
Beste Grüße!
Go2EITS

Sunlight7 2. Okt 2006 17:43

Re: Delphi Cleaner 1.2 [update] Euer Tool! XP/Win2000
 
Hallo, Go2EITS!

Testbericht:

Menü: Das kam mir bekannt vor, und das mußte ich gleich mal ausprobieren: Und der erste kleine Bug war gefunden!
Klicke mal auf Log Datei ansehen, wenn keine da ist... :zwinker:

Vorschlag 1: Wenn man den eigenen Pfad verändert, die Checkbox automatisch setzten, bzw. löschen wenn man die ComboBox ändert.

Vorschlag 2a: Wenn man auf das Edit klickt nicht den Such Dialog zeigen, dafür ist ja der Button da, man muß immer zuerst auf Abbrechen klicken, wenn man den Text umschreiben will.
Vorschlag 2b: Optimal wäre vor dem suchen zu Prüfen, obs den Pfad auch gibt!
Vorschlag 2c: Wenn der Such Dialog öffnet, diesen auf das Verzechnichs setzten, welches im Edit steht.

Vorschlag 3: "Dateien mit den Endungen löschen": Das verwirrt ein wenig, "Dateien mit den Endungen suchen" würde es meiner Ansicht nach eher beschreiben.

Cool: Die NProtect's stehen nicht in der Liste :thumb:

Noch ein kleiner Bug: Nach der Meldung "Ihr Pfad ist leer" kann man nichts mehr suchen, der Button bleibt deaktiviert, bis man den Such-Dialog öffnet und mit OK beendet. Manuelle Eingabe oder Laufwerksuche ist bis dahin nicht möglich.

"E/A Fehler 19" beim beenden :gruebel: <- Nicht so schlimm, das war auf ner Schreibgeschützten Diskette :zwinker:
Da fällt mir auf, Du speicherst nur in die .ini wenn man auf Beenden oder Programm beenden klickt. Für ALT+F4 Schließer hast Du kein Herz :cry:

Win 95B: Bis auf Schriftart läufts perfekt
Win 98: :thumb:
Win ME: :thumb:

Bis auf ein paar Kleinigkeiten super Tool :thumb:

Unwichtige Frage am Rande: Warum machst Du keine "echte" .ini Datei?

PS: Einen Fehler hatt ich fast vergessen: Dateien wie Dateiname.~01.avi, Dateiname.~02.avi, ... möchte ich nicht löschen. :-D

Grüßle!

TKC 3. Okt 2006 03:20

Re: Delphi Cleaner 1.2 [update] Euer Tool! XP/Win2000
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi,

so langsam wirds bei dir ja :wink:

Aber etwas stimmt bei deinem Programm nicht ganz ...

Ich habe mal mein Clean Prog über den selben Ordner laufen lassen ... da gibts gravierende Unterschiede (s. Anhang)!

Dein Programm findet bei mir
- 126 Dateien mit insgesamt 4,6MB

Mein Programm mit den selben Einstellungen für die Suche und dem gleichen Ordner
- 1531 Dateien mit insgesamt 17,95MB

Da stimmt doch was gewaltig nicht oder ?

Go2EITS 3. Okt 2006 09:32

Re: Delphi Cleaner 1.2 [update] Euer Tool! XP/Win2000
 
@ACE-ppc
Keine Ahnung. Nur Prog zu Prog vergleichen hilft nicht. Wir sehen nicht, was Du mitzählst.
Bei mir gibt es Ausnahmen: z. B: Cfg und binäre Bak Dateien zeige ich nicht mehr an.
Auschlaggebend wird sein, dass Du bei *.~* zu viele Files hast. Da hast Du vielleicht einen BUG?
Wenn Du vergleichen möchtest, solltest Du die Unterschiede finden können. Aber ich helfe Dir gerne weiter. Dein Anzeige mit den einzelnen "Rubriken" gefällt mir.

[Nachtrag]
Ich habe mal meine Suche kontolliert mit *.ddp
91 Files bei mir und über die Windowssuche gefunden. Also exakt dieselbe Anzahl an Files.
D. h. meine Suchfunktion stimmt soweit, es gibt bei mir unter *.bak und *.~* viele Ausnahmen.
[\Nachtrag]

CU! In Kürze das Update, dank Sunlight7. :thumb:
Beste Grüße
Go2EITS

Go2EITS 3. Okt 2006 13:03

Re: Delphi Cleaner 1.2 [Build 3 update] Euer Tool! XP/Win200
 
@Alle
Das Update ist da. Sunlight7 war so freundlich mein Tool ausgiebig zu testen.

================================================== ============
Version: 1.2 Build 3 vom 03.10.2006
================================================== ============
- *.~* zeigte auch z. B. .~12.avi an. Gefixt.
- Logdatei wird jetzt im Menue, wenn nicht vorhanden, nun auch nicht angezeigt.
- Userdefinierter Path: Bessere Abfrage, "Nur eigenen Pfad durchsuchen" wird automatisch gesetzt,
wenn ein Path gewählt wurde.
- Prüfung bei der Suche, ob der benutzerdefinierte Pfad überhaupt vorhanden ist.
================================================== ===========

Noch nicht gefixt: Starten des Programmes von einer CD. (Da versagen die meisten Programmes, meines auch noch!)

Also im ersten Beitrag downloaden und testen. Bin auf Eure Werte und meine Fehler gespannt.
Und: Downloader müssen Files und MB melden. (Ist aber natürlich freiwillig!) :zwinker:

Beste Grüße an die DP!
Go2EITS

TKC 3. Okt 2006 17:10

Re: Delphi Cleaner 1.2 [Build 3 update] Euer Tool! XP/Win200
 
Hi,

also du hast recht .. der Unterschied ist, das du die Dateien im "__History" Ordner nicht mitnimmst.

Der Rest stimmt so weit.

Sunlight7 3. Okt 2006 18:01

Re: Delphi Cleaner 1.2 [Build 3 update] Euer Tool! XP/Win200
 
Hallo Go2EITS!

Wo ist das Problem von CD?
Ich hab das auf meinen alten Rechner von ner Schreibgeschützten CD gestartet, bis auf das Problem mit dem in die .ini speichern läufts ja. Wenn Du das speichern mit nem try Block abfängst müßt es ja klappen.
Das mit ALT-F4 und .ini speichern klappt noch nocht :cry:

.dof's lösche ich nicht, daher ist mir das erst jetzt aufgefallen...
Ein Tipp: die DefProj.dof würde ich nicht zum löschen anbieten, damit verägerst Du die Nutzer, wenn Delphi's Standard-Einstellungen für Projekte gelöscht werden.

PS: 23 Files, 99,42 KB

Go2EITS 3. Okt 2006 18:49

Re: Delphi Cleaner 1.2 [Build 3 update] Euer Tool! XP/Win200
 
@Sunlight7
Ich stelle Dich als Softwareprüfer ein! Spass beiseite:
Ich werde
- Windows Shutdown abfangen und die Einstellungen speichern.
- DefProj.dof nicht löschen.
- Try except reinnehmen.

Danke! TOP! (Sag mal, guggst Du mit Dede Decompiler in meinen Code? :-D)

Habe gerade ein Problem mit der Checklistbox seit 4 Std. und finde keine Lösung. Ich meine, es ging vor dem Update vorher sogar, dass die markierten Einträge mit checklistbox.deleteselected alle raus kamen. Nun wird nur noch einer gelöscht. :(

Update kommt, wenn ich das mit der Checklistbox gelöst habe.

Beste Grüße
Go2EITS

Go2EITS 4. Okt 2006 16:02

Re: Delphi Cleaner 1.2 [Build 5 update] Euer Tool! XP/Win200
 
@Alle
Hier für Euch das Update:
================================================== ============
Version: 1.2 Build 5 vom 04.10.2006
================================================== ============
- Checklistboxanzeige gefixt.
- Defproj.dof wird nicht gelistet.
- ALT-F4 wird abgefangen
- Code optimiert.
- TD2006 Compilat mit Inlines

Download und Screenshot wie immer im ersten Beitrag.

Neue User/Downloader: Meldet mal Eure Files und MBs (ab 1000)! :hi:

Viel Vergnügen.
Go2EITS

Fuchtel 5. Okt 2006 07:09

Re: Delphi Cleaner 1.2 [Build 5 update] Euer Tool! XP/Win200
 
Hallo Go2EITS,

ich habe noch einige Anmerkungen / Ideen für deinen Cleaner:

Sanduhr während des Suchens setzen

Fortschritsanzeige funzt nicht. Erst müßte der gesammte Durchsuchungsumfang berechnet werden (alle UVs), um damit Anzeige.Max zu setzen. Dies dauert aber zu lange, deshalb lieber weglassen.

Im LogBuch sollte nicht nur Start, Ende und Anzahl stehen, sonden auch jede gefundene und vorallem jede gelöschte bzw. ins Backup verschobene Datei.

Menuepunkt LogBuch Löschen: Bitte nicht einfach die Datei löschen, sondern nur dessen Inhalt und danach Eintrag, wann gelöscht wurde.

Den das Logbuch darstellenden Editor sollte der Anwender frei festlegen können (nur in INI-Datei; wenn nicht, wie bisher).

Ebenso sollte der BackUpPfad (nur) in der INI frei wählbar sein.

Menuepunkte nach den normalen Konventionen anordnen:
Delphi-Quellcode:
[&Datei]                  [&Extras]            [&Hilfe]
  [Backuppfad &öffnen]      [Logfiele &öffnen]   [&Update]
  [Backupinhalt &löschen]   [Logfile &leeren]    [&DHP]
  [-]                                             [-]
  [&Beenden]                                    [&Hilfe]
Bitte benutze normale INI-Einträge z.B:

Delphi-Quellcode:
[Info]
Version="Delphi Cleaner 1.2  (C) Go2EITS"

[FileExtensions]
Tilde=FALSE
DDP=FALSE
DOF=FALSE
BAK=TRUE

[Files]
MoveToBackUp=TRUE
CreateLog=TRUE

[Pathes]
PathList=3
OnlyOwnPath=TRUE
OwnPath=D:\ATROTECH\test
Unter [Pathes] PathList=3 solltest du den Laufwerksbuchstaben und nicht den Index speichern, da bei einem nächsten Start ev. andere Laufwerke eingebunden sein können (USB, Netzwerk, ..)



Wenn Du im BackUp Verzeichnis den gesammten UV-Pfad nachbildest, kann der Pfad mit Datei u.U. zu lang werden, so daß dann auf die Dateie nicht mehr sicher zugegriffen werden kann (Hier nicht getestet, aber in einem anderen Fall bei mir aufgetreten.). Besser währe es die Dateien mit einer vortlaufenden Nummer zu Erweitern und im Backuppfad unter Datum und Zeit ais UV zu speichern. Gleichzeitig wird dann dort eine Liste erzeugt, in der Dateiname und Pfad aufgeführt wird.

Mit besten Grüßen

Fuchtel

Go2EITS 5. Okt 2006 09:07

Re: Delphi Cleaner 1.2 [Build 5 update] Euer Tool! XP/Win200
 
Puh! Ihr stellt Aufgaben... :zwinker:

Ich habe es auch gesehen: Die Sanduhr wird über einer Groubbox nicht angezeigt, mal sehen ob Dein Vorschlag das Problem beseitigt.

Delphi-Quellcode:
Fortschritsanzeige funzt nicht. Erst müßte der gesammte Durchsuchungsumfang berechnet werden (alle UVs), um damit Anzeige.Max zu setzen. Dies dauert aber zu lange, deshalb lieber weglassen.
Eigenlich funzt es schon. Ich zähle die Laufwerke und setzte entsprechend die Fortschrittsanzeige. Du hast XP, stimmts? Da muss ich hinter jeder Anzeige auf der Form ein Prozess.messages setzen. Sehe ich noch mal durch.

Zitat:

Im LogBuch sollte nicht nur Start, Ende und Anzahl stehen, sonden auch jede gefundene und vorallem jede gelöschte bzw. ins Backup verschobene Datei.
Ich überlege mir ein "Big"Log als Option. Ich glaube nicht, dass Du 3000 Dateien nochmals, die ich Dir vorher in einer Checklistbox angeboten hatte, ansehen willst.

Zitat:

Menuepunkt LogBuch Löschen: Bitte nicht einfach die Datei löschen, sondern nur dessen Inhalt und danach Eintrag, wann gelöscht wurde.
Dachte ich mir auch schon.

Zitat:

Den das Logbuch darstellenden Editor sollte der Anwender frei festlegen können (nur in INI-Datei; wenn nicht, wie bisher). Ebenso sollte der BackUpPfad (nur) in der INI frei wählbar sein.
Stimmt. Kommt in die 1.3er Version.

Zitat:

Wenn Du im BackUp Verzeichnis den gesammten UV-Pfad nachbildest, kann der Pfad mit Datei u.U. zu lang werden, so daß dann auf die Dateie nicht mehr sicher zugegriffen werden kann (Hier nicht getestet, aber in einem anderen Fall bei mir aufgetreten.). Besser währe es die Dateien mit einer vortlaufenden Nummer zu Erweitern und im Backuppfad unter Datum und Zeit ais UV zu speichern. Gleichzeitig wird dann dort eine Liste erzeugt, in der Dateiname und Pfad aufgeführt wird.
Da ist was dran. Verlege ich in die 1.3er Version, die wird noch ein wenig auf sich warten müssen. Im Gegensatz zu Consolenprogrammen ist bei GUI 20x mehr Aufwand zu betreiben. Allein der Umstand, dass der User während einer Suche das Programm nicht abbrechen darf und auch alle Buttons abgechaltet werden müssen, hatte ich zuvor nicht bedacht, wie so vieles anderes nicht. Aber jetzt, sofern es mir die Zeit erlaubt, arbeite ich an dem Projekt weiter, weil ich meine Kenntnisse erweitern möchte. Und habe aufgrund Eures Feedbackes an diesem Projekt viel gelernt.

Wenn ich in dem nächsten Update nicht Eure, für meine Anfängerkünste hohen Ansrüche nicht sofort umsetze, daher nicht böse sein: Was ich sofort kann, setze ich um. Wo ich mich reinarbeiten muss, dauert länger und kommt später. OK?

Erstaunlich ist, das möchte ich Euch noch mitteilen, das TD2006 von D7 ein deutlicher Sprung ist.
Unter D7 habe ich Fastmove, Fastmm und Fastcode verwendet. In TD2006 ist der Compilercode sehr optimiert, da läßt sich nur wenig optimieren. Das Inline bringt nochmals etwas Performance. Delphi Cleaner ist unter D7 wegen CnWizard editiert und mit TD2006 compiliert.

Also Fuchtel, ganz herzlichen Dank für die wertvollen Hinweise und Deine Zeit, die Du für mein Programm genommen hast! Version 1.2 Build 6 kommt aber zuerst. Da sind erst mal die Vorschläge von Sunlight 7 drin. Die INI-Datei, und die Änderung der Menueleiste lasse ich mir noch durch den Kopf gehen. Ich finde Backup, Log und DHP und Update so griffiger. Da muss ich mich nicht erst durch das Menue hangeln. Wenn ich 10 Menueüberschriften hätte, würde ich die Einträge sofort, so wie Du es vorgeschlagen hast, umsetzen. Aber bei den wenigen Einträgen... Deine meisten Deiner Vorschläge kommen wohl in dem großen Update in der Version 1.3. In der 1.3 möchte ich die Lesegeschwindigkeit mit einem Trick beschleunigen. Mal sehen, ob das geht. Und GUI wird, dank Deiner bzw. Eurer Vorschläge ab 1.3 wird komfortabler. Ich konzentriere mich, die "Fehler" in der 1.2 zu beseitigen.
[Nachtrag]
Der Backuppfad ist absichtlich so gelegt, damit man die fehlende Datei besser finden kann. Die Gefahr, dass der Pfad länger als 255 Zeichnen wird, besteht. Deine Überlegung diesbezüglich ist ein sehr guter Ansatz, den ich mir auch sorgfältig durch den Kopf gehen lasse.
[\Nachtag ENDE]

CU! Und beste Grüße an die DP!
Go2EITS
2. Nachtrag:
Zitat:

"Die Methode SetCursor setzt den Cursor auf das erste Zeichen vor oder an der Position Pos, das bearbeitet werden kann, und wählt es aus."
In einer Edit! Interssant. Aber das Einschalten der Sanduhr geht mit chHourglas; zurück mit CrDefalut: Siehe unten: (Damit nicht jemand verzweifelt ist und den obigen Code irrtümlich kopiert:
Delphi-Quellcode:
Cursor:=crHourGlass; // oder
Cursor:=crDefault;
3. Nachtrag:
Setzt den Mauscursor für die ganze Form auf CrHourglas und retour:
Delphi-Quellcode:
Screen.Cursor := crHourGlass;
try
  // nach was
finally
  Screen.Cursor := crDefault;
end;

Go2EITS 6. Okt 2006 15:27

Re: Delphi Cleaner 1.2 [Build 6] Läuft auch v. CD/Stick/Disk
 
Ich habe Euch das neue Update Build 6 hochgeladen; ich denke, da sind durchaus interssante Sachen für Euch hinzugekommen.

Das Prüfen, ob mein Programm von einem CD-Rom oder Diskettenlaufwerk gestartet worden ist, war einen harte Nuss. Aber ich glaube, es klappt so weit. Damit kann man von Bart CD seinen Rechner aufräume.
Es müßte auch ein einem Stick mit eingeschalteten Schreibschutz gehen.
Sonst sind nachfolgende Neuerungen zusammengefasst.

================================================== ============
Version: 1.2 Build 6 vom 06.10.2006
================================================== ============
- Programm ist von schreibgeschütztem Medium und damit auch von CD/Diskette/USB-Stick startbar.
- Bei Backup wird zuvor geprüft, ob gesichert werden kann:
Schreibschutzüberprüfung und ob genügend auf Platz am Datentäger vorhanden ist.
- Anzeige, wie groß das Backupverzeichnis ist.
- Abbruch des Programmes bei der Suche wird abgefangen
- Code auf Schnelligkeit optimiert

So prüft mal, ob alles passt und meldet bitte mal als kleines Dankeschön die gefundenen Files/MB.
Viel Vergügen beim Aufräumen! :thumb:
Go2EITS

oki 6. Okt 2006 17:17

Re: Delphi Cleaner 1.2 [Build 6] Läuft auch v. CD/Stick/Disk
 
Hi go2eits,

ich hab gerade dein Build6 getestet. Dabei ist mir folgendes aufgefallen:

- Das Menü liefert keine Hint's
- Click auf Hilfe -> tut nichts
- was ist DPH? (war mutig -> bei Delphipraxis gelandet; vorher wissen ist schöner)

Nach einem Suchdurchlauf wollte ich das Programm beenden. Da kamm die Aufschrift das ich die Suche erst beenden mus. -> hat aber nicht mehr gesucht. -> Klick auf Suchen gab Exception (000000000)! Alle Button's mit ansicht wie bei Suche.

Hab dann alles mit TaskManager abgeschossen.

Tut mir leid für die schlechten Nachrichten, lief schon mal besser.

Gruß oki

Balu der Bär 8. Okt 2006 21:33

Re: Delphi Cleaner 1.2 [Build 6] Läuft auch v. CD/Stick/Disk
 
Hallo,

irgendwas stimmt da noch nicht. Ich hatte den Pfad welchen Ordner dein Programm durchsuchen soll manuell gesetzt (C:\Programme\Borland\). Nach einer realtiv kurzen Suche wurde mir allerdings keine Datei angezeigt. Danach habe ich die ganze Festplatte durchlesen lassen, und auch dort wurde mit im Borland-Ordner nur eine kleine *.bak angezeigt, obwohl sich viel mehr *.bak Dateien in weiteren Unterordnern befinden. :gruebel:

Viel schlimmer bis auf die Tatsache das nichts gefunden werden konnte fand ich, dass ich dein Programm nicht mehr beenden konnte. Weder über das Schließen-Icon, noch über deinen Beenden-Button und auch per Hauptmenü ging es nicht. Dein Programm ist aber nicht abgestürzt oder ähnliches, man konnte es weiterhin bedienen, jedoch nicht beenden. Also blieb mir nichts anderes übrig als es mit dem Taskmanager zu beenden.

Btw, du solltest wirklich noch das MainMenü etwas überarbeiten.

Go2EITS 9. Okt 2006 16:17

Re: Delphi Cleaner 1.2 [Build 6] Läuft auch v. CD/Stick/Disk
 
@oki
- Das Menü liefert keine Hint's
- Click auf Hilfe -> tut nichts
- was ist DPH? (war mutig -> bei Delphipraxis gelandet; vorher wissen ist schöner)
Ich kriege keine Hints im Menue bei mir rein. Es funktioniert irgendwie nicht. :gruebel:
Hilfe? ja nur wenn Du die 7z hast. Da ist die Hilfe drin. Die *.exe ist nur die Exe ohne Hilfe.
DHP = Delphi Praxis Hauptseite! :-D
Abgestürzt? Was für Einstellungen hattest Du denn?

@Balu der Bär
Vielen Dank für das Testen.
Es werden nur Bak-Dateien angezeigt, die reinen Text haben. Aus Sicherheitsgründen werden binäre Bak-Dateien werden global zum Löschen angeboten, bzw. angezeigt. Die Suche kannst Du über "Suche beenden" abbrechen. Hast Du die Build 6? wenn nicht, lade Dir das letzte Update runter. Aber in Zukunft gibt es die Option: "Auch binäre Bak-Dateien anzeigen", wenn man benutzerdefinierte Pfade verwendet.

Zitat:

Viel schlimmer bis auf die Tatsache das nichts gefunden werden konnte fand ich, dass ich dein Programm nicht mehr beenden konnte. Weder über das Schließen-Icon, noch über deinen Beenden-Button und auch per Hauptmenü ging es nicht. Dein Programm ist aber nicht abgestürzt oder ähnliches, man konnte es weiterhin bedienen, jedoch nicht beenden. Also blieb mir nichts anderes übrig als es mit dem Taskmanager zu beenden.
Ich habe mich bemüht, Deinen Fehler (Build 6) zu reproduzieren. Es gelang mir leider nicht. :gruebel: (Test ohne Eintrag in der Liste, Test mit Einträgen, nur .bak markiert oder alle markiert, Pfad aud Borland gelegt, einzelnes Laufwerk probiert.).
1. Probiere bitte daher die neueste Version (Build 6)

Wenn ein Fehler doch auftreten sollte, sei so nett und teile mir doch nachfolgende Fragen mit:
Prog in VM?
Welche Einstellungen hast Du im Programm vor dem Fehler vorgenommen?
Konntest Du den Fehler wiederholen?
Ist die Umgebung XP oder Windows?
Hast Du Einträge in der Liste oder keine.
Hast Du das Programm auf Diskette, Stick, CD gestartet?
Schreibschutz z. B. Stick während des Betriebes geändert?

Nur so könnte ich gezielt Deinen Fehler reproduzieren und schnell beseitigen.

Ich bin an der Überarbeitung generell dran. :coder2:

[Nachtrag:] Ich vermute fast, dass die Abfrage, ob ich mich auf einem beschreibaren Datentäger befinde, der Grund für den Absturz auf einigen Rechnern ist. Nicht so einfach zu lösen, wenn es bei mir geht. [Nachtrag Ende]

Beste Grüße
Go2EITS

Balu der Bär 9. Okt 2006 16:25

Re: Delphi Cleaner 1.2 [Build 6] Läuft auch v. CD/Stick/Disk
 
Zitat:

Zitat von Go2EITS
1. Prog in VM?
2. Welche Einstellungen hast Du im Programm vor dem Fehler vorgenommen?
3. Konntest Du den Fehler wiederholen?
4. Ist die Umgebung XP oder Windows?
5. Hast Du Einträge in der Liste oder keine.
6. Hast Du das Programm auf Diskette, Stick, CD gestartet?
7. Schreibschutz z. B. Stick während des Betriebes geändert?

1.) Ja
2.) Keine, alles bei den Standardeinstellungen gelassen
3.) Ich werde gleich mal gucken
4.) Windows XP :P
5.) Ja, die eine einzige *.bak die nach der systemweiten Suche gefunden wurde
6.) Nope
7.) Nope

//Edit: Ja es war Build 6.

Sunlight7 9. Okt 2006 16:34

Re: Delphi Cleaner 1.2 [Build 6] Läuft auch v. CD/Stick/Disk
 
Zitat:

Zitat von Go2EITS
Die Änderungen in dieser Version bassieren hauptsächlich auf
die freundliche Unterstützung von Sunlight7 :thumb:

Ach danke!
Aber da werd ich gleich :oops:

Gleich mal die neue Version testen.

Balu der Bär 9. Okt 2006 16:36

Re: Delphi Cleaner 1.2 [Build 6] Läuft auch v. CD/Stick/Disk
 
Jab Fehler ist reproduzierbar:

Ich starte dein Programm (Build 6). Mache bei "Nur eigenen Path durchsuchen" den Haken rein, klicke danach in das Edit und wähle den Ordner "C:\Programme\Borland" aus. Danach klicke ich auf "Starte suche". Es wird keine Datei gefunden. Also nehme ich den Haken bei "Nur eigenen Path durchsuchen" raus und wähle "C:\" bei "Laufwerke durchsuchen" aus. Nach der Suche wurde wieder keine Datei gefunden. Jetzt kann ich machen was ich will, dass Programm lässt sich nur noch mittels Taskmanager beenden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:39 Uhr.
Seite 2 von 3     12 3      

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