Hide Me Fatty - prosty program do ukrywania plików na partycjach z FAT32

Hide Me Fatty - prosty program do ukrywania plików na partycjach z FAT32
stryku
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 607
0

Cześć,

wziąłem się za pewien projekt. Chcę się do niego przyłożyć bo chcę mieć co pokazać na rozmowie o staż czy jakieś praktyki. <ort>Dla tego</ort> też tworzę ten wątek i proszę w miarę możliwości o code review. Wiem, że tego dużo, ale za każdą konstruktywną krytykę będę wdzięczny.

Teraz trochę więcej o projekcie

Hide Me Fatty to program do ukrywania plików na partycjach z FAT32. Pliki są ukrywane w wolnym miejscu za plikami na partycji.

Sposób działania

Wybieramy pliki do ukrycia. Potem wybieramy za jakimi plikami na partycji chcemy je ukryć. Na podstawie wybranych plików na partycji obliczamy ziarno, które posłuży do pomieszania plików do ukrycia. No i je ukrywamy.

Znajdowanie działa bardzo podobnie, więc nie będę opisywał.

Trochę o kodzie

Od razu zaznaczam, że taki main jest przejściowy. Cały, razem z tym wpisywaniem po kolei ścieżek do plików itp. Służy on za tymczasowy interfejs, żeby program działał. Mam zamiar w najbliższym czasie dorobić GUI w QT, ale najpierw chciałem, żeby była funkcjonalność czyli ukrywanie i znajdowanie.

Nie będę też dokładnie opisywał wszystkich klas i metod bo to bez sensu.

Cała magia dzieje się w

Kopiuj
FileHider.cpp::FileHider::hideFiles() 

i FileHider.cpp::FileHider::restoreMyFiles()

Kopiuj
. Tam są przekazywane wszystkie ścieżki i to w sumie jest cały silnik.

**__Używanie__**

Dużo jest napisane w README po ściągnięciu. Jest też przykład jak się chowa i jak znajduje pliki, więc nie będę wprowadzał redundancji.

**__Platforma__**

Program działa pod linuxem. Testowałem go na 64-bitowym ubuntu 14.04. Szczerze powiem, że na 32-bitowym nie uruchamiałem, ale w najbliższym czasie mam zamiar. Jeżeli jednak ktoś chcę to będę wdzięczny za info czy jest ok czy nie.

**__Testy__**

No właśnie. Jeżeli ktoś będzie miał chwile czasu i starego pendrive'a to będę wdzięczny za każde uruchomienie programu. Jeżeli już ktoś się zdecyduje to niech uruchamia wersję z folderu "release-logs". Produkowane tam są logi, dzięki którym będzie mi łatwiej znaleźć przyczynę (ewentualnego) błędu. Jak komuś uda się wysypać grubaska (co pewnie nie będzie trudne) to prosiłbym o te logi właśnie :).

**__Znane błędy__**

Póki co wiem o jednym błędzie. 
Gdy chcesz odtworzyć pliki i wybierzesz pliki na partycji, za którymi nic nie ukrywałeś to się posypie.
Naprawię to na następną wersję.

**__Code review__**

Jak pisałem wcześniej będę wdzięczny za każdą konstruktywną krytykę co do kodu. Nawet bardziej mi na tym zależy niż na testowaniu i logach.

**__Linki__**

Repo: https://github.com/stryku/HideMeFatty
Do ściągnięcia: https://sourceforge.net/projects/hidemefatty/

**__TODO__**
-GUI w QT
-Podział na klasy menadżerów systemów plików
-Dodanie obsługi innych systemów plików
-Live cd z programem

**__Changelog__**

v0.3 22.03.15
-Spent hours: 58
-Hiding more than one file
-Can hide files with the same name. Serial number will be added durning restoration.
-Generating logs
-Still console but more user-friendly
-Added licence
-Added readme
-Created git repo

v0.1 04.03.15 
-Hiding single file. Working only if on partition root directory is file, and after file is enough space to hide your file.
stryku
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 607
0

Mały update

Sourceforge usunęło mi projekt bo był niezgodny z ich regułami, więc przeniosłem download jak na razie na gita.

Link do sciągnięcia: https://github.com/stryku/HideMeFatty/releases/tag/v0.3.1

stryku
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 607
0

Po walce ze statycznym linkowaniem bibliotek wypuściłem kolejną wersję grubaska. v1.0

W końcu można w miarę normalnie z niego korzystać.

Link do ściągnięcia: https://github.com/stryku/HideMeFatty/releases/tag/v1.0

Mało kto czyta README, więc jeżeli już ktoś to ściągnie to:

  1. Nie trzeba uruchamiać całego programu z uprawnieniami roota
  2. Trzeba zrobić chown pliku partycji. Tego w /dev. Np:sudo chown stryku:stryku /dev/sdb1 . Więcej w README
  3. Nie uruchamiamy programu bezpośrednio tylko robimy:
Kopiuj
 cd /sciezka/gdzie/program/jest/sciagniety/HideMeFatty-v1.0
./start.run

Problem był taki, że Qt hardkoduje ścieżki do fontów, więc trzeba udostępniać program razem z nimi. I dodatkowo napisać ten mały skrypt.
4. Po kliknięciu "Start hiding files" lub "Start restoring files" trzeba poczekać trochę zanim to się wszystko zrobi

Changelog nie jest długi, ale było to moje pierwsze starcie z Qt, więc się trochę przedłużyło.

Okazało się też, że w programie było pełno błędów. Teraz mam nadzieję już ich nie ma.

v1.0 date: 18.05.15
-Spent hours: 83
-Qt GUI
-Fixed bugs

EDIT

Proszę też o opinie, jeżeli ktoś to odpali, czy czcionka w programie nie jest za mała?

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.