SafeGroup

Pełna wersja: OA Blocklist Manager
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Stron: 1 2 3 4 5 6 7 8

Eugeniusz

Pracuję nad mechanizmem aktualizacji blocklist w Online Armor.
Producent nie chce zintegrować blocklist OA z blocklistami EAM, a szkoda, bo to całkiem pożyteczna funkcja.
Na razie projektuję interfejs, dodaję podstawowe funkcje oraz kształtuję ogół programu. Niestety, jest kilka problemów:
#1: Online Armor przechowuje jedynie informacje o lokalizacji pliku blocklisty i nic z nim nie robi. Jeśli użytkownik zapisze blocklistę na pulpicie, doda do OA i skasuje ją, to OA głupieje - blocklista jest na liście, ale nie działa. Spróbuję dogadać się z producentem żeby to rozwiązać.

#2: Online Armor coś nie chce współpracować z aplikacjami napisanymi w Delphi - interfejs po prostu nie działa. Trzeba wyłączyć OA lub dodać folder z plikiem OABU do listy wykluczeń.

#3: Stworzyłem funkcję która pobiera lokalizację instalacji OA (na podstawie wartości w kluczu należącym do OA), na podstawie której mogę wykryć wersję OA. Niestety, OA blokuje dostęp do tego klucza (spokojnie, wiem jak to ominąć).

#4 Blocklisty w OA mają dziwną strukturę...

Co chcę mieć w updaterze? Możliwość dodawania/usuwania blocklist, aktualizowania ich, może dodawania i usuwania pojedynczych wpisów (raczej nie - OA ma już tę funkcję).
Aktualizacja powinna następować po ustalonym harmonogramie. Program domyślnie powinien posiadać paczkę podstawowych blocklist: CoU, Blocklist pro - trzeba to obadać. Poczekamy, zobaczymy co na to Emsisoft.

Program na dzień dzisiejszy ma zbudowany interfejs, kilka podstawowych kontrolek sterujących, funkcji jako takich na razie brak - wykrywana jest tylko wersja OA.
Aplikacja będzie darmowa, ewentualne na licencji donationware lub

[Aby zobaczyć linki, zarejestruj się tutaj]

Wink.
Program jest eksperymentalny - nie do użytku Wink.

[Aby zobaczyć linki, zarejestruj się tutaj]

tłu... ja mam wersję deweloperską oa, więc nie dziwcie się że taki dziwny numer.
Na razie proszę tylko o komentarze: łał fajnie, ale nędza - porzuć to, cieszę się że takie coś powstanie etc.
Bardzo ciekawy programik, jednak na twoim miejscu napisałbym do Emsisoftu czy aby nie planują wprowadzić funkcji autoktualizacji blokowanych IP w jednej z następnych wersji OA.

Eugeniusz

Tego właśnie nie chcą zrobić. Od tego będzie ten apps Smile
Życzę powodzenia, super pomysł ;-)
Eugeniusz napisał(a):Tego właśnie nie chcą zrobić. Od tego będzie ten apps Smile

Czyli inicjatywa jak najbardziej pozytywna. Trzymam kciuki za jej powodzenieSmile

Eugeniusz

Obmyślam sposób działania takich blocklist, prawdopodobnie będzie to tak wyglądało:
1. Będę "wspierał" kilka blocklist, które będą instalowane razem z programem.
2. Każda blocklista będzie posiadała sygnaturę wersji, która będzie porównywana z informacjami pobieranymi z serwera.
3. Jeśli zostanie wydana nowa wersja, menedżer zaktualizuje wybraną blocklistę.
Inaczej rozwiązać się tego chyba nie da. Na razie jednak wszystko zależy od deweloperów OA - zaproponowałem utworzenie dodatkowego folderu gdzie OA jest zainstalowany, żeby można było operować na blocklistach bez ingerencji użytkownika.
//muszę poszukać jakiegoś darmowego serwera, chyba tylko republika będzie OK None
A nie można wykorzystać takiego Dropboxa czy innego SugarSync jako serwera?

Eugeniusz


Dodano: 22 sty 2012, 16:37

Zaczynamy fazę alfa.
Wersja: 0.0.1.2
Bardzo proszę użytkowników o przetestowanie tej aplikacji, zwłaszcza na nowych systemach (Vista,7). OA nie musi być zainstalowany (ale warto go mieć).

Instrukcja obsługi

[Aby zobaczyć linki, zarejestruj się tutaj]

i wypakuj pliki programu.
Uruchom oamanager.exe (w nowych systemach powinien pojawić się monit UAC - na razie to nie jest chyba potrzebne, ale skoro jest...) i rób co chcesz Smile.

