SQL Server и BSoD. Эпилог

Apr 06, 2009 18:12

Нужда поставить 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. Проблема обратной совместимости, да...

windows, sql server, csrss

Previous post Next post
Up