Netz-Weise Logo

Weisheiten - der Netz-Weise Blog

Hier finden Sie Tipps und Tricks für vor, während und nach der Schulung.

Windows Browserwahl nach Windows-Installation deaktivieren

Sie rollen automatisch ein Betriebssystem mit einem alternativen Browser aus, aber Windows will trotzdem vom User jedes mal einen Standardbrowser erfragen. Noch so ein einem EU-Kartellverfahren geschuldetes Feature. Mit diesem Registry-Key schalten Sie die Abfrage aus:

Schlüssel: "HKLM\SOFTWARE\BrowserChoice"
Wert: "Enable",Reg_Dword,0

  2059 Aufrufe

PDF-Dateien zusammenführen und trennen

Um ein PDF-Dokument zu bearbeiten, gibt es eine Reihe von kostenpflichtigen Tools. Um aber einfach nur Dokumente zusammenzufügen, oder Seiten aus einem Dokument zu extrahieren, gibt es kostenlose tools. Sehr empfehlenswert ist hier PDFtk, das PDF-Toolkit. Das Tool besteht aus einer Sammlung von Kommandozeilentools sowie einer kostenlosen GUI. In die GUI kann man die Dokumente, die man bearbeiten möchte, laden, in der rechten Spalte die Seiten angeben, die man aus einem Dokument extrahieren oder zusammenfügen möchte, und mit einem Klick erhält man ein neues Dokument. Sehr praktisch, klein und einfach."

  2581 Aufrufe

Batteriestatus mit Powershell abfragen

Den Batteriestatus finden Sie in der CIM-Klasse Win32_Battery. Die Abfrage erfolgt über die Commandlets GET-WMIOBJECT bzw. GET-CimInstance (ab Windows 8):

Get-WmiObject Win32_Battery | Select-Object batterystatus

bzw.

Get-CimInstance Win32_Battery | Select-Object batterystatus

Möglicher Status:
1: Die Batterie entlädt sich
2: Das Gerät hat Netzstrom - nicht erforderlicherweise ladend!
3: Batterie ist voll geladen
4: Batteriestand niedrig
5: Batteriezustand kritisch
6: Batterie lädt
7: Batterie lädt, Ladezustand hoch
8: Batterie lädt, Ladezustand niedrig
9: Batterie lädt, Ladezustand kritisch
10: nicht definiert
11: Teilweise geladen

  6889 Aufrufe

Konverter-Script von .reg zu Powershell

Dieses kleine Script nimmt eine .reg-Datei (Export aus der Registry) und erzeugt daraus ein Reihe von Powershell-Kommandos, die die Einträge in der Registry vornehmen. Der Vorteil ist, dass man z.B. eine komplette Installation in einer Powershell-Datei verpacken kann, ohne explizit noch einmal reg.exe aufrufen zu müssen. So ist z.B. der Export der Dateien einfacher, da das Script "all in one" ist. Funktionsweise/Aufruf: Das Script implementiert eine Funktion convertfrom-reg. Wenn das Script aufgerufen wird, wird nur eine Funktion angelegt. Diese kann dann in der Powershell mit convertfrom-reg -regfile "Pfad zur Registrierungsdatei" aufgerufen werden. 

  2684 Aufrufe

Mit Powershell Reg_Binary Werte in die Registry schreiben

Wie Sie mit der Powershell Reg-Binary Werte in die Registry schreiben Powershell bietet ein mächtiges Kommando zum setzen von Registry-Werten: SET-ITEMPROPERTY bzw. NEW-ITEMPROPERTY. Mit Set können Sie einen bestehenden Wert überschreiben, mit New erzeugen Sie einen neuen Wert. Die Syntax ist grundstätzlich sehr simpel:

New-Itemproperty -Path "Registrierungsschlüssel" -name "Name des Werts"  -Value "Zu setzender Wert" -PropertyType "Typ des Eintrags"

Als Propertytype kommen dabei in Frage:

  • BINARY
  • DWORD
  • STIRNG
  • EXPANDSTRING
  • MULTISTRING
  • QWORD

