[Program] Duplicate Checker
Tänkte här om dagen att jag skulle formatera min dator, men upptäckte att jag hade massa säkerhetskopior på gamla filer och så som jag inte visste om jag behövde ha kvar eller inte. I alla fall var det 30 gb och upp emot 60 000 filer som jag skulle behöva gå igenom, vilket inte riktigt föll mig på läppen så jag kom på idéen att göra ett program som skulle göra det åt mig. Då jag aldrig har programmerat med windows APIn (bara console program) så tänkte jag att det var ett bra tillfälle att lära sig det ...
Och nu är första betan klar och den funkar ganska bra. Testade även och köra det mot mina 30 gb av filer och funkade då utmärkt, restade bort precis det den skulle och inte en fil mer...
Men jag skulle gärna har lite kritik...
Så här använder man programmet:
Den har tre grundfunktioner... Första är att den kontrollerar en mapp mot en annan referens mapp. Låt säga att du har tagit massa säkerhetskopior på massa filer och har orginalen kvar men vet inte vilka av säkerhetskopiorna du har bland orginalen... då kan du sätta orginalen som referens så kollar den säkerhetskopiorna om de redan finns i referensen och tar bort dom som gör det.
Andra är att den kollar en mapp för dubbletter, låt säga att du har ett väldigt oordnat musikbiblotek och tror att det är många låtar det finns dubbletter av... så kollar den igenom och tar bort en av dom det finns två av.
Tredje funktionen är en version av de två andra (man får välja vilken) men med skillnaden att istället för att ta bort dubbletterna lägger den dom i en tabell så får du välja vad du ska göra med dom sen...
För varje grundfunktion kan du välja vissa parametrar, programmet jämför alltid filernas MD5 checksumma och storlek, men sen kan du välja till om den även ska jämföra Namn (inklusive filändelse), Filändelse, Namn på mappen filerna ligger i, och skapat datum...
Det går att köra flera av grundfunktionerna samtidigt (t.ex. kolla med referens och dubbletter inom mappen samtidigt). Om man kör med flera grundfunktioner så tar den dom i den ordningen jag beskrev dom, först jämför mot referens, sen mot egna mappen sen sist i tabellen.
Ett "schema" som jag kommit på är ganska bra är "Ta bort alla filer som är lika med referens jämför även namnet", "ta bort alla filer som har dubbletter inom mappen jämför även namnet", och "lägga till alla filer som stämmer med referensen enbart på checksumman och storleken i tabellen".
Hmm, praktiskt hur ni kör programmet, välj valen i menyn till höger... välj mappen som ska testas och, om det krävs, referens mappen... tryck på "start checking"... (Est. Time left funkar inte så bra än som ni kanske märker) Om ni har valt "index" (dvs. lägga till filerna i tabellen) så funkar det ganska logiskt... ni markerar filerna i checkboxen och väljer vad ni vill göra med dom på knapparna längst ner. lilla knappen på varje rad öppnas filen som den här filen jämfördes mot (och ansågs lika) och dubbelklickar du på en rad (utom på checkboxen eller knappen) så öppnar du filen som raden motsvarar. (ni kan även markera filer, så raden blir blå, och högerklicka och göra saker, men det funkar inte så bra än...)
Jag har lagt till ganska många såna tool tips så det förklarar lite bättre, men, som sagt, det är mitt första windows program så jag har lite kvar o lära till klockrena UIn.
Screenshot:
Nerladdning: http://www.poker-solitaire.com/DChecker/DuplicateChecker.exe
(Ni måste ha .NET 2.0 Frameworket installerat, finns för nedladdningar här http://www.microsoft.com/downloads/details.aspx?FamilyID=0856... )
OBS! Eftersom detta inte är färdigutvecklad (därmed risk för buggar) och folk kanske gör fel då UIn inte är så övertydlig och jag inte vill ha sura sweclockare som har fått halva hårddisken raderad har jag i den här versionen tagit bort delete funktionen (den kör som vanligt ända tills den egentligen skulle ta bort filen och då gör den inget) så programmet kan inte ta bort några filer (även om den säger att den har gjort det) så det behöver ni inte oroa er för, men även fast det absolut inte borde hända något så ansvarar ni själva över användandet av programmet.