Entpacken und starten oder installieren
Version 0.5.0. Die Archive brauchen keinen Installer und schreiben nichts in die Registrierung, und zum Ansehen sind keine Administratorrechte nötig. Ein signierter Installer bringt stattdessen beide Programme auf den ganzen Rechner. Kostenlos und quelloffen unter der GPL-3.0.
Was im Release steckt
| Datei | Was es ist |
|---|---|
BetterWindowsServices-win-x64.zip | Das Fenster: BetterWindowsServices.exe, eine eigenständige ausführbare Datei mit eigener .NET-Laufzeit im Inneren |
bws-cli-win-x64.zip | Die Befehlszeile: bws.exe, eine eigenständige ausführbare Datei, für Skripte, geplante Aufgaben und CI |
BetterWindowsServices-win-x64.msi | Der Installer: beide Programme in Program Files für jedes Konto auf dem Rechner, das Fenster im Startmenü und bws im PATH des Rechners |
Nehmen Sie eines oder beide - es sind zwei Clients derselben Engine, und keiner braucht den anderen. Auf einem Server ist die Befehlszeile die kleinere der beiden und kann alles, was das Fenster kann.
Der Installer enthält genau das, was die beiden Archive enthalten. Er installiert sich still mit msiexec /i BetterWindowsServices-win-x64.msi /qn, eine neuere Version wird über eine ältere installiert, und er beendet nichts, was läuft - schließen Sie also vor dem Upgrade das Fenster und jedes laufende bws, denn eine weiterlaufende Kopie kann mit einem Fehler anhalten. Die Deinstallation über Einstellungen, Apps entfernt die Programme, den Startmenüeintrag und den PATH-Eintrag und lässt Ihre eigenen Dateien in Ruhe.
Die ausführbaren Dateien tragen eine Authenticode-Signatur, sodass Windows den Herausgeber nennt, statt vor einem unbekannten zu warnen.
Voraussetzungen
- Windows 10 Version 1809 oder neuer, oder Windows Server 2019 oder neuer. Nur 64 Bit - ein 32-Bit-Prozess liest umgeleitete Pfade und Registrierungsschlüssel, was stillschweigend falsche Antworten ergäbe.
- Kein .NET zu installieren. Beide ausführbaren Dateien bringen ihre eigene .NET-Laufzeit mit.
- Administratorrechte, um irgendetwas zu ändern. Lesen, Suchen, Snapshots und Vergleiche funktionieren auch ohne, mit weniger sichtbaren Einträgen, und das Werkzeug sagt das ganz oben, statt so zu tun, als wäre die Liste der ganze Rechner.
Das Fenster hält eine eigene Datei - das Layout, in dem Sie die Liste verlassen haben - unter %APPDATA%\BetterWindowsServices. Ein Snapshot landet dort, wo Sie es bws snapshot create sagen, und im aktuellen Verzeichnis, wenn Sie nichts sagen.
Das Programm spricht Englisch. Das Fenster liest eine Sprachdatei, languages\gui.<Code>.json, die daneben liegt und nach der Sprache von Windows gewählt wird, ohne Schalter. Eine Übersetzung ist daher ein Beitrag, der sich ohne Neubau ergänzen lässt - CONTRIBUTING.md sagt, wie.
Virenschutz und EDR
Dieses Werkzeug tut, was ein Administrator mit Diensten tut, und einiges davon ist das, worauf Sicherheitssoftware achtet.
Es beendet und startet Dienste, es kann den Prozess hinter einem Dienst beenden, und es liest von jedem Dienst den Sicherheitsdeskriptor und die erforderlichen Privilegien. Ein EDR, der einen Prozess meldet, der svchost.exe beendet, macht seine Arbeit, und ein erzwungenes Beenden hier kann genau so aussehen.
Was es nicht tut, damit Sie die Aussage prüfen können: Es schleust nichts in einen Prozess ein, es packt oder verschleiert nichts, es installiert keinen Dienst und keinen Treiber und lässt nichts laufen, und es öffnet keine Netzwerkverbindung. Es ist quelloffen unter der GPL-3.0, und Sie können beide ausführbaren Dateien selbst bauen.
Wenn Ihre Richtlinie eine Ausnahme braucht, nehmen Sie die beiden ausführbaren Dateien per Datei aus und nicht einen Ordner. Das Einzige, was Sie mit derselben Sorgfalt behandeln sollten wie das Werkzeug selbst, ist eine Snapshot-Datei: Sie beschreibt den ganzen Rechner.
Aus dem Quelltext bauen
.NET-10-SDK, unter Windows.
git clone https://github.com/donislawdev/BetterWindowsServices
cd BetterWindowsServices
dotnet build BetterWindowsServices.slnx -c Release
dotnet test BetterWindowsServices.slnx -c Release
Einige Tests lesen den echten Dienststeuerungs-Manager des Rechners, auf dem sie laufen, und vergleichen, was dieses Werkzeug sagt, mit dem, was sc.exe sagt. Sie sind schreibgeschützt. Die Einzeldatei-Programme, die die Releases enthalten, sind diese beiden Veröffentlichungen, jeweils eine Datei mit der Laufzeit im Inneren:
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
Sie landen als bws.exe und BetterWindowsServices.exe unter bin/Release/.../win-x64/publish/ des jeweiligen Projekts. Die .pdb-Dateien daneben sind Debugsymbole, und zum Ausführen braucht sie nichts.
Was der Betrieb kostet
Gemessen auf einem Rechner mit 804 Diensten. Ihre Werte werden abweichen - Anzahl der Dienste, Datenträger und Prozessor verschieben sie alle.
Etwa eine Fünftelsekunde
braucht bws list, um den ganzen Rechner zu lesen.
Etwa 19 MB
für die Befehlszeile auf demselben Rechner.