4

Наконец я решил обновить свой рабочий стол с 64-разрядной версии Windows Vista SP2 до 64-разрядной версии Windows 7. Поэтому я получил 64-битный DVD-диск с Windows 7 Professional, вставил его в компьютер, запустил программу установки и сказал обновить.

Установщик сказал мне, что некоторые вещи могут быть несовместимы с обновлением, поэтому я отменил установку и запустил помощник по обновлению. Я удалил программы и удалил драйверы, которые были несовместимы.

Обновление дошло до последнего шага (восстановление настроек); доходит до 92%, но я больше не хотел на него пялиться, поэтому вышел из комнаты. Когда я вернулся, он перезагружался обратно в Vista с сообщением «Извините, обновление не удалось».

Я немного погуглил и обнаружил, что людям повезло после удаления таких вещей, как Wireshark и драйверы ATI. Сделал это, попробовал еще раз, все равно откатился.

Я посмотрел в журналах, в частности C:\$WINDOWS.~BT\Sources\Panther\setupapi\setupapi.app.log , и нашел следующую строку. (Каждый раз, когда я пытаюсь обновить устройство в этой строке отличается. Это самая последняя запись в журнале, я не сохранил старые.)

!    cci: !NCI: Op=BIND, Layer=NDIS, Upper=Tcpip6 Lower=\Device\{9A2D9804-A610-4D0B-8B8B-392406EE148F}, Error=00000019

Я подумал, что это проблема с моими сетевыми устройствами, поэтому я удалил все (из диспетчера устройств), кроме моего порта Ethernet и минипортов WAN (я не могу удалить их, когда я удаляю их из диспетчера устройств, ничего не происходит). Я также снял флажок IPv6 на странице свойств моей сетевой карты.

Это все еще не помогло, оно все еще откатывалось после того, как я попытался обновить.

Я знаю, что могу (читай: должен) выполнить чистую установку, но я хочу, чтобы это обновление заработало. У кого-нибудь есть идеи, как заставить это обновление работать? У меня удалены драйверы моей видеокарты (ATI), все USB-устройства отключены, все сетевые устройства (кроме моего порта Ethernet и мини-портов WAN) удалены, все программы, которые советник по обновлению Windows сказал мне удалить, удалены. Что может вызвать сбой обновления Windows и откат к Vista?

PS Только сейчас я нашел список всех файлов журнала обновления Windows 7: http://support.microsoft.com/kb/927521.

PPS Вот копия моего C:\$WINDOWS.~BT\sources\Rollback\setuperr.log (которого, как ни странно, нет в списке файлов журнала Microsoft): http://pastebin.com/X03Azd5U.

РЕДАКТИРОВАТЬ: Я посмотрел на C:\$WINDOWS.~BT\Sources\Panther\setuperr.log и нашел это:

2011-10-03 22:19:03, Error      [0x080a97] MIG    HKLM\Software\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Drivers32 [msacm.l3codecp] is not a valid registry value[gle=0x00000002]
2011-10-03 22:19:25, Error      [0x0808fe] MIG    Plugin {e0cbf06c-cd8b-4647-bb8a-263b43f0f974}: BthMig: Failed to migrate bthport keys, bailing out

Некоторые основные Google нашли эту ветку на форумах Microsoft, может быть, это поможет (см. Стр. 2). Я собираюсь попробовать установить MIG_UPGRADE_IGNORE_PLUGINS в bthmigplugin.dll , посмотрим, что произойдет.

РЕДАКТИРОВАТЬ 2: Вот полное содержимое C:\$WINDOWS.~BT\Sources\Panther\setuperr.log (после запуска обновления с MIG_UPGRADE_IGNORE_PLUGINS установленным в bthmigplugin.dll): http://pastebin.com/ydKFRSL6

2011-10-04 23:24:18, Error                        Failed to find driver file path. Error=00000002x[gle=0x80092004]

