Czy są takie projekty jak zgranie i wgranie configów softu w Windows i wirtalny serwer FTP?

0

Cześć.

Jak może wiecie nie mam wiele czasu na rozwój swoich zaległych projektów i pomysłów. Zatem by nie tracić czasu chciałem Was zapytać czy istnieją może podobne projektu by skontaktować się z twórcami lub to rozwijać, dopasować do swoich potrzeb i nie wymyślać koła od nowa. A przyznam ze prywatnie takie coś by się mi i pewnie nie tylko mi przydało. Jeśli nie ma nic gotowego to będę w miarę możliwości tworzył. Pierwsze rozwiązanie to raczej w Delphi / Free Pascal. Drugi wolał bym raczej w PHP robić.

  1. Czy jest program który ma bazę gotowych informacji o lokalizacji w Rejestrze Windows i plikach o konfiguracji różnych płatnych i nie programów pod Windows? Chodzi mi o taki automat, już pomijam symulacje kliknięć aby przeprowadzić instalacje po pobraniu może też z automatu. Ale mamy jakieś softy na liście pobranej z sieci, którą rozwija Społeczność Projektu. User pod uruchomieniu dokonuje skanu swojego Windowsa i program wykrywa co ma zainstalowanego. A program pozawala zgrać do zbiorczego formatu albo nawet pojedynczego czy osobnego pliku *.zip dane konfiguracyjne - nie wiem Total Commandera, Win RAR, FAR, Foo Bar, Win AMP, GIMP, Open Office - cokolwiek. Później po reinstalacji można to przywrócić.

Ewentualnie własne pluginy czy jakiś system projektów do tworzenia własnych informacji gdzie są pliki. Ewentualnie jeśli w pliku jak wincmd.ini mamy %COMMANDER_PATH% to jest to podmieniane w odczycie na przykładowo ścieżkę odczytaną z klucza rejestru aby zgrały nam się pluginy. Oczywiście wraz z rozwojem można spróbować dodawać opcje, czy zgrać pluginy, czy tylko config itd. A być może zbędnie chce takie coś na razie jako wprawkę dla siebie tworzyć od zera. Może tutaj ktoś obcykany jak @kAzek czy FP (https://4programmers.net/Profile/49548) by mi pomógł by to ogarnąć fajnie. Bo postawienie serwera czy nawet używanie gotowych modułów do zgrywania danych z rejestru do *.reg i obsługa *.zip czy SQLite po dobrym przygotowaniu się nie jest raczej problemem.

  1. Druga sprawa to wirtualny server FTP. Chodzi raczej o uruchomienie sobie tego dla siebie pod kątem shella na MyDevil.net lub lokalnie na jakimś porcie pod interpreterem PHP. Nie musi być szyfrowania i wielu bajerów. Chodzi o to by serwer pokazał listę plików danemu klientowi nawet bez rozmiarów. A ten pobierając Total Commanderem dany plik wykonywał jakby tunelowe połączenie. Podam przykład jak pod kątem zgrywania sobie materiałów z YouTube albo serwisów VOD. Jest jakiś katalog i najnowsze odcinki M jak Miłość - po tym gdy jakieś wybierzemy, chwile dłużej serwer tworzy nam połączenie wedle schematu takiego jak na przykład: cały plik *.mp4 wyodrębniony na vod.tvp.pl => mój serwer gdzie jest ten niby FTP -> plik mp4 lecący do Użytkownika, już jako czyste dane binarne.

Takie coś mi chodzi wstępnie po głowie. Może ktoś z Was chce pomóc w rozwoju albo działał coś podobnego. Technicznie i wiedzą moją niewielką pewnie to ogarnę. Ale trzeba przysiąść i to rozplanować dobrze. Nie mam wiele czasu wolnego i możliwości aby na spokojnie przysiąść od teraz. Ale mając od Was informacje, że jest coś gotowego albo coś nie ma sensu albo chcecie mi pomóc z jakimiś informacjami na PM czy tutaj, będzie łatwiej. Czekam na wszelkie informacje. A temat uznałem za nieco ogólny a więc dałem tutaj. Najwyżej ktoś przeniesie. Włączyłem powiadamianie na mail. Sorry za rozpisanie się i styl ale jak to ja piszę - na szybko :)

0

Pierwsze nikomu nie jest potrzebne, bo każdy szanujący się program trzyma dziś swoje ustawienia w katalogu domowym użytkownika albo w AppData. Nie powinno być to usuwane z dysku po deinstalacji aplikacji.

Drugie - przeczytałem 2 razy i nic nie zrozumiałem, więc się nie wypowiem.

0

Punktu 2. nie skomentuję, dlatego że nie znam się na PHP i reszcie.

