Нужда поставить SQL Server 2005 Express на десктоп стала совсем большой, поэтому предпринял еще одну попытку. И опять получил БСоД. Пришлось основательно погуглить, чтобы все-таки выяснить причину сего недоразумения.
А причина такова. Система падает, когда Csrss.exe (Client-Server Runtime Subsystem) загружает файл .exe или .dll, содержащий манифест с включенными в него расширениями для Windows Vista. Когда он парсит этот манифест и встречает тэг с двумя атрибутами схемы, происходит Heap Corruption. Пример такого тэга:
Когда Csrss.exe встречает подобный тэг, испорченная память вызывает в нем access violation. Поэтому выскакивает бсод и система перезагружается.
Добросовестные пользователи, регулярно обновляющие систему, с такой ошибкой скорей всего не встретятся. С ней не встретился и мой почти добросовестный нетбук. Но поскольку мой десктоп таким не является, пришлось повозиться. Исправленную версию библиотеки Sxs.dll можно скачать
здесь.
Теперь вроде все ок =)
UPD: Само собой, такая ошибка возникает только на Windows XP SP2. Проблема обратной совместимости, да...