Co działa:
√ wykrywanie wersji Online Armor
√ wielojęzykowy interfejs (pliki lokalizacyjne nie są udostępnione)
√ sprawdzanie aktualizacji blocklist
√ minimalizacja do zasobnika (domyślnie)
√ zamykanie do zasobnika (można wyłączyć)

Co nie działa:
√ wybór mirrora - niekatywny
√ samobrona
√ autostart
√ program zapętla się, nie reaguje na dopiero co pobraną wersję blocklist
√ harmonogram (te comboboxy jakieś zbugowane są)
√ wyłączanie powiadomień

Znane błędy:
√ dziennik aktualizatora nie jest w trybie do-odczytu, można zmieniać rozmiar formy
√ okno aktualizatora czasami za szybko znika
√ problemy z serwerem
√ kilka wycieków pamięci

Zapraszam do testów. Zna koś jakiś zwyczajny, darmowy serwer WWW?
Dobrym pomysłem jest dodanie folderu z plikami programu do listy wykluczeń OA .
Coś mi pobieranie nie działa...

Eugeniusz

Sprawdź czy w katalogu temp masz pliki blocklist1.txt oraz version.ini
Oj chyba będę musiał stworzyć jakiś system logowania zdarzeń.
BTW program ma zadatki na trojana - możliwe jest zdalne pozbawienie użytkownika używanych blocklist.


Dodano: 23 sty 2012, 16:43

Aplikacja poza aktualizowaniem blocklist dla OA będzie też aktualizować pliki hosts.
Eugeniusz napisał(a):Aplikacja poza aktualizowaniem blocklist dla OA będzie też aktualizować pliki hosts.

A jak z ilością wpisów w pliku hosts? Rzędu?

Eugeniusz

Około 17 tysięcy.
podobno jak jest bardzo dużo wpisów w hosts to cały system się zamula przy i 17k może być to odczuwalne

Eugeniusz

Trzeba zmienić niektóre ustawienia Windows, wtedy jest OK.
//instalator będzie wprowadzał owe zmiany.
zord napisał(a):podobno jak jest bardzo dużo wpisów w hosts to cały system się zamula przy i 17k może być to odczuwalne

Właśnie dlatego zapytałem Smile

Eugeniusz

Tu możesz poczytać:

[Aby zobaczyć linki, zarejestruj się tutaj]

Tymczasem czas na 0.0.0.1.10 (alfa 2).
Zmiany:
√ zmiana nazwy na OA Blocklist Manager
√ zmiany w menu głównym, kilka nowych etykiet (data ostatniej aktualizacji)
√ zmiany w oknie ustawień (nie można zmienić częstotliwości aktualizacji - tj. będzie można, ale w rejestrze).
√ wykrywanie wersji aplikacji (okno o programie)
√ aktualizowanie blocklist z traya programu
√ program nie zapętla się (raz zaktualizowany, potem się nie da)
√ "donate" w about - program zaanonsuję na wildersach, jeśli uda się zebrać jakieś sensowne fundusze, to kupię normalny serwer, reszta trafi w ręce twórców blocklist. Potem gdy będę otrzymywał comiesięczne dotacje, 60% będzie szło do nich, 40% na infrastrukturę.
√ notyfikacje (tylko w przypadku update z traya)
√ bug #2 naprawiony (poprawki w oknie aktualizacji blocklist
√ zmiana źródła - obecnie jest to dropbox

Znane błędy:
√ donate nie działa
√ program nie wykrywa że użytkownik zaktualizował blocklisty z traya
√ czasami dymek za szybko znika
√ cała masa funkcji nie działa Sad
Program jest gotowy do jednorazowego pobrania aktualizacji HOSTS do katalogu temp (bez instalowania).

[Aby zobaczyć linki, zarejestruj się tutaj]



Dodano: 25 sty 2012, 12:08

0.0.1.19
√ wyrzucone sprawdzanie wersji OA
√ poprawki w interfejsie okna głównego
√ automatyczne sprawdzanie aktualizacji - 3 minuty od startu
√ wsparcie dla 64-bitowych systemów*

* natywna aplikacja 32-bitowa uruchomiona w 64-bitowym Windows korzysta z innych folderów (%windir%\syswow\). Wprowadziłem niezbędne poprawki które powinny pozwolić korzystać z C:\Windows\system32\drivers\etc Smile.
Czy ktoś, kto używa 64-bitowego windowsa może sprawdzić czy aplikacja tworzy nowy plik "hosts_beta" w C:\Windows\system32\drivers\etc? Proszę uruchomić aplikację, poczekać około 3 minuty lub ręcznie zaktualizować z traya.