Natomiast jeśli chodzi o punkt 1. - nie znam gotowej aplikacji, która by posiadała taką funkcję. A jeśli chodzi o napisanie własnej (która by samodzielnie wyszukiwała takich konfiguracji) to będzie spory problem.

O ile rejestr faktycznie służy wszelkim instalowanym aplikacjom do zapisu konfiguracji, to dotyczy ona w dużej mierze samej instalacji. Czyli zgromadzone są w nim takie informacje jak ścieżka aplikacji i deinstalatora, wersja, informacje kontaktowe, rozszerzenia powłoki itd. Większość takich danych zawarta jest w gałęzi HKLM. Natomiast w gałęzi HKCU też znajdują się klucze z danymi aplikacji, jednak zależnymi od danego użytkownika (nie dziwne).

Natomiast większym problemem jest wylistowanie konfiguracji zapisanych w plikach dyskowych, leżących "gdzieś na dysku". Wiadome, że takich konfiguracji należy szukać w katalogach z ustawieniami lokalnymi, jednak na próżno szukać tu jakiegoś schematu. Dlatego też przydałoby się, aby takie informacje zgromadzić sobie raczej ręcznie. I też należy liczyć się z tym, że dany program będzie posiadał różną strukturę swojej konfiguracji, zmienianą na przestrzeni kolejnych wersji. Tak więc nie tylko trzeba by gromadzić same lokalizacje dla danego oprogramowania, ale też konkretnie dla kolejnych wersji.

Rerere:

Pierwsze nikomu nie jest potrzebne, bo każdy szanujący się program trzyma dziś swoje ustawienia w katalogu domowym użytkownika albo w AppData.

Bzdura, i to podwójna.

Po pierwsze, zaglądnij do klucza HKCU\Software i zapoznaj się z jego zawartością. Znajdziesz tam klucze od sporej liczby bardzo popularnych programów. Dla przykładu znajdują się tam ustawienia takich aplikacji jak Opera, Firefox, OpenOffice, WinAMP, Piriform (dla takich produktów jak CCleaner, Defraggler, Recuva, Speccy). Nie twierdzę, że wszelkie ustawienia są tam trzymane, ale pewna ich część jest. Nadal uważasz, że po rejestrze piszą jedynie nieszanujące się programy?

Po drugie, nie ma absolutnie żadnych przeciwskazań (również ze strony producenta systemu), aby przechowywać ustawienia aplikacji w rejestrze. Każda aplikacja może sobie zapisywać dane do rejestru, jak również przechowywać je w specjalnie przygotowanych do tego celu katalogach. Jeśli o rejestr chodzi to do dyspozycji jest gałąź HKCU, do której można wpisywać dane bez konieczności podnoszenia uprawnień, a one same są unikalne w skali danego użytkownika (i o to właśnie chodzi). Jeśli o katalogi chodzi, to tych dedykowanych jest co najmniej trzy - odróżnia je m.in. umiejscowienie na dysku oraz widoczność danych w nich zawartych.

Nie powinno być to usuwane z dysku po deinstalacji aplikacji.

Oczywiście że powinny, bo nikomu nie są potrzebne śmieci pozostałe po odinstalowanych programach. Jednak usuwane powinny być jedynie za zgodą użytkownika, podczas deinstalacji oprogramowania.

0

Tak, nadal tak twierdzę. Trzymanie ustawień w rejestrze to zaszłość. Prawidłowy sposób to appdata lub katalog domowy użytkownika.

0

A czy ten wątek służy omawianiu tego gdzie trzymać ustawienia, czy tego gdzie popularne aplikacje trzymają?

Poza tym Microsoft nie oznaczył rejestru jako deprecated i dopóki tego nie zrobi to nie ma najmniejszego powodu aby twierdzić, że to "zaszłość". Tym bardziej, że wtedy gdy rejestr był tą rzekomą "zaszłością", aplikacje też w nim przechowywały część ustawień, a pozostałe w plikach konfiguracyjnych (np. obok pliku wykonywalnego).

0

Czy ty urwałeś się z lat 90, hello? Żaden już program nie trzyma ustawień w rejestrze. W rejestrze są tylko rzeczy związane z integracją z systemem operacyjnym, jak skojarzenia plików z programem, informacje instalatora, rozszerzenia powłoki systemowej itd. Bo to musi tam być.

Jeśli jakiś program zapisuje swoje własne ustawienia w rejestrze, to jest to bardzo zła praktyka. Nie mówiąc już o plikach razem z .exe i jeszcze moze .ini. To na pewno forum programistów że trzeba to wyjaśniać? Czy może logują się tu tylko jakieś dinozaury, które zatrzymały się z technologiami i stosowanymi praktykami 20 lat temu?

