[Bug 35056] 64-bit PTC Pro Engineer Wildfire V5 installer fails (64-bit processors not reported in volatile hardware registry keys)

wine-bugs at winehq.org wine-bugs at winehq.org
Thu Dec 5 15:00:20 CST 2013


http://bugs.winehq.org/show_bug.cgi?id=35056

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
          Component|-unknown                    |programs
            Summary|64-bit PTC Pro Engineer     |64-bit PTC Pro Engineer
                   |Wildfire V5 installer fails |Wildfire V5 installer fails
                   |                            |(64-bit processors not
                   |                            |reported in volatile
                   |                            |hardware registry keys)
     Ever Confirmed|0                           |1

--- Comment #4 from Anastasius Focht <focht at gmx.net> 2013-12-05 15:00:20 CST ---
Hello Lukasz,

I think I know what they are trying to do ... 

--- snip ---
...
0024:Call KERNEL32.GetSystemInfo(0033daa4) ret=00409f50
0024:Ret  KERNEL32.GetSystemInfo() retval=0033daa4 ret=00409f50
0024:Call advapi32.RegOpenKeyA(80000002,00439538
"HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0",0033dad8) ret=00410d05
0024:Ret  advapi32.RegOpenKeyA() retval=00000000 ret=00410d05
0024:Call advapi32.RegQueryValueExA(00000030,0043952c
"Identifier",00000000,0033dac8,0033d610,0033dacc) ret=00410f04
0024:Ret  advapi32.RegQueryValueExA() retval=00000000 ret=00410f04
0024:Call advapi32.RegCloseKey(00000030) ret=0040a0a4
0024:Ret  advapi32.RegCloseKey() retval=00000000 ret=0040a0a4
...
0024:Call KERNEL32.FindFirstFileA(0033f028
"Z:\\home\\WINEUSER\\virtual-drives\\1\\dsrc\\i486_nt",0033eee8) ret=00410340
0024:Ret  KERNEL32.FindFirstFileA() retval=0012ff40 ret=00410340
0024:Call KERNEL32.FindClose(0012ff40) ret=0040a986
0024:Ret  KERNEL32.FindClose() retval=00000001 ret=0040a986 
--- snip ---

It's basically this scheme: http://support.microsoft.com/kb/556009

--- quote ---
You can use the following registry location to check if computer is running 32
or 64 bit of Windows Operating System:

HKLM\HARDWARE\DESCRIPTION\System\CentralProcessor\0

You will see the following registry entries in the right pane:

Identifier         REG_SZ                     x86 Family 6 Model 14 Stepping 12
Platform ID    REG_DWORD          0x00000020(32)

The above “x86” and “0x00000020(32)” indicate that the Operating System version
is 32 bit. 
--- quote ---

They are either looking for "x86" or the other way around, "AMD64", "Intel64"
strings ...

The comment in Wine source indicates an area which needs improvement ;-)

Source:
http://source.winehq.org/git/wine.git/blob/57c54bc9ad1e13ee7cd730b2ffb4df834bf02a17:/programs/wineboot/wineboot.c#l168

--- snip ---
169 static void create_hardware_registry_keys(void)
170 {
...
207     /*TODO: report 64bit processors properly*/
208     switch(sci.Architecture)
209     {
210     case PROCESSOR_ARCHITECTURE_ARM:
211         sprintfW( idW, ARMCpuDescrW, sci.Level, sci.Revision );
212         break;
213     default:
214     case PROCESSOR_ARCHITECTURE_INTEL:
215         sprintfW( idW, IntelCpuDescrW, sci.Level, HIBYTE(sci.Revision),
LOBYTE(sci.Revision) );
216         break;
217     }
...
245     for (i = 0; i < NtCurrentTeb()->Peb->NumberOfProcessors; i++)
246     {
247         WCHAR numW[10];
248
249         sprintfW( numW, PercentDW, i );
250         if (!RegCreateKeyExW( cpu_key, numW, 0, NULL, REG_OPTION_VOLATILE,
251                                    KEY_ALL_ACCESS, NULL, &hkey, NULL ))
252         {
253               RegSetValueExW( hkey, FeatureSetW, 0, REG_DWORD, (BYTE
*)&sci.FeatureSet, sizeof(DWORD) );
254               set_reg_value( hkey, IdentifierW, idW );
255               /*TODO; report ARM and AMD properly*/
256               set_reg_value( hkey, ProcessorNameStringW, IntelCpuStringW );
...
--- snip ---

Regards

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.


More information about the wine-bugs mailing list