Изменить 3: Я нашел другой поток SU: и, как он предложил, установил WinDBG. У меня не было C:\$WINDOWS.~BT\Sources\setupmem.dmp , но у меня был C:\$WINDOWS.~BT\Sources\Panther\setupmem.dmp . Я открыл его в WinDBG, и он сказал (Полный вывод: http://pastebin.com/3476mx1m):

WINLOGON_FATAL_ERROR (c000021a)
The Winlogon process terminated unexpectedly.
Arguments:
Arg1: fffff8a001f916c0, String that identifies the problem.
Arg2: 0000000000000001, Error Code.
Arg3: ffffffffc0000001
Arg4: 0000000000110bd8

Редактировать 4: Я также разместил это на форумах Microsoft: ссылка.

Теперь мы можем куда-нибудь добраться!

Редактировать 5: Я посмотрел в C:\$WINDOWS.~BT\Sources\Panther\setupact.log , который является 136 МБ лог-файлом, и нашел что-то действительно полезное.

2011-10-10 21:20:34, Info                         [NdisCompl: Enter HrGetComponentID]
2011-10-10 21:20:34, Info                         ComponentID=ms_netbt_smb
2011-10-10 21:20:34, Info                         [NdisCompl: Exit HrGetComponentID]
2011-10-10 21:20:34, Info                         [NdisCompl: Enter HrGetComponentDriverFilePath]
2011-10-10 21:20:34, Error                        Failed to find driver file path. Error=00000002x[gle=0x80092004]
2011-10-10 21:20:34, Info                         [NdisCompl: Exit HrGetComponentDriverFilePath]


2011-10-10 21:20:35, Info                         [NdisCompl: Enter HrGetComponentID]
2011-10-10 21:20:35, Info                         ComponentID=ms_rasman
2011-10-10 21:20:35, Info                         [NdisCompl: Exit HrGetComponentID]
2011-10-10 21:20:35, Info                         [NdisCompl: Enter HrGetComponentDriverFilePath]
2011-10-10 21:20:35, Info                         ServiceName = RasMan
2011-10-10 21:20:35, Info                         FilePathLen = 56
2011-10-10 21:20:35, Info                         FilePath = C:\Windows\%SystemRoot%\system32\svchost.exe -k netsvcs
2011-10-10 21:20:35, Info                         Service Binary C:\Windows\%SystemRoot%\system32\svchost.exe -k netsvcs, is not a driver file
2011-10-10 21:20:35, Error                        Failed to find driver file path. Error=ffffffffx[gle=0x00000003]
2011-10-10 21:20:35, Info                         [NdisCompl: Exit HrGetComponentDriverFilePath]

Я пытался сделать netcfg -e -u ms_netbt_smb и netcfg -e -u ms_rasman , но ничего не произошло.

C:\Users\NTICompass>netcfg -e -u ms_netbt_smb
Trying to uninstall ms_netbt_smb ...

...done.


C:\Users\NTICompass>netcfg -e -u ms_netbt_smb
Trying to uninstall ms_netbt_smb ...

...done.


C:\Users\NTICompass>

Кажется, он не хочет удалять. Как мне удалить ms_netbt_smb и ms_rasman?

Редактировать 6: я удалил ms_netbt_smb и ms_rasman , просматривая реестр и удаляя ключи, которые на них ссылались. Теперь мой setuperr.log пуст, и я все еще получаю cci: !NCI: Op=BIND, Layer=NDIS, Upper=Tcpip6 error. Я задал этот вопрос в качестве отдельного вопроса: обновление до Windows 7 откатывается до Vista , поскольку этот вопрос становится довольно длинным и грязным.

3 ответа3

2

Запустите советник по обновлению Windows 7, посмотрите, помечает ли он какое-либо программное обеспечение или драйверы, удалите то, что предлагается, перед обновлением.

http://windows.microsoft.com/upgradeadvisor

Редактировать:

Вот причины ошибки 21а

Несоответствующие системные файлы были установлены.

Установка пакета обновления не удалась.

Программа резервного копирования, используемая для восстановления жесткого диска, неправильно восстановила файлы, которые могли быть использованы.

Установлена несовместимая сторонняя программа.

Источник (не для Vista или W7, но может помочь в диагностике)

,

1

Обновление с Vista до Windows 7 похоже на обновление с Windows ME до Windows XP. Это возможно, и 1/100 может быть немного удачи, но все же не делает это хорошей идеей. Я бы сказал, сделайте резервную копию ваших данных, отформатируйте и сделайте новую установку.

Отредактировано, чтобы сделать Ramhound счастливым.

РЕДАКТИРОВАНИЕ: Откат может также произойти, если на компьютере установлен сторонний драйвер Sptd.sys. Этот драйвер распространяется с несколькими приложениями, такими как Daemon Tools и Alcohol 120%. Перед обновлением компьютера до Windows 7 вы можете временно удалить стороннее программное обеспечение для создания или виртуализации CD/DVD, которое может содержать этот драйвер.

0

Различия между Vista и Windows 7 довольно минимальны, при использовании той же архитектуры драйверов, поэтому обновление / понижение должно было работать.

Конечно, возможно, что, как это иногда бывает, обновление вашего компьютера невозможно без новой установки, но также возможно, что преобразование Enterprise в Professional вызвало проблему.

Переход с Enterprise на Professional официально не поддерживается, но возможен через взлом реестра, как и вы.

Однако, поскольку у вас есть 64-разрядная версия, изменения должны быть сделаны в двух разделах реестра:
HKLM\Software\Microsoft\Windows NT\CurrentVersion\
HKLM\Software\Wow6432Node\Microsoft\Windows NT\CurrentVersion .

Поскольку 64-битная Windows на самом деле представляет собой гибрид 32-битного и 64-битного кода, проблемы могли возникнуть, потому что можно обновить только 64-битную версию, поскольку вы не взломали ключ реестра для 32-битной версии.

Для получения дополнительной информации см. Статью « Обновление с Windows 7 до уровня Ultimate», «Professional» или «Home Premium», в которой также предлагается инструмент Windows 7 Downgrader для выполнения этой работы.

Я предлагаю вам попытаться восстановить, если это возможно, Vista за время до того, как вы начали взламывать, затем использовать инструмент Downgrader, перезагрузить компьютер, проверить перечисленные выше ключи реестра, и, если все хорошо, попробуйте снова выполнить обновление.

Попробуйте инструмент Downgrader перед повторным обновлением, даже если вы не можете восстановить реестр обратно.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .