Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Пользователь


Сообщения: 96
Благодарности: 24

Профиль | Отправить PM | Цитировать


Я понял, почему происходит вот это:

Цитата:
Кроме того, интеграция IE7 меняет следующие файлы из KB928090 для IE6 на более старые версии из дистрибутива IE7:
Код: Выделить весь код
browseui.dll - 6.0.2900.3059 -> 6.0.2900.2995
shlwapi.dll - 6.0.2900.3059 -> 6.0.2900.2987
shdocvw.dll - 6.0.2900.3059 -> 6.0.2900.2995
Если интегрировать одновременно KB928090 для IE6 и IE7 с интегрированным KB928090 для IE7, файл KB928090.CAT для IE6 перезатирается файлом KB928090.CAT для IE7. Из-за этого вышеупомянутые dll остаются без цифровой подписи, и происходит их перезатирание более старыми версиями, но с цифровой подписью.

И именно из-за подписи все получается хорошо, если не интегрировать IE7 в дистрибутив, но оставить KB928090 для IE6: все файлы имеют цифровую подпись. Затем в обычном порядке устанавливаем IE7. Он видит, что эти три dll в его составе более старые по сравнению с уже установленными, и не заменяет новые из комплекта KB928090 для IE6 на свои старые, потому что у новых есть нормальная цифровая подпись (KB928090.CAT для IE6).

И то же самое происходит, если интегрировать в дистрибутив одновременно KB928090 для IE6 и IE7 с интегрированным KB928090 для IE7, но удалить оба CAT-файла. Установщик IE7 видит, что внутри него содержатся более старые файлы, чем уже имеющиеся, ни у тех, ни у тех нет цифровой подписи, и он не заменяет новые из комплекта KB928090 для IE6 на свои старые.

Итого: для того, что в дистрибутив можно было интегрировать одновременно KB928090 для IE6 и IE7 с интегрированным KB928090 для IE7, нужно сделать так, чтобы KB928090.CAT для IE6 не перезатирался файлом KB928090.CAT для IE7. Просто переименование одного из них не срабатывает, я попробовал. Возможно, нужно вносить изменения в какой-нибудь INF-файл, но там я не нашел ссылок на CAT-файлы. Для меня загадка, как Windows узнает, в каком именно CAT-файле следует искать цифровую подпись для того или иного файла.

Похоже, после переименования CAT-файл становится недействительным.

Последний раз редактировалось iSmart, 21-02-2007 в 09:06.

Это сообщение посчитали полезным следующие участники:

Отправлено: 06:17, 21-02-2007 | #328