[Aby zobaczyć linki, zarejestruj się tutaj]

Niestety ale nie mam dostępu do takiego systemu.

Eugeniusz

Wersja alfa 3 - ostatnia w tej gałęzi.
0.0.1.37:
√ donate w about doskonale działa i wygląda
√ program nie zamyka się do traya - potężna oszczędność pamięci
√ optymalizacja kodu - aplikacja startuje szybciej
√ program powoli wygląda tak jak powinien
√ wywalona zakładka aktualizacji programu
√ ulepszone pobieranie blocklist. Od teraz w prosty sposób mogę zmienić liczbę wspieranych blocklist po stronie serwera. Teraz są np. testowe 3, ale wystarczy że zmienię plik synchronizacji i użytkownik może pobrać sobie nowe blocklisty
√ zapis do innego katalogu - na razie nie działa
√ zlikwidowany potężny wyciek pamięci występujący przy pobieraniu blocklist

Znane błędy:
√ aktualizacja z traya nie działa (wyłączone - jutro włączam)
√ informacje "debugowania" w oknie pobierania
√ dodatkowe etykiety w oknie pobierania
√ sprawdzanie wersji programu nie działa
√ zapętlanie programu

Ufff.... Smile

Upps ta wersja posiada błąd - zapomniałem wyłączyć timera.
A tu minimalne zużycie pamięci przez program w stanie spoczynku:

[Aby zobaczyć linki, zarejestruj się tutaj]



Dodano: 27 sty 2012, 22:00

0.0.2.13:
√ gałąź beta
√ zapisywanie kluczy w rejestrze (wymaga dopracowania)
√ wyrzucony zapis do katalogu
√ program zapisuje pliki do katalogu blocklist
√ ochrona przed przypadkowym skasowaniem plików konfiguracyjnych
√ zmiany w interfejsie: listview działa, buttony z grafikami, menu podręczne, okno o programie,
√ przygotowania pod animację ikony w trayu (podczas aktualizacji)
√ drobne poprawki
√ działająca automatyczna aktualizacja po uruchomieniu aplikacji (z autostartu lub potem)

[Aby zobaczyć linki, zarejestruj się tutaj]

w przyszłości użytkownik będzie mógł dostosować które blocklisty chce pobierać Smile
Programu nie udostępniam - nie ma instalatora tworzącego wartości rejestru (będzie...)
Czekamy niecierpliwie Smile

Eugeniusz

Dobra ludzie, wybieramy które blocklisty wspierać. Na start na pewno będzie plik hosts mvps - hphosts jest jakiś dziwny - ponad 230 tysięcy wpisów.


Dodano: 28 sty 2012, 14:42

Wspomniany instalator -

[Aby zobaczyć linki, zarejestruj się tutaj]

Instalator tworzy nowy klucz rejestru (HKCU/OA Blocklist Manager) a w nim następujące wartości:
hosts protection - pobieranie aktualizacji dla hosts (domyślnie 0)
notifications - pokazywanie powiadomień (1)
interval - harmonogram pobierania (5) - aplikacja teoretycznie powinna sprawdzać aktualizacje co 5 godzin, ale tego nie robi - nie zrobiłem tego na ten moment. Użytkownik może zmienić interwał samodzielnie zmieniając ową wartość. 5 oznacza 5 godzin, 6-6 godzin. Wartość 0 wyłącza automatyczne sprawdzanie.
closing - zamykanie do traya (1)

Aplikacja domyślnie startuje z Windows - nie wiem jak w Inno setup umożliwić użytkownikowi zmianę tego ustawienia. Nie wiem też jak aplikacja zachowa się w 64-bitowych windowsach.

Błędy, które zauważyłem:
√ powiadomienia - trzeba przejść do ustawień żeby się pokazały
√pusta kolumna "type"
√ zamykanie do traya - program nie zmienia wartości w rejestrze
√ ostatnia aktualizacja - głupio zrobione, zrobimy inaczej

Dodałem freeware''ową licencję do instalatora. Według KPCD program opóźnia ładowanie o 0.1s
Tak z ciekawości zapytam, nie mogłeś tych ustawień dać do pliku w folderze instalacji, taki "config.ini"? Zaśmiecanie już zaśmieconego rejestru to zły pomysł, a w takim pliku by nikomu nie przeszkadzało, chyba że jest jakiś powód ku temu.
Stron: 1 2 3 4 5 6 7 8