Folgende Symptome traten auf:
Die Beschreibung von Diensten konnte für die meisten Windows-internen Dienste nicht angezeigt werden.
Alle Energiesparpläne waren weg und konnten auch nicht neu erstellt werden.
powercfg /l zeigte nur deren GUIDs an, aber keine Namen.
Mittels powercfg /changename GUID "Neuer Name" ließen sich Namen wieder zuordnen, daraufhin wurden die Energiesparpläne auch wieder angezeigt. Deren Erweiterte Einstellungen ließen sich jedoch nicht finden.
Folgende Lösung führte schließlich zum Erfolg:
- regedit (per Rechtsklick als Administrator) starten
- zum Schlüssel HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\MUI navigieren
- falls nicht vorhanden, dort einen neuen Schlüssel mit Namen StringCacheSettings anlegen
- in diesem Schlüssel einen neuen Wert StringCacheGeneration vom Typ DWORD anlegen
- diesen doppelklicken und mit dem Wert 38b (hexadezimal) versehen
- den Rechner neu starten.
Danach sollten die beschriebenen Probleme gelöst sein.
Dienstag, 2. August 2016
PowerShell: Abfrage des Druckaufkommens eines Kopierers
Gewünscht war, von einem Ricoh-Kopierer regelmäßig die Verbrauchsdaten zu ermitteln und dann zu übermitteln. Es gab keinen direkten Link zum Standort des Kopierers und auch keine Möglichkeit, die Daten in der Cloud zwischenzupuffern, also sollte das DFS des Active Directory zum Transportieren der Daten verwendet werden. Das wurde mit PowerShell erledigt:
#Datei für die Zwischenspeicherung der Website mit Informationen, da ein direktes Drucken per XPS in eine Datei sich nicht ohne weiteres automatisiert erledigen ließ
$file = "D:\Script\ricoh.html"
#Bereinigte Zieldatei im DFS
$result = "\\domäne\dfs\global\log\RICOHMPC401.txt"
#Direkter Link, wurde manuell aus den Eigenschaften der Zählerstandsseite ausgelesen
$website = "http://ricoh-mpc401/web/guest/en/websys/status/getUnificationCounter.cgi"
#Übertragung der Zählerstands-Webseite in die Zieldatei
Invoke-WebRequest -Uri $website -OutFile $file
#Eingrenzen des zu verarbeitenden Segments der exportierten Seite
$Startword = "Counter"
$Stopword = "Duplex"
$pattern = $Startword +'.*?'+ $Stopword
$txt = Get-Content $file | select-string -pattern $pattern -AllMatches
#Entfernen der zahllosen HTML-Tags
$txt = $txt -replace "<.*?>"," "
#Bereinigung des verbliebenen Textes von ungewollten Wörtern, Zeichen, Umbrüchen und Leerzeichen(folgen)
$txt = $txt -replace " Refresh"
$txt = $txt -replace " Back"
$txt = $txt -replace "\s+:",":"
$txt = $txt -replace "\s+%","%"
$txt = $txt -replace "amp;"
$txt = $txt -replace '\s+', ' '
$txt = $txt -replace '`n'
#Zeilenumbruch nach nummerischen Werten (Zählerständen) einfügen und bei %-Werten das Prozentzeichen vor den Umbruch verschieben
$txt = $txt -replace '(\d{1,6})','$1NewLine'
$txt = $txt -replace 'NewLine%','%NewLine'
#Der tatsächliche Zeilenumbruch
$txt = $txt -replace 'NewLine ',"`r`n"
$txt = $txt -replace ' B',"`r`nB"
$txt = $txt -replace ' Duplex',"`r`nDuplex"
#Entfernen des ungewünschten Zeichens am Anfang des Strings und Ausgabe in Zieldatei
$txt.Substring(1) | out-file $result
#Anzeigen der Zieldatei am Bildschirm zu Kontrollzwecken (kann auskommentiert werden)
invoke-item $result
Dieses Script wird per Aufgabenplanung auf dem Server vor Ort zu den gewünschten regelmäßigen Auswertungsterminen ausgeführt und ermöglicht so die pflegeleichte Übertragung der Daten.
#Datei für die Zwischenspeicherung der Website mit Informationen, da ein direktes Drucken per XPS in eine Datei sich nicht ohne weiteres automatisiert erledigen ließ
$file = "D:\Script\ricoh.html"
#Bereinigte Zieldatei im DFS
$result = "\\domäne\dfs\global\log\RICOHMPC401.txt"
#Direkter Link, wurde manuell aus den Eigenschaften der Zählerstandsseite ausgelesen
$website = "http://ricoh-mpc401/web/guest/en/websys/status/getUnificationCounter.cgi"
#Übertragung der Zählerstands-Webseite in die Zieldatei
Invoke-WebRequest -Uri $website -OutFile $file
#Eingrenzen des zu verarbeitenden Segments der exportierten Seite
$Startword = "Counter"
$Stopword = "Duplex"
$pattern = $Startword +'.*?'+ $Stopword
$txt = Get-Content $file | select-string -pattern $pattern -AllMatches
#Entfernen der zahllosen HTML-Tags
$txt = $txt -replace "<.*?>"," "
#Bereinigung des verbliebenen Textes von ungewollten Wörtern, Zeichen, Umbrüchen und Leerzeichen(folgen)
$txt = $txt -replace " Refresh"
$txt = $txt -replace " Back"
$txt = $txt -replace "\s+:",":"
$txt = $txt -replace "\s+%","%"
$txt = $txt -replace "amp;"
$txt = $txt -replace '\s+', ' '
$txt = $txt -replace '`n'
#Zeilenumbruch nach nummerischen Werten (Zählerständen) einfügen und bei %-Werten das Prozentzeichen vor den Umbruch verschieben
$txt = $txt -replace '(\d{1,6})','$1NewLine'
$txt = $txt -replace 'NewLine%','%NewLine'
#Der tatsächliche Zeilenumbruch
$txt = $txt -replace 'NewLine ',"`r`n"
$txt = $txt -replace ' B',"`r`nB"
$txt = $txt -replace ' Duplex',"`r`nDuplex"
#Entfernen des ungewünschten Zeichens am Anfang des Strings und Ausgabe in Zieldatei
$txt.Substring(1) | out-file $result
#Anzeigen der Zieldatei am Bildschirm zu Kontrollzwecken (kann auskommentiert werden)
invoke-item $result
Dieses Script wird per Aufgabenplanung auf dem Server vor Ort zu den gewünschten regelmäßigen Auswertungsterminen ausgeführt und ermöglicht so die pflegeleichte Übertragung der Daten.
(Seite 1 von 1, insgesamt 2 Einträge)