Abhängigkeiten zu Windows-Diensten hinzufügen oder entfernen

Manchmal muss man Abhängikeiten von Windows-Diensten untereinander bearbeiten. Die Abhängigkeiten machen auch genau das was sie sagen: Dienste starten damit erst, wenn ein Anderer fertig ist.

Sinnvoll ist das zum Beispiel bei Lizenzdiensten die erst nach dem USB-Link starten sollen oder Middleware-Services erst nach einer Datenbank.

Lösung

An der guten alten CMD-Shell (als Administrator) lassen sich Abhängigkeiten schnell hinzufügen:

sc config <DIENST> depend=<ABHAENGIG VON ANDEREM DIENST>

Alle Abhängikeiten entfernen:

sc config <DIENST> depend= /

Veeam: Failed to prepare guest for hot backup. Details: VSSControl: -2147467259 [0x8004231f].

Veeam gibt diese Warnung in einem Backup-Job aus:

Failed to prepare guest for hot backup. Details: VSSControl: -2147467259 Backup job failed.
Cannot create a shadow copy of the volumes containing writer's data.
VSS asynchronous operation is not completed. Operation: [Shadow copies commit]. Code: [0x8004231f].  

Lösung

Der Fehlercode 0x8004231f steht für „VSS_E_INSUFFICIENT_STORAGE“ oder auch „nicht genügend Speicherplatz für die Schattenkopie“. Die Festplatte ist voll.

Schattenspeicherplatz wird für die Systemwiederherstellungspunkte von Veeam Backup & Recovery verwendet, wenn „Appication Image Aware Processing“ eingeschaltet ist (was auch empfohne ist).

Der Fehler tritt auf wenn die Festplatte tatsächlich voll ist. Das kann zum Beispiel ungewollt passieren, wenn man der 100Mbyte großen Windows „EFI-Systempartition“ oder der (möglicherweise eingerichteten) „Widerherstellungspartition“ einen Laufwerksbuchstaben gegeben hat. Naturgemäß haben diese Partitionen praktisch keinen freien Speicherplatz. „Voll“ bedeutet hier, „nicht genug Platz für eine Volumenschattenkopie“. Bei Maschinen mit viel Arbeitsspeicherbedarf, zum Beispiel ERP-Systeme oder SQL-Server, kann das plötzlich sehr viel sein. Wir haben einen SQL-Server VSS Dump „mal eben“ 20Gbyte schreiben sehen.

Alle installierten .NET Frameworks an der anzeigen

Welche .NET Frameworks in welcher Version und welchem Build gibt es grade auf meiner Maschine?

Lösung

PowerShell listet alle Frameworks direkt aus der Registry auf:

Get-ChildItem 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP' -Recurse | Get-ItemProperty -Name version -EA 0 | Where { $_.PSChildName -Match '^(?!S)\p{L}'} | Select PSChildName, version

Visual C++ Runtimes installation Fehler „The Feature You Are Trying to Use in on a Network Resource That is Unavailable“

Manchmal sieht man sich beim Setup/Update der Microsoft Visual C++ Redistributeable Runtime(s) mit diesem Fehler konfrontiert. Spannederweise ist die Fehlermeldung („Error Message“ höhö) auch auf einem deutschen Windows auf englisch:

The feature you are trying to use is on a network resource that is unavailable.

Lösung

In den allermeisten Fällen reicht es aus, diese Registry-Schlüssel samt Inhalt zu löschen:

Unterhalb von
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\Products
jeden Schlüssel der "Microsoft Visual C++ ..." im "ProductName" enthält

Wenn das nicht ausreicht: Prüfen ob der Windows-Installer Dienste korrekt läuft, machmal stürzt dieser ab und startet nicht richtig neu.