Die meisten der Werte sind einfach zu setzen, allerdings erweist sich Binary  mitunter als widerspenstig. Wird als PropertyType "BINARY" angegeben, so muß der angegebene Wert sich auch im Binärdatentyp befinden. Eine Umwandlung kann dabei über die Konvertierungsfunktion [BINARY] erfolgen. Ein wenig trickreich wird es, wenn man Daten z.B. aus einem Regfile ausliest, weil beim Registrierungsepxort die Daten nicht als Binärdaten ausgegeben werden, sondern als HEX-Zahlen. Diese müssen vorher erst wieder ins Dezimalformat umgewandelt werden, bevor man sie ins Binärformat konvertieren kann. Eine mögliche Lösung sieht so aus:

New-ItemProperty -Path 'HKCU:\Software\' -name "EinWert"  -Value (&{'c7,02,00,00'.split(",") | %{"0x"+$_}}) -PropertyType BINARY}

Kurze Erklärung: Die Hex-Werte werden in einem Script-Block aufgesplittet und per String-Addition für Powershell in einen Hex-Wert gewandelt. Diesen kann Powershell dann implizit konvertieren. Weitere Informationen zur Konvertierung finden Sie in unserem vorigen Tipp.

  7301 Aufrufe

Hex, Binary und Char mit Powershell

Powershell bietet eine Reihe von mächtigen Konvertierungsoptionen, um Datentypen ineinander umzuwandeln. Normalerweise reicht es, die Konvertierungsfunktion [Datentyp[]] vor den umzuwandelnden Wert zu schreiben. Um Beispielsweise einen String in ein Array zu konvertieren, reicht folgende Befehlszeile:

[BYTE[]]"Netz-Weise"

Als Ergebnis erhalten Sie die einzelnen Buchstaben. Auf die gleich Weise können Buchstaben in seinen ASCII-Code umwandeln:

[BYTE[]][CHAR[]]"Netz-Weise

Diese Kommandozeile gibt als Ergebnis die ASCII-Represäntation zurück. Dabei wird erst per [CHAR[]] der String in seine Einzelbuchstaben konvertiert, und danach konvertiert [BYTE[]] die Einzelbuchstaben in Ihre ASCII-Codes (Byte-Reräsentation). Powershell kann intern bereits mit Hexadezimalzahlen arbeiten. Das ist z.B. deshalb spannend, weil die Registry beispielsweise Byte-Werte als Hex-Codes speichert (Reg-Binary-Werte). Um eine Hex-Zahl in eine Dezimalzahl umzuwandeln, muß man vor die Zahl nur eine 0x schreiben, schon konvertiert Powershell automatisch. Alternativ klappt das auch mit einer .net-Methode:

[Int]::Parse($Hexzahl, [System.Globalization.NumberStyles]::HexNumber)

$Hexzahl ist hier eine Variable, die den Hexwert beinhaltet. Um eine Reihe von Hexzahlen in Binärwerte umzuwandeln, bietet sich daher folgende kurze Kommandozeile an:

