Archive for November 2017

Virtuelle Soundkarte für Windows

30 November 2017

Bei den vielen virtuellen Maschinen mit denen man es heutzutage zu tun hat, gibt es manchmal eine Situation, wo man gerne Sound hören würde. Aber je nach Zugang zur VM ist dies evtl. nicht möglich.

Zum Glück gibt es eine einfache Möglichkeit dieses Problem zu lösen. Man installiert einfach eine virtuelle Soundkarte. Bewährt hat sich Cable von VB Audio: https://www.vb-audio.com/Cable/. Das Programm ist umsonst und ist schnell installiert. Es funktioniert tadellos unter Windows 10 auf x86 sowie x64 Basis.

Advertisements

Logging Komponenten bei Windows 10 Updates und Installationen

27 November 2017

Bei Windows gibt es mehrere setupact.log-Dateien. In diesen wird der komplette Update- bzw. Installationsprozess dokumentiert. Bei den Logeinträgen gibt es die sogenannten Logging-Komponenten. Eine Beschreibung von Microsoft https://docs.microsoft.com/en-us/windows/deployment/upgrade/resolve-windows-10-upgrade-errors#log-entry-structure nennt dabei diese Komponenten:

Kürzel Beschreibung
CONX compatibility information
MOUPG main upgrade component?
PANTHR ?
SP setup platform
IBSLIB Image-based Setup (Lib?)
MIG migration engine
DISM Deployment Image Servicing and Management
CSI Component Servicing Infrastructure
CBS Component-Based Servicing

Wie das immer so ist mit den Beschreibungen, enthält die Realität mehr Überraschungen parat. Wenn man ein aktuelles Windows 10 v1709 mittels dieses Scripts

Get-Content .\setupact.log | % {If ($_) { If ($_.Substring(0, 1)) {  If ($_.length -gt 48) { If ($_.SubString(19, 1) -eq ",") { $_.Substring(43, 6)}}}} }| sort -Unique | ? {$_.trim() -gt 0} | % {$_.trim()}

untersucht, dann kommen weitere Logging-Komponenten zum Vorschein:

Kürzel Beschreibung
DIAG diagnose?
DU Driver/device updates
IBS Image-based Setup
SYSPRP System Preparation

Lässt man obiges Script auf eine erfolgreiche Windows 10 Update-Installation los, wo sich die SetupAct.log in C:\Windows\Panther befindet, dann tauchen noch ein paar Komponenten mehr auf:

Kürzel Beschreibung
CMI  
DIAGER diagnose error?
SXS side by side?
TOOL  
UI user interface?

Hier nochmal alle bisher gefundenen Komponenten in einer Tabelle:

Kürzel Beschreibung
CONX compatibility information
MOUPG main upgrade component?
PANTHR ?
SP setup platform
IBSLIB Image-based Setup (Lib?)
MIG migration engine
DISM Deployment Image Servicing and Management
CSI Component Servicing Infrastructure
CBS Component-Based Servicing
DIAG diagnose?
DU Driver/device updates
IBS Image-based Setup
SYSPRP System Preparation
CMI  
DIAGER diagnose error?
SXS side by side?
TOOL  
UI user interface?

Die SetupAct.log kann man an verschiedenen Stellen finden, je nach Phase des Updatevorgangs. Hier die möglichen Verzeichnisse:

Phase Pfad
Down-Level $Windows.~BT\Sources\Panther
OOBE $Windows.~BT\Sources\Panther\UnattendGC
Rollback $Windows.~BT\Sources\Rollback
Pre-initialization (prior to downlevel) Windows
Post-upgrade (after OOBE) Windows\Panther

Für weitere Unternehmungen in Powershell hier die bekannten Komponenten:

$klc="CONX", "MOUPG", "PANTHR", "SP", "IBSLIB", "MIG", "DISM", "CSI", "CBS", "DIAG", "DU", "IBS", "SYSPRP", "CMI",
"DIAGER", "SXS", "TOOL", "UI"

