Windows 8.1 Images auf neuesten Stand bringen

2 Mai 2015

Hier die offizielle Beschreibung, wie man Images von Windows 8.1 auf den aktuellen Stand bringen kann: https://technet.microsoft.com/en-us/library/dn622020.aspx?f=255&MSPPError=-2147217396.

Dies ist vor allem wichtig, wenn man seinen Rechner auffrischen oder sein Windows über die windowseigene Funktion neu aufsetzen lassen möchte. Führt man obige Anweisungen nicht durch, landet man schnell bei Windows 8.

Aber Vorsicht bei kleineren Geräte mit <= 32GByte Festplatte, da sollte man die Sache nicht anwenden. Der Artikel über WIMBoot geht darauf ein: https://technet.microsoft.com/en-us/library/dn594399.aspx. Microsoft hat damals auch das Disklayout umgestellt, wie die Partitionen künftig aufgeteilt werden sollen.

Temporäre Dateien in Powershell erzeugen

30 April 2015

Lange hat es gedauert aber jetzt ist sie da. Microsoft hat in der April 2015 Preview für Powershell 5.0 eine Funktion für temporäre Dateien implementiert. New-TemporaryFile erzeugt eine temporäre Datei und gibt dessen Dateinamen in Form eines FileInfo-Objekt zurück.

Leider gibt es New-TemporaryFile nicht bei alten Versionen. Aber es gibt ja Polyfills. Hintergründe wie man Polyfills in Powershell erzeugen kann, kann man hier nachlesen: https://newyear2006.wordpress.com/2014/11/17/fehlende-cmdlets-in-powershell-durch-polyfills-nachbilden/.

Auf dieser Basis kann man mittels dieses Scripts die fehlende Funktion nachrüsten:

if (-not (Get-Command New-TemporaryFile -ErrorAction SilentlyContinue)) {
  &{ Function global:New-TemporaryFile ($Parameter) {
            [System.IO.FileInfo][System.IO.Path]::GetTempFileName()
        }
    }
}

Somit kann man bei älteren Powershell-Skripte bereits Funktionen nutzen, welche noch nicht verfügbar sind.

DER Einführungsartikel in WMI/CIM/OMI und Remoting mit Powershell

28 April 2015

Unten stehender Link sollte für jeden Pflicht werden, der irgendwie etwas mit Powershell anfängt. Denn der Artikel bringt die Microsoft Begriffssuppe mit den Dingen DCOM, WMI, CIM, OMI, WS-Man, WS-Management, WinRM usw. alles klar und deutlich in die richtige Perspektive, vor allem auch in Bezug WS-Man.

http://powershell.org/wp/2015/04/24/management-information-the-omicimwmimidmtf-dictionary/

Wie man einen Microsoft Hotfix ohne die direkte Freigabe von Microsoft bekommt

25 April 2015

Per Zufall bin ich über diesen Artikel gestolpert, der beschreibt wie man Microsoft Hotfixe auch ohne Freigabe von MS herunterladen kann:

http://blogs.msmvps.com/connectedhome/2015/04/01/having-trouble-getting-ms-support-to-give-you-a-link-to-a-hotfox-work-around/

Im Prinzip muss nur die URL:

https://support.microsoft.com/en-us/hotfix/kbhotfix?kbnum=XXXXXXXX&kbln=en-us

entsprechend angepasst werden. Es muss XXXXXXXXXX durch die Nummer des KB-Artikel ersetzt werden. Im Einzelfall sollte man noch en-us durch de-de ersetzen, wenn es einen spezifischen Hotfix für deutsche Versionen geben sollte.

Hyper-V schnelles Backup einer VM und anschließende Probleme

23 April 2015

Wenn man meint bei einem Hyper-V mal schnell eine Sicherung einer VHD zu machen (ohne einen Snapshot zu erstellen) und die VHD wegkopiert, dem kann es passieren, dass beim Zurückkopieren der VHD und anschließendem Start der VM folgender Fehler auftaucht:

[Window Title]
Verbindung mit virtuellen Computern

[Main Instruction]
Anwendungsfehler beim Versuch, den Status von "XSlave" zu ändern.

[Content]
Fehler beim Starten von "XSlave".

Microsoft Emulated IDE Controller (Instanz-ID {83F8638B-8DCA-4152-9EDA-2CA8B33039B4}): Fehler "Allgemeiner "Zugriff verweigert"-Fehler" beim Einschalten.

Das IDE/ATAPI-Konto verfügt über keine ausreichenden Berechtigungen zum Öffnen von Anlage "C:\VMs\XSlave\XSlave.vhd". Fehler: "Allgemeiner "Zugriff verweigert"-Fehler"