"68,02,00,00,21".split(",") | foreach-object {`"0x`"+`$_}

"68,02,00,00,21" ist ein String, der Inhalt sind 5 Hexcodes. Wir splitten den String mit der Split-Funktion in Einzelwert, und stellen mit der Pipeline vor jede Einzelzahl per Stringverkettung ein "0x". Die Ausgabewerte werden von Powershell automatisch als Hex-Werte erkannt und umgewandelt.

Weiterlesen
  7580 Aufrufe

Windows 8 Startanimation deaktivieren

Windows 8 startet für jeden neuen Benutzer eine Videoeinführung. Das Starten dieses Videos kann über verschiedene Mechanismen unterdrückt werden.

Per Registry Key: Legen Sie unter dem Schlüssel HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon einen Wert EnableFirstLogonAnimation vom Typ REG_DWORD an. EnableFirstLogonAnimation muß auf 0 gesetzt werden.

Per Gruppenrichtlinie: Computerconfiguration > Policies > Administrative Templates > System > Logon Hier setzen Sie "Show First Sign-in animation" auf "Disabled" Windows IT Pro: Stop the Windows 8 Intro Animation for Users Setzen des Registry-Keys über die unattend.xml

  2140 Aufrufe

Powershell und Regular Expressions (Regex)

Es gibt in Powershell die Möglichkeit, nicht nur mit einfachen Wildcards zu suchen (*,?,...), sondern Powershell unterstützt an vielen Stellen auch Regular Expressions. Wem das nicht reicht, der kann sogar noch auf das .net-Framework zurück greifen, um Reguläre Ausdrücke zu suchen. Regular Expressions sind sehr mächtig, aber leider auch ziemlich komplex. Ein gutes Tutorial gibt es z.B. hier: http://www.regular-expressions.info/tutorial.html

Wenn man nicht regelmässig mit Regular Expressions arbeitet, gibt es von Sapien aber einen guten, kostenfreien Regex-Editor, der einem über die größten Hürden hilft. Hier eine kleine Einführung in die Community-Preview des Power Regex mit Download-Link (Eine Registrierung ist notwendig). Und noch eine gute Einführung in das Thema: Regular Expressions in Perl und Powershell

Markiert in:
  3615 Aufrufe

Office Dateiformat / File Format Choice deaktivieren

 Beim ersten Start von Office 2010 erscheint ein Auswahlfenster, welches abfragt, ob das Standard-Microsoft XML-Format zum Speichern von Dokumenten verwendet werden soll, oder das Open Office Format. Diese Abfrage ist einer EU-Auflage geschuldet und läßt sich über einen Registry-key deaktivieren. Erzeugen Sie hierfür einen neuen Schlüssel "ShownFileFmtPrompt" unter "HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Common\General" vom Typ Reg_Dword, den Sie auf 0 setzen.

Schlüssel: HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Common\General
Value: "ShownFileFmtPrompt",Reg_Dword,0

  2665 Aufrufe

Office 2010 automatisch installieren

Bereits seit Office 2000 kommt Office als MSI-Paket. MSI-Pakete beinhalten Informationen darüber, wie der Microsoft Installer eine Installation durchführen soll. Um sich die Informationen eine MSI-Pakets anzeigen zu lassen, bietet Mircosoft z.B. den MSI-Editor Orca aus dem Microsoft Installer SDK an, der allerdings inzwischen nicht mehr offiziell unteratützt wird. Um die Installation eines MSI-Paketes anzupassen, benötigen Sie ein MSP-Paket, das die Einstellungen einer MSI-Datei überschreiben kann.

Mit Office 2010 können Sie eine msp-Datei mit dem Office Customization Tool erstellen. Wenn Ihr Office 2010 dieses nicht bereits enhält (als Bestandteil z.B. eines Enterprise-Agreement), können sie die notwendigen Komponenten bei Microsoft herunter laden, zusammen mit den Administrativen Vorlagen für Office 2010, mit denen Sie Office 2010 per Gruppenrichtlinien steuern können. Um das Office Customization Tool in Office zu integrieren, kopieren Sie die Ordner Admin aus den Unterordnern AdminTools 32 Bit bzw. AdminTools 64 Bit in die jeweiligen Ordner x86 bzw. x64 der Office Installationdateien. Jetzt können Sie über setup /admin direkt das Office Customization Kit aufrufen und die Installationeinstellungen anpassen. Anschliessend speichern Sie Ihre Änderungen einfach als msp-Datei in den Ordner Updates im jeweiligen x86 bzw. x64-Ordner. Wenn Sie nun ein Setup starten, wird die Installation vollautomatisch durchgeführt. Haben Sie mehrere msp-Dateien erstellt, können Sie setup über /adminfile anweisen, welche msp-Datei zur Installation verwendet werden soll.

Alternativ können Sie übrigens auch eine config.xml zur Konfiguration von Office-Installation verwenden.

Links:

Deploy Office 2010 by running setup from a network share
Office Customization Tool in Office 2010
Config.xml file in Office 2010"

  2474 Aufrufe