0

Ponawiam pytanie - czy ten wątek służy omawianiu dobrych praktyk na temat przechowywania konfiguracji, czy tego, gdzie istniejące aplikacje mogą takie dane przechowywać? Jeśli @olesio używa jakiegokolwiek programu - takiego, który swoją konfigurację przechowuje w rejestrze - to ma nie robić backupu jego ustawień, bo szanowny pan @Rerere uważa, że jego twórca nie stosuje dobrych praktyk? Albo że to praktyki z lat 90' i nie warto?

Na pewno trafiłeś na dobre forum, że trzeba przypominać o tym, aby czytać posty ze zrozumieniem?

Żaden już program nie trzyma ustawień w rejestrze. W rejestrze są tylko rzeczy związane z integracją z systemem operacyjnym, jak skojarzenia plików z programem, informacje instalatora, rozszerzenia powłoki systemowej itd.

Już pisałem, że to wierutna bzdura, poza tym nie masz na to żadnego dowodu. Natomiast ja mam niejeden dowód obalający twoje wywody i pierwszym z brzegu jest najnowszy CCleaner, który przechowuje ustawienia użytkownika w rejestrze, a dokładniej w kluczu HKCU\Sofware\Piriform\CCleaner. I nie są to dane związane z instalacją czy powłoką (te znajdują się w gałęzi HKLM), bo są tam takie informacje jak choćby rozmiar i pozycja głównego okna.

0

Hej.

Rerere nie potrafi czytać ze zrozumieniem. Wyczuwam tutaj znany mi czasów gdy mogłem i chciałem udzielać się aktywniej "klimat" lekkiego trollowania osoby bez konta. No ale to off-topic, więc moglem się spodziewać. Dlatego kiedy mogłem udzielałem się raczej w działach technicznych. Nadrabia On jednak to zachowanie podobną do mnie ideologią w kwestii trzymania ustawień. Też jestem tego zdania. Katalog domowy jeśli można. Wiadomo że wprowadzono UAC. Ale niestety nadal nie ma standardu i nie narzucono, choć może powinno się, kwestii trzymania ustawień.

Faktycznie po co śmiecić do Rejestru przesadnie. Tak samo po co raz pliki mamy w takim kluczu raz w takim. Jeśli user wybrał, że instalacja ma być dla wszystkich userów lub dla konkretnego to i tak nawet fajnie napisany FAR w wersji 3.X wrzuca pliki na przykład do %APPDATA% i %LOCALAPPDATA%. A tak albo robimy jeden standardowy katalog na configi i słuchają się tego programy wszystkie nie mające w zamiarze autora czy autorów złych intencji. Albo jest bajzel. Wiem, że rejestr taki fajny. Ale ja gdyby nie Plugin do Rejestru fajniejszy i czytelniejszy - jak cały FAR niekiedy - to z regedit.exe czy pluginem do Total Commandera bym się pochlastał. Ale to kwestia przyzwyczajenia.

Jaki ma plus trzymanie wszystkiego w katalogu programu? No właśnie migracja. Toteż z Total Commanderem ponieważ mam UAC wyłączone, bo mi zbędne - trzymam wszystko tam. A instalować wolę do PROGRAM FILES. A co do dobrego zebrania danych wiadomo że to rozwijali by początkowo ludzie którzy by popatrzyli co i jak. Przecież nietypowe dane jak ścieżki katalogów specjalnych można odczytać. Ścieżkę po instalacji świeżej gdzie na przykład nasz program do configów zasugeruje uruchomienie jeden raz i zamknięcie softu też. Idealnie nie będzie ale na pewno nieco prościej i użytecznej. Tak uważam.

Tak ja to widzę. Jeśli nie ma gotowca to wstępnie na swoje potrzeby kiedyś mozolnie mogę zacząć takie coś tworzyć. Pomijam już zabawę we skorzystanie lub użycie kodu do śledzenia zmian w plikach i rejestrze przy uruchomieniu w stylu programów kiedyś chyba pod nazwami File Monitor i Registry Monitor by zebrać informacje gdzie się co podmienia. Jak też uczenie się nagrywając kliknięcia czy odczytując klasy kontrolek i je enumerując później aby instalka sama się instalowała jakby bo to jest zawodne i na prawdę to jest właśnie mnie trudne do wdrożenia. Ale to na później

