Program do tworzenia kopii zapasowej

Nasz program będzie dosyć uproszczony, nie będę pisał jak zrobić Notifyicon albo jak zrobić aby program odpalał się przy starcie Windowsa bo już o tym pisałem na forum, można do programu zrobić automatykę np: kopia robiona jest w określony dzień tygodnia, miesiąca o określonej godzinie. Wszystko to można znaleźć na blogu dlatego zrobimy sobie tutaj tylko program który będzie robił kopie. Podstawowym zasobem będzie biblioteka której będziemy potrzebować. Można ją ściągnąć tutaj: Ionic.Zip więcej o bibliotece można się dowiedzieć pod adresem : http://dotnetzip.codeplex.com biblioteka jest open sourcowa ale warto przeczytać licencję. Więcej o możliwościach biblioteki można znaleźć w dziale przykładów dotnetzip’a http://dotnetzip.codeplex.com/Examples  Wersja dostępna na tym wpisie to wersja 1.8 ponieważ z tą 1.9 miałem kilka problemów. Dobra zaczniemy od dodania Referencji. Tworzymy nowy projekt, rozkładamy jego elementy zgodnie z tabelą poniżej:

Rodzaj elementu Nazwa elementu Ustawienia
Form Form1 Size: 763; 342
Text: Tworzenie kopii zapasowej
TextBox Scieszka_folderu_docelowego Size: 515; 20
Location: 212; 273
Name: Scieszka_folderu_docelowego
ReadOnly: True
Button Dodaj_Folder Size: 193; 23
Location: 13; 13
Text: Dodaj folder
Name: Dodaj_Folder
Button Dodaj_plik Size: 193; 23
Location: 13; 42
Text: Dodaj plik
Name: Dodaj_plik
Button Wykonaj_kopie Location: 13; 167
Enabled: false
Size: 193; 23
Text: Wykonaj kopie
Name: Wykonaj_kopie
Button Dodaj_folder_docelowy Name: Dodaj_folder_docelowy
Size: 193; 23
Location: 12; 238
Text: Folder docelowy
Button Usun Name: Usun
Location: 12; 267
Size: 193; 23
Text: Usuń z listy
TextBox haslo Name: haslo
Location: 13; 118
Size: 192; 20
ListView Lista_plikow Location: 212; 12
Size: 515; 249
Widok: Details
Dodano jedną kolumnę:
-Name: ColumnHeader1
-Text: Pliki i foldery
-Width: 489

Powinno to wyglądać tak jak na zdjęciu:

kopia_bezpieczenstwa1

aby dodać referencje klikamy prawym przyciskiem myszy na nasz projekt i wybieramy:

w VS2013  Dodaj>>Reference…

kopia_bezpieczenstwa2

 

W VS2012 Dodaj Odwołanie….

kopia_bezpieczenstwa2,5

Teraz wybieramy „Przeglądaj” i znajdujemy miejsce gdzie umieszczony jest nasz plik „Ionic.zip”

kopia_bezpieczenstwa4

 

kopia_bezpieczenstwa5

kopia_bezpieczenstwa3

Otwieramy teraz kod naszego programu i importujemy bibliotekę:

Teraz możemy korzystać z naszego zasobu. Najpierw dodamy aktywność przycisków „Dodaj folder” i „Dodaj plik” Tworzymy do nich uchwyt (klikając na każdy przycisk dwukrotnie). Najpierw musimy zainicjować dwie ogólnie dostępne listy:

W jednej będziemy trzymać ścieżki do naszych plików a w drugim ścieżkę do pliku docelowego kopii (miejsce trzymania spakowanych plików). Teraz odpowiednio dla przycisku dodającego plik kod wygląda tak:

Pętla jeśli plik będzie wybrany doda jego ścieżkę do listy plików i do ListView. Kod do dodawania folderów wygląda tak:

Działa on identycznie jak poprzedni. Obie metody działają używając Dialogów dodanych do formy

kopia_bezpieczenstwa6

Teraz dodamy kod do przycisku wybierającego folder docelowy naszej kopii:

Ścieżka pliku docelowego będzie widoczna w textboxie pod listą plików.

Zajmiemy się teraz kodem usuwającym pliki z listy wygląda on tak:

Kod ten najpierw usunie z listy ścieżkę do pliku następnie wyczyści nam naszą listę plików i załaduje ją ponownie na podstawie tego co znajdzie w listview.

Teraz stworzymy kod który będzie nam pakował te wszystkie pliki, wygląda on tak:

Teraz można wypróbować nasz program. Efekt przedstawiam na filmie i na zdjęciu:

kopia_bezpieczenstwa7

Nasz plik zip można zabezpieczyć hasłem i tylko osoba znająca hasło będzie mogła go otworzyć. Jak to wygląda można zobaczyć na filmie:

Pełen projekt do pobrania można dostać tutaj: kopia_zapasowa

Permalink do tego artykułu: https://visualmonsters.cba.pl/program-do-tworzenia-kopii-zapasowej/

Dodaj komentarz

Twój adres email nie będzie publikowany.