und so kann man feststellen, ob man es mit neuen Komponenten zu tun hat:

Get-Content .\setupact.log | % {If ($_) { If ($_.Substring(0, 1)) {  If ($_.length -gt 48) { If ($_.SubString(19, 1) -eq ",") { $_.Substring(43, 6)}}}} }| sort -Unique | ? {$_.trim() -gt 0} | % {$_.trim()}| % {If (-not ($_ -in $klc)) {$_}}

Nicht schön aber selten ;–)

Problem mit Downloads bei Microsoft?

9 November 2017

Aktuell war es nicht möglich bestimmte Versionen von Windows bei Microsoft herunterzuladen. Es war immer nur ein Kreis mit Loading zu sehen. Ältere Versionen erschienen, aber nicht die gewünschten Windows 10 v1709 Versionen. Dank dieses Beitrags in den MS-Foren funktionierte es dann: https://social.msdn.microsoft.com/Forums/en-US/69db3839-03b7-4d72-854b-b5867c0d5514/only-loading-notice-when-searching-a-product-on-myvisualstudiocomdownloads?forum=msdnfeedback.

Der Trick war die Sprache im Chrome bei den Einstellungen erreichbar unter chrome://settings/languages von Deutsch auf Englisch umzustellen. Danach ein Refresh der betreffenden Seite und auf einmal funktionierte alles.

Was hat es mit FLTMC.EXE auf sich?

8 November 2017

Mit FLTMC.EXE kann man unter Windows Filtertreiber für Dateisysteme managen. Was sind nun Filtertreiber? Filtertreiber sind Kerneltreiber, welche zwischen anderen Treibern eingeschoben werden können, um bestimmte zusätzliche Funktionen realisieren zu können. Als da wären der Virenscanner, Dateikontingente usw.

Ruft man bei einem Windows 10 (v1703) FLTMC.EXE auf so erhält man z. B. als Ausgabe:

Filtername       Anzahl von Instanzen    Höhe    Frame
—————  ——————–    —-    —–
WdFilter                      6       328010         0
storqosflt                    0       244000         0
wcifs                         1       189900         0
FileCrypt                     0       141100         0
luafv                         1       135000         0
npsvctrig                     1        46000         0
Wof                           4        40700         0
FileInfo                      6        40500         0

Damit weiß man schon mal welche Filtertreiber bekannt sind und welche durch laufende Instanzen aktiv sind. Aber welche ist nun für was zuständig?

Um dies rauszufinden hilft ein kleiner Powershell-Aufruf:

fltmc|Out-String -Stream|select -skip 3|% {($_ -split ‚ ‚)[0]}|% {Get-ChildItem "C:\windows\system32\drivers\$_.sys"}| select name, @{n="Description";e={$_.VersionInfo.FileDescription}}

Name           Description
—-           ———–
WdFilter.sys   Microsoft antimalware file system filter driver
storqosflt.sys QoS-Filter für Speicher
wcifs.sys      Windows Container Isolation FS Filter Driver
FileCrypt.sys  Windows sandboxing and encryption filter
luafv.sys      LUA-Filtertreiber zur Dateivirtualisierung
npsvctrig.sys  Named pipe service triggers
Wof.sys        Windows-Überlappungsfilter
FileInfo.sys   FileInfo Filter Driver

Filtertreiber die nicht gestartet sind, tauchen in der Liste nicht auf. So taucht ein weiterer Treiber auf, wenn z. B. die OneDrive-Unterstützung mittels des cldflt-Dienst gestartet wird, indem man Start-Service cldFlt aufruft:

Name           Description
—-           ———–
WdFilter.sys   Microsoft antimalware file system filter driver
storqosflt.sys QoS-Filter für Speicher
wcifs.sys      Windows Container Isolation FS Filter Driver
CldFlt.Sys    Cloud Files Mini Filter Driver
FileCrypt.sys  Windows sandboxing and encryption filter
luafv.sys      LUA-Filtertreiber zur Dateivirtualisierung
npsvctrig.sys  Named pipe service triggers
Wof.sys        Windows-Überlappungsfilter
FileInfo.sys   FileInfo Filter Driver

