Раздел hkey текущего программного обеспеченияпользовательWow6432Nodeклассы против раздел hkey текущего пользователяпрограммное обеспечениеклассыWow6432Node

вопрос очень прост, в чем разница между HKEY_CURRENT_USERSoftwareWow6432NodeClasses и HKEY_CURRENT_USERSoftwareClassesWow6432Node?

6 ответов


Я не уверен, но я могу сказать вам, что моя машина Windows 7 x64 имеет только последний. У меня есть HKEY_CURRENT_USER\Software\Wow6432Node\, а Classes не существует внутри меня.


довольно поздно, но вот я иду

Колин О'Делл пишет:

Я не уверен, но я могу сказать вам, что моя машина Windows 7 x64 имеет только последний. У меня есть HKEY_CURRENT_USER\Software\Wow6432Node\, но классов не существует внутри для меня.

и ты не должен был, HKCU на самом деле указатель -> HKUS\UserSid

теперь HKCU\Software\Classes на самом деле указатель -> HKUS\UserSid\Software\Classes, и это на самом деле указатель на HKUS\UserSid_Classes

теперь здесь идет перенаправление WOW, и, например,HKCU\Software\Classes\CLSID будет: HKUS\UserSid_Classes\Wow6432Node\CLSID

разве это не весело?

короче, HKEY_CURRENT_USER\Software\Wow6432Node\Classes, скорее всего, остатки после некоторого неправильного приложения (которое, вероятно, пыталось выяснить перенаправление само по себе...)

jp2code пишет:

у нас есть сотни WinXP машины на рабочем месте до сих пор. Классы установлены на всех из них, но не Wow6432Node

разве вы не говорили о 32-битной Win XP? если это так, то совершенно очевидно, что нет узла Wow...


посмотреть в этой статье: разделы реестра, затронутые WOW64

HKCU\Software\Classes\Wow6432Node is правильно: это перенаправленное местоположение, к которому обращаются 32-битные приложения, когда они просят HKCU\Software\Classes на 64-разрядной машине.

HKCU\Software\Wow6432Node\Classes не должно быть. Если это так, что бы ни написало этот ключ и его подразделы, это ошибка.

на самом деле, я думаю, что HKCU\Software\Wow6432Node не должно существовать - он не указан в этой статье, которую я связал выше, и в моей системе I есть только HKCU\Software\Wow6432Node\Microsoft\Active Setup\Installed Components С несколькими подразделами, что предполагает, что они находятся в неправильном месте.


причина ключа reg" Wow6432Node " и другого ключа заключается в том, что на современных 64-битных машинах мы все еще запускаем много 32-битных приложений. Microsoft, зная это, имеет allsorts mirroing и схемы подмены в реестре, чтобы разобраться во всем этом. Обычно это работает в вашу пользу.

скажем, вы пытаетесь зарегистрировать компонент som в реестре в коде. Все, что вам нужно сделать, это попытаться поместить свои записи в ключ(reg path), который вы думаете, что хотите. Реестр примет это запросите и разберитесь с ним (возможно, поместив его в подкаталог Wow6432Node).

другими словами, 99% времени игнорируют 'Wow6432Node'. Особенно, если вы регистрируете вещи в реестре из кода. Если вы вручную включите "Wow6432Node" в свой путь, ваше приложение будет работать только на 64-разрядных машинах, которые являются единственными, кто использует этот путь reg.)

SUMMARY: его, где windows помещает ваш 32-битный материал на 64-битную машину!!!!!


HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Classes это связано с раздел HKEY_LOCAL_MACHINE классы программного обеспечения\\\Wow6432Node

вы можете прочитать это в самом низу в данной статье.


У меня нет объяснения для подраздела "классы", и я не вижу его на своих собственных машинах, но HKCU...Подраздел Wow6432Node запутывает себя, поскольку он не связан с перенаправлением реестра и не указан в разделе "разделы реестра, затронутые WoW64" MSDN doc. Мне интересно, имела ли OP в виду теоретической" классы "дочерний подраздел "Wow6432Node".

"активная настройка" - это причина, по которой может существовать HKEY_CURRENT_USER\Software\Wow6432Node. Установщики приложений иногда требуют изменений для каждого пользователя при следующем входе пользователя в систему.

при входе в систему, чтобы обнаружить такие изменения, необходимые для 32-разрядных приложений на 64-разрядных Windows, Windows сравнивает [HKLM\SOFTWARE\Wow6432Node\Microsoft\Active Setup\установленные компоненты{GUID}] к [HKCU\Software\Wow6432Node\Microsoft\Active Setup\установленные компоненты{GUID}].

Если подраздел HKLM GUID также не найден в аналогичном расположении HKCU, Windows выполняет операции установки и копирует информацию в [HKCU\Software\Wow6432Node\Microsoft\Active Setup\установленные компоненты] (чтобы операции установки не повторялись).

Итак, часть" Wow6432Node " HKCU... идентификатор подраздела - это просто текст, который соответствует части HKLM... подключ.