Zatem wiem już iż nie kojarzycie. Drugą kwestię ogarnę. Ale to zmienię na równie korzystny ale większy pakier konta shell bo ilość interpreterów mi wystarcza. Ale rezerwując port serwerem w tle jeden będzie cały czas zajęty chyba że rozpracuje coś na wzór wzbudzającego się po wejściu na port skryptu PHP a nasłuchiwać będzie program w C++. A i teraz uświadamiam sobie że jest też tam interpreter FPC pod Unixy. Zatem jeżeli dorwał bym przykłady albo zadziałało by tam jakieś Synapse lub Indy na platformę nie Windowsową to można tak kombinować. Wielu z Was pewnie tworzy narzędzia które inni niechętnie by mieli dla siebie lub ich idei nie rozumieją. Ja uważam że warto mając chwilę sobie rozwijać czy umiejętności czy bazę gotowego kodu który później można wykorzystać w swoich projektach w przyszłości nie rzeźbiąc od zera mozolnie i nie wymyślając jakby koła na nowo. Chodzi o czas i rozważne.działanie. Przepraszam za rozpisanie się :)

0

Chodzi mi o taki automat, już pomijam symulacje kliknięć aby przeprowadzić instalacje po pobraniu może też z automatu.

Do wymuszenia instalacji zautomatyzowanej + zapewnienia paczek aplikacji mamy Chocolatey. Nie jest idealne, ale jest dobre.

Ale mamy jakieś softy na liście pobranej z sieci, którą rozwija Społeczność Projektu. User pod uruchomieniu dokonuje skanu swojego Windowsa i program wykrywa co ma zainstalowanego. A program pozawala zgrać do zbiorczego formatu albo nawet pojedynczego czy osobnego pliku *.zip dane konfiguracyjne - nie wiem Total Commandera, Win RAR, FAR, Foo Bar, Win AMP, GIMP, Open Office - cokolwiek. Później po reinstalacji można to przywrócić.

W zasadzie to jest fajny pomysł - ja go osobiście rozwiązuję w taki sposób, że mam zapisane ścieżki do katalogów, które warto backupować (i przywracać), ale na szczęście dotyczy to aplikacji albo "portable", które trzymają dane na pewno tam, gdzie same są, albo w innym %APPDATA% czy %PROGRAMDATA%. Nie backupuję konfiguracji żadnych programów zapisujących coś w Rejestrze, więc ten problem mnie omija - aczkolwiek mam zapisane dosłownie kilka programów, jakich regularnie używam i których konfiguracje są naprawdę istotne.

0
  1. Jeżeli to na własne potrzeby, to rozważ używanie aplikacji portable, turbo (dawniej spoon) lub dockera, vmware thinapp też może obejść problem. Odczytywanie konfiguracji istniejących aplikacji może być trudne, szczególnie, że część z nich nawet nie potrafi porządnie się odinstalować, co świadczy o poziomie solidności pisania oprogramowania. Do znalezienia miejsc używanych przez aplikację możesz też użyć procmona z sysinternals, przechwytuje bez problemu dostęp do plików i rejestru.
0

Dziękuję Wam za odpowiedzi. To że można używać takich narzędzi @Afish o tym wiem i wspominałem. Rejestry Windows to pękaty plik. A lepiej mieć wszystko na dysku, bo wygodniej to się przenosi. Chociaż oczywiście są gotowe polecenia. Ale łatwiej na przykład kompletnemu laikowi wykonać kopię nawet z pod Eksploratora Windows niż grzebać nieznanym wielu osobom regedit.exe lub na szybko poszukiwać na ten temat informacji. Akurat dla używanych w większości przeze mnie programów uważam, że będę w stanie odnaleźć konfiguracje a z czasem bazę może rozwijać Społeczność o ile się takowa zbierze i zainteresuje. Powoli będę to jakoś tworzył. Trzeba tylko znaleźć dobre rozwiązanie do eksportowania do *.reg bo coś mam ale nie jest zawsze idealnie kompatybilne jak plik tworzony przez edytor rejestru. Popatrzcie jak życie ratuje ludziom ADW Cleaner właśnie rozwijany przez wiedzę ludzi. Uratował przez kompletną reinstalacją dwa komputery jakie ostatnio musiałem sprzątać. Samodzielne namierzanie tego było by bardzo czasochłonne i ciężkie nawet nie dla kompletnego laika.

0
  1. Myślę, że można by ukręcić jakieś rozwiązanie bazując na FUSE na Linuxie. Wystawiasz wirtualny filesystem. Lista streamów widoczna w systamie jako zwykłe pliki. Mapujesz operacje typu open/read na dobieranie się i odczyt z danego streama. Jako że całość będzie widoczna jak zwykły filesystem, to nie powinno być większego problemu, aby połączyć to później z serwerem FTP.
0

Ok - pokombinuje. Chyba można wysyłać dane podebrane skądś to i te rozwiązanie zadziała ok. Dziękuje i jeżeli macie jeszcze jakieś sugestie czy możecie pomóc to proszę piszcie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1