Das -Konto verfügt über keine ausreichenden Berechtigungen zum Öffnen von Anlage "C:\VMs\XSlave\XSlave.vhd". Fehler: "Allgemeiner "Zugriff verweigert"-Fehler"

[Expanded Information]
Fehler beim Starten von "XSlave" (ID des virtuellen Computers 9B8A8FFF-F35E-4F55-8971-E3B662AE7E3B).

"XSlave" Microsoft Emulated IDE Controller (Instanz-ID {83F8638B-8DCA-4152-9EDA-2CA8B33039B4}): Fehler "Allgemeiner "Zugriff verweigert"-Fehler" (0x80070005) beim Einschalten (ID des virtuellen Computers: 9B8A8FFF-F35E-4F55-8971-E3B662AE7E3B).

"XSlave": Das IDE/ATAPI-Konto verfügt über keine ausreichenden Berechtigungen zum Öffnen von Anlage "C:\VMs\XSlave\XSlave.vhd". Fehler: "Allgemeiner "Zugriff verweigert"-Fehler" (0x80070005). (ID des virtuellen Computers: 9B8A8FFF-F35E-4F55-8971-E3B662AE7E3B)

"XSlave": Das -Konto verfügt über keine ausreichenden Berechtigungen zum Öffnen von Anlage "C:\VMs\XSlave\XSlave.vhd". Fehler: "Allgemeiner "Zugriff verweigert"-Fehler" (0x80070005). (ID des virtuellen Computers: 9B8A8FFF-F35E-4F55-8971-E3B662AE7E3B)

[V] Details einblenden  [Schließen]

In diesem Fall hilft der Datei die passenden Rechte mittels ICACLS zu geben, maßgeblich:

icacls x1slave.vhd /grant "NT Virtueller Computer\9B8A8FFF-F35E-4F55-8971-E3B662AE7E3B:(R,W)"

Näheres findet man hier: https://support.microsoft.com/en-us/kb/2249906/en.

OpenSSL unter Windows einrichten

30 März 2015

Eine schöne Anleitung OpenSSL unter Windows einzurichten und sich Zertifizierungsstellen einzurichten, findet man hier: http://blog.didierstevens.com/2015/03/30/howto-make-your-own-cert-with-openssl-on-windows/

Wertvolle Infos zu Innereien von wichtigen Dateiformaten

28 Februar 2015

Viele relevante Infos zu den Innereien und unterschiedlichen Versionen von Dateiformaten findet man hier: http://www.digitalpreservation.gov/formats/fdd/browse_list.shtml. Dabei werden auch die IANA-Mediatypes, MagicNumbers sowie Informationen über die Entwicklung angegeben. Es finden sich auch jede Menge Links zu weiteren Seiten mit tiefergehenden Details oder Standards.

Batchdatei als Administrator ausführen funktioniert nicht und was dies mit dem &-Zeichen im Benutzernamen zu tun hat

27 Februar 2015

Windows hat so seine Eigenheiten. Aktuell bin ich mal wieder über eine solche gestolpert, wo man sich fragt: Was geht da ab? Kurz zur Geschichte, ein Kunde hatte Probleme mit dem Adobe Reader Update: https://newyear2006.wordpress.com/2014/07/03/adobe-reader-installation-meldet-umgltiges-laufwerk-und-bricht-die-installation-ab/. Meine Antwort darauf war, eine Batchdatei anzulegen und diese mit Adminrechten auszuführen. Nur funktionierte die Variante nicht. Nach einigem hin und her wurde es dann klar, dass keinerlei Batchdatei des Kunden, welche über den Windows Explorer mit rechter Maustaste und “Als Administrator ausführen” angefordert wurde, klappte.

Dazu wurde eine einfach Test.BAT-Batchdatei im Benutzer-Verzeichnis C:\USERS\M&M geschrieben:

@ECHO Hallo
PAUSE

Also nichts weltbewegendes. Führt man diese Batchdatei in der Commandline aus, funktioniert alles wie gewünscht, ob mit oder ohne Adminrechte. Führt man die Batchdatei jedoch im Windows Explorer aus, funktioniert nur die Variante ohne Adminrechte. Bei der Variante mit den Adminrechten wird zwar nach dem Zulassen von CONSENT.EXE mit dem bekannten UAC-Dialog gefragt aber es wird effektiv nichts ausgeführt.

Bei der näheren Analyse mittels Procmon.EXE fiel dann folgendes auf, der Punkt  wo der CMD.EXE-Prozess erzeugt wird, wird die richtige Commandline übergeben:

Parent PID: 1996, Command line: "C:\Windows\System32\cmd.exe" /C "C:\Users\M&M\Test.bat" , …

Einige Zeilen später, wo die .BAT-Datei auf Vorhandensein geprüft wird, findet sich auf einmal diese Zeile:

