Pytania i ograniczenia
Narzędzie, które po cichu czegoś nie obsługuje, jest gorsze od takiego, które mówi, czego nie potrafi. Ograniczenia są na tej stronie też, w dwóch grupach: czego program świadomie odmawia, i to, co robi Windows, a ten program zgłasza jak jest.
Czym to się różni od sc.exe, Get-Service albo services.msc?
sc query i Get-Service mówią, co działa. services.msc pozwala to zmienić, po jednym wierszu, bez możliwości zadania pytania i bez śladu po fakcie. Ten program zadaje pytanie (start:auto !status:running), pokazuje plan zanim zadziała, i trzyma snapshot, który można porównać tydzień później. Tam, gdzie nie zgadza się z sc.exe co do usługi, to jest błąd - część zestawu testów uruchamia oba i porównuje je wpis po wpisie. Dłuższe porównanie jest tutaj.
Czy potrzebuje internetu?
Nigdy. Zero telemetrii, zero sprawdzania aktualizacji, zero raportowania awarii, zero konta, zero klienta czegokolwiek. Jedyny moment, w którym może w ogóle dotknąć sieci, to przełącznik --follow-network: z nim może zajrzeć do ścieżki uruchomienia na udziale innej maszyny i pozwolić Windowsowi pobrać certyfikat, którego ta maszyna jeszcze nie ma - domyślnie wyłączony, a pomoc mówi dlaczego. Przyciski GitHub i Donate w oknie oraz strona w jego menu Help przekazują po naciśnięciu jeden stały adres przeglądarce, i to przeglądarka się łączy.
Czy potrzebuje praw administratora?
Do patrzenia nie. Do zmieniania tak. Bez nich menedżer pokazuje mniej wpisów i odmawia częściej, i obie połowy mówią to na górze, zamiast udawać, że lista jest całą maszyną. Okno proponuje Restart as admin. Nigdy nie podnosi sobie uprawnień samo.
Czy jest darmowy? Czy mogę go używać w pracy?
Tak na oba. GPL-3.0, bez haczyków. Snapshot, który zrobisz, jest Twoim plikiem.
Czy zepsuje mi serwer?
Sam z siebie nie. Nic nie zmienia się bez planu, który widziałeś, sterowniki są odmawiane, a plan zdejmujący coś, bez czego maszyna nie działa, mówi to. Przed czym nie może Cię ochronić, to wykonanie planu, którego nie przeczytałeś. Lista usług, bez których maszyna nie działa, to lista startowa siedmiu pozycji - dwie połowy RPC i program uruchamiający serwery DCOM, menedżer kont, izolacja kluczy, menedżer sesji i plug and play - a Pulpitu zdalnego na niej nie ma, więc przez sesję zdalną przeczytaj plan.
Czy to produkt Microsoftu?
Nie. Better Windows Services jest niezależnym projektem otwartoźródłowym, niepowiązanym z Microsoftem, niewspieranym ani niesponsorowanym przez Microsoft. Windows jest znakiem towarowym grupy spółek Microsoft.
Czy program jest po polsku?
Nie - program mówi po angielsku, i właśnie dlatego ta strona jest przetłumaczona. Okno czyta plik językowy languages\gui.<kod>.json położony obok pliku wykonywalnego i wybiera go według języka systemu, bez przełącznika, więc tłumaczenie jest wkładem, który da się dodać bez przebudowy programu. Nazwy usług, które widzisz na liście, są tym, co mówi Twój Windows - to znaczy po polsku na polskim Windowsie.
Dlaczego okno jest ciemne, gdy mój Windows jest jasny?
Jest ciemne i takie zostaje, niezależnie od ustawienia Windowsa, łącznie z motywem o wysokim kontraście. To jest sprawdzone, a nie założone - okno trzyma własne kolory, pozostaje czytelne i za tym ustawieniem nie idzie.
Świadomie
- Tylko maszyna lokalna. Zarządzania zdalnego w tej wersji nie ma. Żeby porównać dwie maszyny, zrób snapshot na każdej i porównaj pliki.
- Tylko Windows, tylko 64 bity, Windows 10 1809 albo Windows Server 2019 i nowsze.
- Operacje na sterownikach są odmawiane, a nie próbowane, bo zatrzymanie sterownika jądra często nie jest odwracalne bez restartu.
- Program nie podnosi sobie uprawnień. Gdy menedżer odmawia, mówi to i kończy kodem
3. Okno proponuje restart jako administrator i nie robi z tym nic więcej. - Unieważnienie certyfikatu nie jest sprawdzane. Wymagałoby to sięgnięcia do sieci, a ten program nie sięga nigdy. Dlatego Trusted znaczy, że łańcuch był ważny na tej maszynie, a nie, że nikt od tamtej pory certyfikatu nie unieważnił.
- Okno rozpakowuje część biblioteki interfejsu Windows, zanim wystartuje. Jako jeden plik niesie kilka bibliotek natywnych, które Windows potrafi załadować tylko z dysku. Bez uprawnień administratora zapisuje je przy pierwszym uruchomieniu każdej wersji do katalogu
.netw katalogu tymczasowym konta i stamtąd je ładuje. Z uprawnieniami administratora używa zamiast niego folderuProgramData\BetterWindowsServicesna dysku Windows - zakłada go tak, żeby zmienić go mogli tylko administratorzy, i sprawdza przy każdym starcie. Jeśli tego folderu nie da się założyć albo mogą go zmieniać inni, okno nie startuje i mówi, który folder i co zrobić. Przeniesienie tam oznacza, że okno z uprawnieniami uruchamia się drugi raz, co zajmuje ułamek sekundy, a każda wersja zostawia tam swoje biblioteki (około 8 MB), dopóki ktoś nie usunie folderu. Wiersz poleceń takich bibliotek nie ma i niczego nie rozpakowuje. - Sesja z uprawnieniami administratora nazywa ustawienia .NET, które odziedziczyła, zamiast ich odmawiać. Profilera, przełącznika zapisu śladu albo zrzutu ani portu diagnostycznego ustawionego w środowisku nie da się wyłączyć z wnętrza programu .NET, więc z uprawnieniami administratora obie połowy wymieniają te, które znajdą. Haki startowe są wyłączone całkowicie.
To, co robi Windows, a ten program zgłasza jak jest
- Usługa mieszkająca w
svchostma ścieżkę uruchomienia wskazującą na hosta, więc czy plik jest i kto go podpisał mówią mniej niż przy usłudze z własnym procesem. - Plik z własnym podpisem i wpisem w katalogu Windowsa może wskazywać dwóch różnych podpisujących. Pokazywany jest ten ze środka pliku - ten, który zostaje taki sam, gdy spojrzeć na plik na innej maszynie - i może różnić się od tego, co zgłasza PowerShell.
- Bez praw administratora menedżer wymienia mniej wpisów i odmawia częściej. Obie połowy mówią to na górze, a snapshot to zapisuje, bo porównanie snapshotu elewowanego z takim bez praw zgłaszałoby jako usunięte wpisy, których nikt nie usunął.
Znalazłeś błąd albo usługę, którą ten program pokazuje inaczej niż sc.exe? Zgłoszenia są otwarte, a różnica między jednym a drugim jest najbardziej użyteczną rzeczą, jaką można tam wkleić.