Ähnlich verhält es sich, wenn man z. B. Kaspersky Interent Security installiert, dann verschwindet auf einmal der WdFilter.sys von Microsoft und es taucht KLIF.sys auf:

Name           Description
—-           ———–
KLIF.sys      Core System Interceptors [fre_win8_x64]
storqosflt.sys QoS-Filter für Speicher
wcifs.sys      Windows Container Isolation FS Filter Driver
CldFlt.Sys    Cloud Files Mini Filter Driver
FileCrypt.sys  Windows sandboxing and encryption filter
luafv.sys      LUA-Filtertreiber zur Dateivirtualisierung
npsvctrig.sys  Named pipe service triggers
Wof.sys        Windows-Überlappungsfilter
FileInfo.sys   FileInfo Filter Driver

Die Treiber hängen alle vom Filtermanager-Dienst ab. Wenn man den zugehörigen Dienst abfragt, findet man noch weitere Infos, vor allem abhängige Treiber die nicht mittels FLTMC.EXE bearbeitet werden können:

(get-service fltmgr).DependentServices|where status -eq running

Name       DisplayName
—-       ———–
vmcompute  Hyper-V-Hostserverdienst
Wof        Windows Overlay File System Filter Driver
FileInfo   File Information FS MiniFilter
WdFilter   Windows Defender Antivirus-Minifiltertreiber
wcifs      Windows Container Isolation
storqosflt QoS-Filter für Speicher – Treiber
luafv      UAC-Dateivirtualisierung
SysMain    Superfetch
FileCrypt  FileCrypt

Man sieht, dass die Namen sich mit den FLTMC-Namen deckt aber die Bezeichnungen der Dienste von den Dateibeschreibungen vereinzelt abweicht.

Detaillierte Infos zu den einzelnen Diensten findet man hier: https://notesfromthedatacenter.wordpress.com/tag/fltmc/

Schaut man sich die Ausgabe von FLTMC.EXE an, dann gibt es noch die Spalte Höhe bzw. Altitude, dahinter verbirgt sich eine Nummer. Dabei sind dies keine willkürlichen Nummern, sondern es gibt gewisse Nummernblöcke. D. h. jeder Treiber ist einem bestimmten Block zugeordnet:

Block Beschreibung
420000 – 429999 Filter
400000 – 409999 FSFilter Top
360000 – 389999 FSFilter Activity Monitor
340000 – 349999 FSFilter Undelete
320000 – 329998 FSFilter Anti-Virus
300000 – 309998 FSFilter Replication
280000 – 289998 FSFilter Continuous Backup
260000 – 269998 FSFilter Content Screener
240000 – 249999 FSFilter Quota Management
220000 – 229999 FSFilter System Recovery
200000 – 209999 FSFilter Cluster File System
180000 – 189999 FSFilter HSM
170000 – 174999 *FSFilter Imaging (ex: .ZIP)
160000 – 169999 FSFilter Compression
140000 – 149999 FSFilter Encryption
130000 – 139999 FSFilter Virtualization
120000 – 129999 FSFilter Physical Quota Management
100000 – 109999 FSFilter Filter Open File
80000 – 89999 FSFilter Security Enhancer
60000 – 69999 FSFilter Copy Protection
40000 – 49999 FSFilter Bottom
20000 – 29999 FSFilter System

Quelle: https://docs.microsoft.com/en-us/windows-hardware/drivers/ifs/allocated-altitudes. Welche Bedeutung die jeweiligen Blöcke haben, findet man hier: https://docs.microsoft.com/en-us/windows-hardware/drivers/ifs/load-order-groups-and-altitudes-for-minifilter-drivers.