Morning all, Could someone far smarter than me please take a look at the attached patch?
Windows XP 64-bit runs NT kernel 5.2, whereas 32-bit runs 5.1. Any 64-bit app expecting XP 64-bit will fail (such as IE8 for NT 5.2). The patch lets the installer continue, but I'm not sure if it is enough to be accepted. For example, do I need to "winxp,winxp64", here? http://source.winehq.org/source/dlls/ntdll/version.c?v=wine-1.3.17#L172 TIA, Ken.
>From 6e89cbab2ac50927b9fd1f9c39e633fe8b3289d8 Mon Sep 17 00:00:00 2001 From: Ken Sharp <kennyb...@o2.co.uk> Date: Wed, 13 Apr 2011 05:32:53 +0100 Subject: ntdll: Add support for Windows XP 64-bit --- dlls/ntdll/version.c | 7 +++++++ programs/winecfg/appdefaults.c | 1 + 2 files changed, 8 insertions(+), 0 deletions(-) diff --git a/dlls/ntdll/version.c b/dlls/ntdll/version.c index 46385c9..dfb6ef6 100644 --- a/dlls/ntdll/version.c +++ b/dlls/ntdll/version.c @@ -50,6 +50,7 @@ typedef enum NT40, /* Windows NT 4.0 */ NT2K, /* Windows 2000 */ WINXP, /* Windows XP */ + WINXP64, /* Windows XP 64-bit */ WIN2K3, /* Windows 2003 */ WINVISTA,/* Windows Vista */ WIN2K8, /* Windows 2008 */ @@ -132,6 +133,12 @@ static const RTL_OSVERSIONINFOEXW VersionData[NB_WINDOWS_VERSIONS] = {'S','e','r','v','i','c','e',' ','P','a','c','k',' ','3',0}, 3, 0, VER_SUITE_SINGLEUSERTS, VER_NT_WORKSTATION, 30 /* FIXME: Great, a reserved field with a value! */ }, + /* WINXP64 */ + { + sizeof(RTL_OSVERSIONINFOEXW), 5, 2, 0xECE, VER_PLATFORM_WIN32_NT, + {'S','e','r','v','i','c','e',' ','P','a','c','k',' ','2',0}, + 2, 0, VER_SUITE_SINGLEUSERTS, VER_NT_WORKSTATION, 0 + }, /* WIN2K3 */ { sizeof(RTL_OSVERSIONINFOEXW), 5, 2, 0xECE, VER_PLATFORM_WIN32_NT, diff --git a/programs/winecfg/appdefaults.c b/programs/winecfg/appdefaults.c index 6101c48..651d964 100644 --- a/programs/winecfg/appdefaults.c +++ b/programs/winecfg/appdefaults.c @@ -53,6 +53,7 @@ static const struct { "win2008", "Windows 2008", 6, 0, 0x1771,VER_PLATFORM_WIN32_NT, "Service Pack 1", 0, 0, "ServerNT"}, { "vista", "Windows Vista", 6, 0, 0x1772,VER_PLATFORM_WIN32_NT, "Service Pack 2", 2, 0, "WinNT"}, { "win2003", "Windows 2003", 5, 2, 0xECE, VER_PLATFORM_WIN32_NT, "Service Pack 2", 2, 0, "ServerNT"}, + { "winxp64", "Windows XP 64-bit", 5, 2, 0xECE, VER_PLATFORM_WIN32_NT, "Service Pack 2", 2, 0, "WinNT"}, { "winxp", "Windows XP", 5, 1, 0xA28, VER_PLATFORM_WIN32_NT, "Service Pack 3", 3, 0, "WinNT"}, { "win2k", "Windows 2000", 5, 0, 0x893, VER_PLATFORM_WIN32_NT, "Service Pack 4", 4, 0, "WinNT"}, { "winme", "Windows ME", 4, 90, 0xBB8, VER_PLATFORM_WIN32_WINDOWS, " ", 0, 0, ""}, -- 1.7.1