I am aware that ntoskrnl automatically changes the value of the CurrentVersion string under HKLM\Software\Microsoft\Windows NT\CurrentVersion at boot time (CmpSetVersionData). In fact, I had patched it (on Vista SP2) so that it no longer did that, but it has no bearing on the value that is reported in winver and what programs get when they call RtlGetVersion.
I understand that the location of this defining value is known in Longhorn pre-reset x64 builds, but at one time it was unknown where it was after the reset (including XP/2003 x64). Has anyone found this location in any NT6 build since then? I would be very pleased if it were found as some applications do not like running on NT 6.0 simply because it is NT 6.0 (and not for lack of actual functionality). And there seem to be enough of these that it would be easier to do a global patch than modifying individual applications.
I have looked in NT 6.0 SP2, 6.1 SP1 and 6.3 U1 ntoskrnls and haven't found anything that would come close.
Did anyone ever find NT6 x64 version number controller?
Did anyone ever find NT6 x64 version number controller?
What is the name of the application software guaranteed to make your computer faster?
Quicken.
Quicken.
Re: Did anyone ever find NT6 x64 version number controller?
Found it: it's right in ntoskrnl!RtlGetVersion. Haven't tested it yet but it makes sense.
rcx = 11Ch or OSVersionInfoSize
rcx+4 = MajorVersion
rcx+8 = MinorVersion
rcx+0ch = BuildNumber
rcx+10h = PlatformID
XP x64 follows a similar structure, but 2000/2003 x86 do not. No idea about 32 bit versions of NT 6.x.
rcx = 11Ch or OSVersionInfoSize
rcx+4 = MajorVersion
rcx+8 = MinorVersion
rcx+0ch = BuildNumber
rcx+10h = PlatformID
XP x64 follows a similar structure, but 2000/2003 x86 do not. No idea about 32 bit versions of NT 6.x.
What is the name of the application software guaranteed to make your computer faster?
Quicken.
Quicken.