Uitpakken en starten, of installeren
Versie 0.5.0. De archieven hebben geen installatieprogramma nodig en schrijven niets naar het register, en kijken vraagt geen beheerdersrechten. Een ondertekend installatieprogramma zet beide programma's in plaats daarvan op de hele machine. Vrij en open source onder GPL-3.0.
Wat er in de release zit
| Bestand | Wat het is |
|---|---|
BetterWindowsServices-win-x64.zip | Het venster: BetterWindowsServices.exe, één zelfstandig uitvoerbaar bestand met een eigen .NET-runtime erin |
bws-cli-win-x64.zip | De opdrachtregel: bws.exe, één zelfstandig uitvoerbaar bestand, voor scripts, geplande taken en CI |
BetterWindowsServices-win-x64.msi | Het installatieprogramma: beide programma's in Program Files voor elk account op de machine, het venster in het startmenu en bws in het PATH van de machine |
Neem er een of beide - het zijn twee clients van dezelfde engine en geen van beide heeft de andere nodig. Op een server is de opdrachtregel de kleinste van de twee en doet alles wat het venster doet.
Het installatieprogramma bevat precies wat de twee archieven bevatten. Het installeert stil met msiexec /i BetterWindowsServices-win-x64.msi /qn, een nieuwere versie installeert over een oudere heen, en het sluit niets af wat draait - sluit dus het venster en elke draaiende bws voordat u bijwerkt, want een kopie die blijft draaien kan met een fout stoppen. Verwijderen via Instellingen, Apps haalt de programma's, het item in het startmenu en het PATH-item weg en laat uw eigen bestanden met rust.
De uitvoerbare bestanden dragen een Authenticode-handtekening, zodat Windows de uitgever noemt in plaats van te waarschuwen voor een onbekende.
Vereisten
- Windows 10 versie 1809 of later, of Windows Server 2019 of later. Alleen 64-bits - een 32-bits proces leest omgeleide paden en registersleutels, wat stilletjes verkeerde antwoorden zou geven.
- Geen .NET om te installeren. Beide uitvoerbare bestanden dragen hun eigen .NET-runtime.
- Beheerdersrechten om iets te wijzigen. Lezen, zoeken, momentopnamen en vergelijkingen werken zonder, met minder zichtbare items en het hulpmiddel zegt dat bovenaan in plaats van te doen alsof de lijst de hele machine is.
Het venster bewaart één eigen bestand - de indeling waarin u de lijst hebt achtergelaten - onder %APPDATA%\BetterWindowsServices. Een momentopname komt waar u bws snapshot create opdraagt hem neer te zetten, en in de huidige map als u dat niet doet.
Het programma spreekt Engels. Het venster leest een taalbestand, languages\gui.<code>.json, dat ernaast ligt en wordt gekozen op basis van de taal van Windows, zonder schakelaar. Een vertaling is dus een bijdrage die kan worden toegevoegd zonder opnieuw te bouwen - CONTRIBUTING.md legt uit hoe.
Antivirus en EDR
Dit hulpmiddel doet wat een beheerder met services doet, en een deel daarvan is wat beveiligingssoftware in de gaten houdt.
Het stopt en start services, het kan het proces achter een service beëindigen, en het leest van elke service de beveiligingsdescriptor en vereiste bevoegdheden. Een EDR die een proces markeert dat svchost.exe beëindigt, doet zijn werk, en een geforceerde stop hier kan er precies zo uitzien.
Wat het niet doet, zodat u de bewering kunt controleren: het injecteert niets in een proces, het verpakt of versluiert niets, het installeert geen service en geen stuurprogramma en laat niets draaien, en het opent geen netwerkverbinding. Het is open source onder GPL-3.0 en u kunt beide uitvoerbare bestanden zelf bouwen.
Als uw beleid een uitzondering vraagt, sluit dan de twee uitvoerbare bestanden uit op bestand in plaats van op map. Het enige wat met dezelfde zorg moet worden behandeld als het hulpmiddel zelf is een momentopnamebestand: het beschrijft de hele machine.
Bouwen uit de broncode
.NET 10 SDK, op Windows.
git clone https://github.com/donislawdev/BetterWindowsServices
cd BetterWindowsServices
dotnet build BetterWindowsServices.slnx -c Release
dotnet test BetterWindowsServices.slnx -c Release
Sommige tests lezen de echte servicebeheerder van de machine waarop ze draaien en vergelijken wat dit hulpmiddel zegt met wat sc.exe zegt. Ze zijn alleen-lezen. De uitvoerbare bestanden uit één bestand die de releases dragen zijn deze twee publicaties, elk één bestand met de runtime erin:
dotnet publish src/Bws.Cli/Bws.Cli.csproj -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true
dotnet publish src/Bws.Gui/Bws.Gui.csproj -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true
Ze komen terecht als bws.exe en BetterWindowsServices.exe onder bin/Release/.../win-x64/publish/ van elk project. De .pdb-bestanden ernaast zijn foutopsporingssymbolen, en niets heeft ze nodig om te draaien.
Wat het kost om te draaien
Gemeten op één machine met 804 services. Uw cijfers zullen verschillen - het aantal services, de schijf en de processor beïnvloeden ze allemaal.
Ongeveer een vijfde seconde
voor bws list om de hele machine te lezen.
Ongeveer 19 MB
voor de opdrachtregel op dezelfde machine.