Версия винды вне реестра?

Мне нужно взять старое программное обеспечение, созданное в 4D 2004 (вы, вероятно, никогда не слышали о 4D, но это не имеет значения), и сделать его совместимым с Windows 7, обманув его и заставив его поверить, что он работает под Windows XP.

Я думал, что приложение получает номер версии окон из HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion, и что я могу изменить это значение, но я ошибался ... Даже если я изменяю значения в реестре, возвращается номер версии окон по моему приложению всегда одно и то же:

498139398 для Windows 7

170393861 для windows XP

Это значение содержит версию Windows (эта ссылка объясняет, как извлечь номер версии) но я не знаю, откуда это было взято.

Если вы погуглите эти числа, вы обнаружите, что другие приложения ссылаются на тот же номер версии.

Я попытался найти, какой реестр использовался приложением с помощью Process Monitor, но ни один из реестров, к которым обращалось приложение, похоже, не связан с версией Windows.

Кто-нибудь знает, откуда могут взяться эти ценности? Могло ли это быть вне реестра / где-то жестко запрограммировано?


person The_Black_Smurf    schedule 08.03.2012    source источник
comment
Вы изменили _1 _? !! Ты сумасшедший?!!!   -  person David Heffernan    schedule 08.03.2012
comment
LOL ... Я знал, что кто-то так скажет. Это было на виртуальной машине, которую я создал только для этого теста. И угадайте, что, когда вы перезагрузите компьютер, Windows вернет CurrentVersion обратно в исходное значение. Это означает, что версия Windows также хранится вне реестра.   -  person The_Black_Smurf    schedule 08.03.2012
comment
Ну, конечно, версия для Windows там не хранится. Вам нужно сделать гораздо больше, чем просто изменить строку версии. Вам нужен режим совместимости именно так, как говорит Бен.   -  person David Heffernan    schedule 08.03.2012


Ответы (1)


В Windows уже есть инструменты для этого. Вы пробовали щелкнуть программу правой кнопкой мыши, выбрать «Свойства» и просмотреть вкладку «Совместимость»?

Для более сложных уловок исследуйте «Microsoft Application Compatibility Toolkit».

person Ben Russell    schedule 08.03.2012
comment
Спасибо! Теперь я получил нужную версию Windows. Отключение визуальных тем также устранило некоторые проблемы в пользовательском интерфейсе. - person The_Black_Smurf; 08.03.2012