PC-Experience (https://www.pc-experience.de/wbb2/index.php)
- Artikel und Workshops: (https://www.pc-experience.de/wbb2/board.php?boardid=60)
-- Windows Vista, Tipps und Tricks: (https://www.pc-experience.de/wbb2/board.php?boardid=88)
--- Windows Vista: Winsxs, was steckt dahinter? (https://www.pc-experience.de/wbb2/thread.php?threadid=24429)


Geschrieben von Cerberus am 25.03.2007 um 09:22:

Achtung Windows Vista: Winsxs, was steckt dahinter?

Dem einen oder anderen ist es vielleicht schon aufgefallen, unter C:\Windows befindet sich ein Systemordner namens Winsxs , der eine nicht unbeträchtliche Größe erreichen kann...





Stellt sich die Frage: welche Funktion hat dieser Ordner...?

Antwort: eine der Wichtigsten überhaupt...

Während vorherige Windows Versionen grundsätzlich alte DLL-Versionen durch neuere ersetzt haben, speichert Vista die DLLs als Kopien im Winsxs (Windows side by side) Ordner. Der kann so natürlich auf mehrere GB ansteigen, wenn man viele Anwendungen installiert. Auch dies ist ein Grund dafür, warum eine Vista Partition grundsätzlich nicht zu klein gewählt sein sollte...

Die Vorteile liegen auf der Hand, ähnlich wie unter Linux, erlaubt Vista einem externen Programm nicht mehr, systemeigene DLLs zu überschreiben, was ja bekanntlich nicht selten zu extremen Systemkollapsen führen kann. Winsxs verwaltet nun die Programme, die andere Versionen einer DLL installieren, so kann jedes Programm auf die jeweilige DLL zugreifen, die es benötigt.

Um das Prozedere mal in einem kleinen Beispiel zu deutlichen: Windows XP hat zwei Versionen der COMCTL32 Library (DLLs) und neue Programme können wiederum andere Versionen installieren. Diese anderen Versionen werden nun aber in WinSxS gespeichert und so kann jedes Programm die DLLs aufrufen, die sie braucht.

Normalerweise entfernen die Uninstall-Routinen der Anwendungen ihre DLLs automatisch aus dem Verzeichnis und wenn sie es dann doch nicht tun, weil die Deinstallationsroutine schwächelt oder Programme vom User einfach gelöscht anstatt deinstalliert zu werden, so registriert Vista dies und entfernt überflüssige DLLs aus dem Verzeichnis nach kurzer Zeit automatisch, ein nicht zu unterschätzender Vorteil.

In dem Winsxs Ordner liegt aber noch wesentlich mehr, z.B. die Deinstallationsroutinen für eure installierten Patches und Hotfixes, so daß es immer möglich sit, einen quersitzenden Patch sauber zu deinstallieren. Denn eines ist euch sicherlich aufgefallen, die Liste mit $NtUninstallKBXXXXXX$ Dateien gibt es nicht mehr.

Wer nun denkt, diesen Ordner löschen oder anderweitig manipulieren zu können, begibt sich in gefährliches Fahrwasser, denn das führt in kürzester Zeit unweigerlich eine Neuinstallation nach sich, also Finger weg...! außerdem ist dieser Ordner sehr wichtig, falls über sfc /scannow einmal das System auf Integrität getestet werden soll, dann stellt Windows über die Kopien in dem Winsxs Ordner beschädigte Dateien wieder her, sofern unbeschädigt und vorhanden.







Außerdem sind dazu Superadmin-Rechte notwendig, die kein Admin standardmäßig besitzt und das ist gut so...


Wer sich mit dem Thema Side-by-side Assemblies etwas intensiver befassen möchte, der kann dies gerne tun und zwar in diesem Microsoft Artikel ...




Cerberus


Forensoftware: Burning Board , entwickelt von WoltLab GmbH