EasyDelIt

    • Beta

    Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von Skybird.

      Name des Programms:
      EasyDelIt 1.0.0.2

      Beschreibung:
      Dieses Programm hilft bei Löschen mehrerer Dateien. Der User kann Pfad und Daten-Typ angeben, der gelöscht werden soll und erhält eine Übersicht über die gelöschten Daten.
      Es kann auch eingestellt werden, ob 1. die Dateien direkt komplett gelöscht werden sollen oder 2. in den Papierkorb verschoben werden und 3. ob alle Unterverzeichnisse durchsucht werden und dort enthaltene Dateien, die dem Datei-Typ entsprechen, gelöscht werden.

      Screenshot:


      Verwendete Programmiersprache:
      Visual Basic 2008

      Systemanforderungen:
      .NET Framework 3.5

      Download:
      Programm (192 KB)

      Lizenz/Weitergabe:
      Freeware; OpenSource

      Anmerkungen:

      - Das Design, das im Screenshot dargestellt wird, ist nur mein eigenes XP-Theme. Das Programm sieht deshalb auch bei jedem Theme / Windows (etwas) anders aus (bei Vista / 7 dann auch Aero).
      Auf Wunsch kann ich aber auch ein eigenes Design einrichten.
      - Bei Fragen, Ideen, Bugs oder sonst einem Vorwand, um zu schreiben, schreibt (bitte)! :)


      Änderungen:

      v. 1.0.0.2
      - Frage, ob bei "*.*"-Typ wirklich gelöscht werden soll
      - "*.*"-Typ funktioniert nun endlich! (Fehler behoben)
      - ComboBox kann nicht mehr leer stehen (Fehler behoben)
      - Pfad-Anzeige kann nicht mehr manuell umgeschrieben werden -> FolderBrowser! (möglichen Fehler behoben)
      Dateien
      • EasyDelIt.rar

        (27,44 kB, 90 mal heruntergeladen, zuletzt: )

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „X-Zat“ ()

      hi
      ich habs noch jetzt nicht getestet
      hab mir aber gedacht
      eine Funktion "Sicheres Löschen" wäre auch nicht schlecht
      dass die datei vorher paar mal überschrieben wird und danach gelöscht wird
      fx
      Hey, habs für dich mal getestet..
      - Es wurde ein Fehler festgestellt, wenn Dateityp Leer ist.
      - Wenn ich eine Datei, ohne Extension (ohne .txt o.ä.) dahinter habe, wird der nicht gelöscht, obwohl ich *.* ausgewählt hab.

      Sonst ists okay sag ich mal.
      P.S.: der Log sollte mMn jedesmal geleert werden, wenn auf löschen geklickt wird.
      "Wenn jemand in einem Betrieb unverzichtbar ist, dann ist dieser Betrieb falsch organisiert." - Roberto Niederer
      Danke für's testen :)

      Ich wollte nur kurz anmerken, dass ich erst seit ca. 3 Monaten mit VB 2008 programmiere, etliche kleine Tools aus Langeweile und/oder tatsächlichen Bedarf erstellt habe und das hier mein erstes (wenn auch nicht interessanteste) öffentliches Tool ist.

      @ deepack:

      Ich hab' ne wage Ahnung, was du mit sicherem Löschen meinst, kann mir darunter aber nichts konkretes vorstellen:

      Soll ich die Datei erst "leeren" und dann dutzende Male mit irgendwelchem Datenmüll immer und immer wieder zukleistern?
      Oder was meinst du mit sicherem Löschen? Denn deine Idee gefällt mir, wäre gut, sie einzubauen!

      @ milaim:

      Den ersten Fehler werde ich dadurch beheben können, dass ich einfach eine "DropDownList" anstatt "DropDown" einstelle. Dann darf der Dateityp eigentlich nicht leer sein. - Ansonsten nochmal Kontrolle bevor gelöscht wird.

      Beim zweiten Fehler werde ich meine Nase mal wieder in Bücher, Foren und Online-Hilfen stürzen müssen...
      Mein System in dem Programm ist ziemlich simpel, nur scheint es *.* nicht interpretieren zu können... Selbst Dateien mit bekannten Endungen löscht er nicht...

      Werde mich nochmal dahinter setzen :)

      MfG,
      X-Zat / Momo

      X-Zat schrieb:

      Ich hab' ne wage Ahnung, was du mit sicherem Löschen meinst, kann mir darunter aber nichts konkretes vorstellen:

      Soll ich die Datei erst "leeren" und dann dutzende Male mit irgendwelchem Datenmüll immer und immer wieder zukleistern?
      Oder was meinst du mit sicherem Löschen? Denn deine Idee gefällt mir, wäre gut, sie einzubauen!
      Ich nehm mal an deepack meint sowas: de.wikipedia.org/wiki/Gutmann-Methode
      Oha...
      Da treffen zwei Welten aufeinander: Meine Begeisterung für's Programmieren und meine schlechte Physik-Note.

      Wenn mir jemand helfen könnte oder einen Ansatz hätte, wie ich das umsetzen kann, dann würde ich so eine Funktion direkt einbauen. Aber das sieht alles nicht gerade einfach aus...
      Und leider habe ich keine Idee, wie ich das anstellen soll.
      Ich vermute, folgendes würde nicht funzen:

      For x = 1 to 35 step 1
      '1. Datei-Inhalt löschen

      For y = 1 to 1000 step 1
      '2. Datei mit mehreren tausend Zufalls-Zahlen bepflastern
      Next
      Next

      Help?

      MfG,
      X-Zat / Momo

      EDIT:

      Ok, ich habe versucht, es ein wenig umzuschreiben und habe als Ergebnis nun eine ziemlich lange If-Struktur. Aber komischerweise will es einfach nicht funktionieren.
      Sogar die Eingabeaufforderung kapiert, was ich machen möchte, aber VB scheitert. - Ich arbeite weiter dran!

      EDIT2:

      So, habe den Fehler behoben (1. "Combobox1.SelectedItem.ToString" anstatt "ComboBox1.SelectedItem", 2. "*.*" ohne Leerzeichen (zwischenzeitlich "*.* (Alles)").
      - Erst-Beitrag geändert mit den neuen Daten

      Gutmann-Methode verstanden - Jetzt geht's an die Umsetzung!

      Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von „X-Zat“ ()

      Sorry für den Doppelpost, aber zuviele Edits sehen nicht nur nicht gut aus sondern auch unprofressionell ;).

      Nein, zurück zum Thema:

      Habe die Gutmann-Methode eingebaut! (Nachdem ich Google mit meinen Fragen regelrecht gefoltert habe...):

      1. Erkennen, auf welchem Datenträger gelöscht wird & freien Platz berechnen
      2. For-Schleife 0 to 27
      3. While-Schleife bis FreierSpeicher <= 32 (Bytes)
      -> StreamWriter(Datei, "00000000", true) (8 Bytes)
      4. While-Schleife Ende
      (4.1. automatisch For-Schleifen-Wert += 1)
      5. For-Schleifen Ende
      6. Ende

      Ich habe mal die Zeit berechnet (mit meinem System):

      Zeit für ~14MB = 60 Sekunden
      D.H. Zeit für 1 GB = 1024 / 14 * 60 = 4388 Sekunden
      D.H. Zeit für 1 GB in Stunden = 4388 / 3600 = 1 Stunde, 12 Minuten

      Man kann also ganz simpel rechnen:

      Benötigte Zeit = 1,25(DauerProGB) * AnzahlGB * 27(Durchgänge)

      Insgesamt ist diese Methode vielleicht gründlich (bis auf 32 Bytes genau), dafür aber sehr, sehr langwierig... Außerdem bekommt das System keine Rückmeldung vom Programm mehr...

      Lohnt es sich, das weiter auszubauen?

      MfG,
      X-Zat