QueryDirectory  C:\Users\M.*

Wo doch der Benutzer M&M heißt und nicht M.*!!

Und genau da entsteht nun das Problem, so dass wieder einige Zeilen später, der Versuch die Batchdatei zu lesen ins Leere läuft:

CreateFile C:\Windows\system32\M\Test.bat PATH NOT FOUND

Echt interessant! D. h. hier wird der Pfadname quasi in zwei Teile aufgelöst, einmal in C:\Users\M und einmal in M\Test.Bat, was eigentlich C:\Users\M&M\Test.Bat lauten sollte.

Dies bedeutet, dass keine Batchdatei des Benutzers M&M als Administrator ausgeführt werden kann! Sobald man aber hergeht und z. B. ein Verzeichnis C:\TestDir anlegt, dort die Test.BAT-Datei ablegt und diese als Administrator ausführt klappt wieder alles.

Was lernen wir daraus: Verwende unter Windows niemals einen Benutzernamen mit einem &-Zeichen!

Dieses Phänomen tritt von Windows 7 bis Windows 10 auf, wahrscheinlich sind aber generell auch ältere Versionen davon betroffen. Man könnte es zwar durch Escapen des &-Zeichen lösen aber im Punkt bei “Ausführen als Administrator” sind einem die Hände gebunden. Hier wird das Escapen beschrieben: http://www.robvanderwoude.com/escapechars.php.

Wireshark bleibt bei 100% beim Laden der Konfigurationsdateien hängen

23 Februar 2015

Scheinbar ein bekanntes Phänomen mit Windows 8.1 und dem Starten von Wireshark, dass Wireshark bei der Anzeige mit dem Laden der Konfigurationsdateien bei 100% hängen bleibt. Das Problem dabei ist nicht Wireshark selber sondern DUMPCAP.EXE welches direkt von Wireshark aus gestartet wird. Dies scheint irgendeine Info nicht zu bekommen und lässt dann alles hängen.

Im aktuellen Fall half der Artikel https://ask.wireshark.org/questions/26361/loading-configuration-files mit dem Hinweis

sc config npf start= delayed-auto

und Neustart des Rechners.

NPF steht für “NetGroup Packet Filter Driver” und ist ein Kerneltreiber.

C:\WINDOWS\system32>sc qc npf
[SC] QueryServiceConfig ERFOLG

SERVICE_NAME: npf
        TYPE               : 1  KERNEL_DRIVER
        START_TYPE         : 2   AUTO_START  (DELAYED)
        ERROR_CONTROL      : 1   NORMAL
        BINARY_PATH_NAME   : system32\drivers\npf.sys
        LOAD_ORDER_GROUP   :
        TAG                : 0
        DISPLAY_NAME       : NetGroup Packet Filter Driver
        DEPENDENCIES       :
        SERVICE_START_NAME :

Offenbar gab es damit auch schon früher Probleme mit Windows 7 und Wireshark: https://ask.wireshark.org/questions/1281/npf-driver-problem-in-windows-7.

Das eigentliche Problem scheint aber WinPCap zu sein, denn NPF.SYS ist der Kerneltreiber von WinPCap:

C:\> powershell -command "& {(get-item C:\windows\system32\drivers\npf.sys).VersionInfo.ProductName}"
WinPcap

Ganz einfach WLAN-Sicherheitsschlüssel unter Windows auslesen

23 Februar 2015

Ich hab hier früher schon einmal eine Methode beschrieben, wie man WLAN-Netzwerkkennwörter per Commandline auslesen kann: https://newyear2006.wordpress.com/2013/01/02/wifi-netzwerksicherheitsschlssel-unter-windows-per-powershell-auslesen/. Die Variante funktioniert, ist aber entsprechend aufwändig. Was wenn nun von Haus aus eine viel einfachere Methode existiert?

Na dann nutzen wir diese halt:

netsh wlan show profiles

listet zunächst die verfügbaren WLAN-Profile auf. Den Schlüssel dafür bekommt man mittels:

netsh wlan show profiles "Mein WLAN-Netzwerkname" key=clear

Dabei löscht clear nichts, sondern sagt lediglich, dass der Netzwerkschlüssel im Klarnamen angezeigt werden soll.

So sieht der Aufruf konkret z. B. bei einer Fritzbox aus:

netsh wlan show profiles "Fritz!Box 7490" key=clear

Die Sache funktioniert bereits bei Windows 7! Für Windows 8 gibt es sogar eine offizielle Doku: http://windows.microsoft.com/de-at/windows-8/manage-wireless-network-profiles.

Viel Spaß beim Stöbern…


Folgen

Erhalte jeden neuen Beitrag in deinen Posteingang.