1

我需要一个在 4D 2004 中构建的旧软件(您可能从未听说过 4D,但没关系)并通过欺骗它并让他相信他在 Windows XP 下运行来使其与 Windows 7 兼容。

我以为应用程序正在从 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion 获取窗口的版本号,我可以更改此值,但我错了……即使我更改注册表中的值,窗口的版本号也会返回通过我的应用程序总是相同的:

498139398 适用于 Windows 7

170393861 适用于 Windows XP

这些值包含 Windows 版本(此链接说明如何提取版本号)但我不知道它是从哪里获取的。

如果你用谷歌搜索这些数字,你会发现其他应用程序指的是相同的版本号。

我试图通过进程监视器查找应用程序使用的注册表,但应用程序访问的注册表似乎都与 Windows 版本无关。

有没有人知道这些值可能来自哪里?它可能在注册表之外/硬编码的某个地方吗?

4

1 回答 1

5

Windows 已经有了执行此操作的工具。您是否尝试过右键单击该程序,选择“属性”并查看“兼容性”选项卡?

对于更复杂的技巧,请研究“Microsoft Application Compatibility Toolkit”。

于 2012-03-08T17:53:48.877 回答