> Не должен. Но и поставленная задача по замене файла выполнена не
> будет.
Не понял, что ты хотел этим сказать. Цена за замену файла BSOD? какая то дешевка получается.
> А кто сказал, что не системных?
Любая уважающая себя софтверная компания должна всеми силами пытатся избежать ситуации при которой какие либо изменения вызванные при обновлении не должны валить систему в BSOD. Да проверить, сказать что не возможно это сделать скажем без перезагрузки (тогда отработает MoveFileEx без всяких проблемм), а не валить молча.
> А если игра устанавливает в систему
> какой-то драйвер, который загружается при старте системы, а патч
> должен его заменить, т.е. выгрузить из памяти, переписать на диске и
> загрузить вновь.
Если разработчики драйвера умные люди, они придумасматривают возможность выгрузки драйвера на лету, без последствий - если такой возможности нет Unload Routine просто не вызывается, и драйвер живет в системе до перезагрузки.
> А версия системы не та, что нужно, драйвер обращается не по тем
> адресам, вот и BSOD.
Благо друзья из MS позаботились о обратной совместимости своих систем и стека драйверов. Но даже если новый драйвер всетаки загрузился и пробует что то там делать с критически важдыми систеными данныеми, доступ к которые получает каким то особым способом, должен проверить версию системы и ничего не делать в случае не совместимости. Опять же если это не так... то снова криворукость программеров.
Итого из всего этого можно сделать вывод: все это можно взять и исправить, и не валится в BSOD. Так нет же... советуем обновите систему, потому что нам лень писать совместимый код под более раннии ОС.
> Paint.net - System Requirements:
> Windows 7 (recommended), or Windows XP SP3, or Windows Vista SP1
> (SP2 and Platform Update recommended).
М-да, благодоря линивым NET программистам, имеем банальную задачу, для решених которых нужно тянуть вагон и маленькую тележку никому не нужных библиотек.
|