http://bugs.winehq.org/show_bug.cgi?id=33776
Bug #: 33776 Summary: UPlay games does not work into 64Bits prefix and Wine set to Vista/Win7 Product: Wine Version: 1.6-rc1 Platform: x86-64 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: berillions@gmail.com Classification: Unclassified
Hi,
There is a problem with Wine 1.6-rc1. It's impossible to launch games from UPlay if wine is set to Vista/7 ... Explaination :
---- 32 Bits Wineprefix ---- UPlay does not work without the workaround in the bug #33742. Even with it, all Ubisoft games in UPlay works without problem if i set "crypt32=native" only for UPlay.exe.
The Windows version in the 32bits prefix is set to Win7 to workaround the bug #32500 for FarCry 3.
---- 64 Bits Wineprefix ---- UPlay works with the same workaround (bug #33742). But my Uplay games don't work, they start and stop immediatly. I tried with no-Uplay games too and i have these results :
If Wine is set to XP : UPlay games and no-Uplay games runs correctly. FarCry 3 still does not work (bug #32500)
If Wine is set to Vista/Seven : All UPlay games that i have don't work. Only no-UPlay games runs.
----------------------------
UPlay games for my tests : Assassin's Creed : Brotherhood/Revelations and FarCry3 No-UPlay games : Anno 1404, Freedom Fighters
http://bugs.winehq.org/show_bug.cgi?id=33776
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |win64 Severity|normal |trivial
--- Comment #1 from Austin English austinenglish@gmail.com 2013-06-10 17:06:11 CDT --- An example game would be helpful.
It's a trivial bug, there are easy workarounds (win32/winxp).
http://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #2 from Berillions berillions@gmail.com 2013-06-10 23:41:51 CDT --- (In reply to comment #1)
An example game would be helpful.
I already said that the bug exist for UPlay games only. I tried with Assassin's Creed : Brotherhood/Revelations and FarCry3
It's a trivial bug, there are easy workarounds (win32/winxp).
I know but i test win64 to know if it's completly usable. And FarCry3 does not work with win32/winxp, only win32/win7
http://bugs.winehq.org/show_bug.cgi?id=33776
Berillions berillions@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Blocks| |33858
--- Comment #3 from Berillions berillions@gmail.com 2013-06-23 03:20:59 CDT --- This bug blocks the bug #33858 to know if into 64-bits wineprefix FarCry 3 needs to set LARGEADDRESSAWARE in her .exe
http://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #4 from Berillions berillions@gmail.com 2013-06-23 14:39:05 CDT --- I search in the UPlay log file to see if there are some errors when i launch the game when wine is set to Win7. The log file is "game_start_log.txt"
64Bits wineprefix + WinXP : [ 96] 2013-06-23 21:27:24 [ 98] ERROR NamedPipeReceiveLoop.cpp (100) WriteFileEx succeeded with error = 87.
No problem even if i have this message in the log, the game can be launched, exited normally.
64Bits wineprefix + Win7 : [ 98] 2013-06-23 21:33:44 [ 100] ERROR NamedPipeReceiveLoop.cpp (100) WriteFileEx succeeded with error = 87. [ 75] 2013-06-23 21:33:44 [ 84] ERROR inject_impl.cpp (79) Getting thread context failed. System error code is 0 [ 98] 2013-06-23 21:33:44 [ 103] ERROR GameStarter.cpp (222) Failed to inject suspended process. Process terminated '74' [ 98] 2013-06-23 21:33:44 [ 103] ERROR UplayConnection.cpp (244) Failed to inject overlay and create process exepath 'C:/Program Files (x86)/Ubisoft/Assassin's Creed Brotherhood/ACBSP.exe', working directory 'C:/Program Files (x86)/Ubisoft/Assassin's Creed Brotherhood/', inject overlay 'false', Steam runtime present 'false'
I remark that wine can't create the game process when it's set to win7 and i don't know why and where come from the problem.
http://bugs.winehq.org/show_bug.cgi?id=33776
Berillions berillions@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Severity|trivial |normal
--- Comment #5 from Berillions berillions@gmail.com 2013-06-27 12:14:56 CDT --- I know that this bug will not be resolved during the freeze but i would like to know if: - I understand correctly where the problem can come from (maybe ?) - This bug can be corrected in the 1.7.x release
**** Real Seven 64-bits **** I create the log thanks to "process monitor". In this log, it's explain how a game is launched from UPlay :
Uplay.exe -> UbisoftGameLauncher.exe -upc_uplay_id "RANDOM_NUMERO_GAME" -upc_game_version "RANDOM_NUMERO_GAME" -upc_exe_path "RANDOM_LETTERS" -upc_working_directory -> Uplay-Game.exe (farcry3.exe for example)
**** 64-Bits wineprefix + Wine set to WinXP **** Like you see in the log, the game (Assassin's Creed II) is launched like on Real Windows 7 by the same way. No problems, the game runs fine. (line #12338)
**** 64-Bits wineprefix + Wine set to WinVista or Win7 **** A process for "UbisoftGameLauncher.exe -arg1 -arg2 etc..." is created like in the previous systems so no problem (line #12309)
But a second process is created, wine wants to launch the game by "UbisoftGameLauncher64.exe" (line #34147). --> This is incorrect because "Real Win7" has never used "UGL64.exe" to launch my game.
**** End of tests ****
So for me (it's my opinion), Wine create a process that it should not. Wine try to launch a 32-bits game app by a 64-bits executable.
Thanks for your explaination, Max
http://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #6 from Berillions berillions@gmail.com 2013-06-27 12:15:44 CDT --- Created attachment 44998 --> http://bugs.winehq.org/attachment.cgi?id=44998 +relay log in 64-bits wineprefix + Wine set to Win7
Log for winprefix 64-bits and Wine set to Win7
http://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #7 from Berillions berillions@gmail.com 2013-06-27 12:17:02 CDT --- This is the +relay log for Wine set to WinXP + wineprefix 64-bits. The archive is to big to send it here so i use my host.
http://sd-1.archive-host.com/membres/up/51568577817080088/Relay_XP-64tar.xz
http://bugs.winehq.org/show_bug.cgi?id=33776
Qian Hong fracting@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |fracting@gmail.com
http://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #8 from Qian Hong fracting@gmail.com 2013-08-07 00:25:28 CDT --- Created attachment 45528 --> http://bugs.winehq.org/attachment.cgi?id=45528 Patch: Hack OpenProcess
Hi, confirming the bug. The attached hack makes the app happy.
--- 64-Seven.log --- 47365 0063:Call KERNEL32.OpenProcess(00100400,00000000,00000064) ret=004aef86 47366 0063:Ret KERNEL32.OpenProcess() retval=00000080 ret=004aef86 47367 0063:Call ntdll.RtlFreeHeap(002c4000,00000000,002d4850) ret=004bbf46 47368 0063:Ret ntdll.RtlFreeHeap() retval=00000001 ret=004bbf46 47369 0063:Call ntdll.RtlFreeHeap(002c4000,00000000,002d4768) ret=004bbf46 47370 0063:Ret ntdll.RtlFreeHeap() retval=00000001 ret=004bbf46 47371 0063:Call KERNEL32.GetNativeSystemInfo(0225e214) ret=004ae6cc 47372 0063:Ret KERNEL32.GetNativeSystemInfo() retval=00000000 ret=004ae6cc 47373 0063:Call KERNEL32.IsWow64Process(ffffffff,0225e238) ret=004ae6fb 47374 0063:Ret KERNEL32.IsWow64Process() retval=00000001 ret=004ae6fb 47375 0063:Call KERNEL32.GetVersionExW(0225e240) ret=004ae726 47376 0063:Ret KERNEL32.GetVersionExW() retval=00000001 ret=004ae726 47377 0063:Call KERNEL32.OpenProcess(00001000,00000000,00000064) ret=004aef86 47378 0063:Ret KERNEL32.OpenProcess() retval=00000090 ret=004aef86 47379 0063:Call KERNEL32.IsWow64Process(00000090,0225e23c) ret=004ae753 47380 0063:Ret KERNEL32.IsWow64Process() retval=00000000 ret=004ae753 /* IsWow64Process call fails, why ? */ 47381 0063:Call KERNEL32.CloseHandle(00000090) ret=004ae75a 47382 0063:Ret KERNEL32.CloseHandle() retval=00000001 ret=004ae75a --- snip ---
I have a test case to show the culprit, but I don't know how to integrate to Wine's test framework correctly, since the test case behaviors different on Wow64 and Win64, if anyone want to work on it feel free to pick up my patch, improve it and send to Wine:
https://testbot.winehq.org/JobDetails.pl?Key=26615#k203
http://bugs.winehq.org/show_bug.cgi?id=33776
Qian Hong fracting@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1
--- Comment #9 from Qian Hong fracting@gmail.com 2013-08-07 00:25:49 CDT --- Confirming.
http://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #10 from Austin English austinenglish@gmail.com 2013-08-07 00:45:12 CDT --- (In reply to comment #8)
I have a test case to show the culprit, but I don't know how to integrate to Wine's test framework correctly, since the test case behaviors different on Wow64 and Win64, if anyone want to work on it feel free to pick up my patch, improve it and send to Wine:
Take a look at kernel32/tests/process.c:test_SystemInfo()
http://bugs.winehq.org/show_bug.cgi?id=33776
Dan Kegel dank@kegel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |patch CC| |dank@kegel.com
http://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #11 from Berillions berillions@gmail.com 2013-11-13 12:47:44 CST --- (In reply to comment #10)
(In reply to comment #8)
I have a test case to show the culprit, but I don't know how to integrate to Wine's test framework correctly, since the test case behaviors different on Wow64 and Win64, if anyone want to work on it feel free to pick up my patch, improve it and send to Wine:
Take a look at kernel32/tests/process.c:test_SystemInfo()
Bug still exist in wine 1.7.6 and wine-git. The hack from Qian still works too.
http://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #12 from Berillions berillions@gmail.com --- I think it will interesting to implement correctly this hack from Qian.
I know that Directx10 and Directx11 are not still implemented into wine but "Watch_Dogs" from Ubisoft, "The Witcher 3" (if there is not Linux port) work/will work only into a 64-bits system.
Thanks,
http://bugs.winehq.org/show_bug.cgi?id=33776
Sebastian Lackner sebastian@fds-team.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |sebastian@fds-team.de
--- Comment #13 from Sebastian Lackner sebastian@fds-team.de --- Is the testcase mentioned in comment #8 still available somewhere? Unfortunately the old testbot doesn't exist anymore ... :/
http://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #14 from Qian Hong fracting@gmail.com --- Created attachment 48798 --> http://bugs.winehq.org/attachment.cgi?id=48798 test case
Yeah, I have the test case in my local branch, no time to actual improve it and test it on 64 bit Wine... Anyone want to take it is appreciated :)
http://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #15 from Sebastian Lackner sebastian@fds-team.de --- Isn't this issue exactly the same as (or at least related to) http://bugs.winehq.org/show_bug.cgi?id=22006 ?
I talked to Erich E. Hoover about this one some time ago, and it seems like wine doesn't care about permissions at all for processes (yet). The basis to add ACLs for processes are these patches https://github.com/compholio/wine-compholio-daily/tree/master/patches/13-Mis... which are still waiting for approval in the wine-patches list.
http://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #16 from Berillions berillions@gmail.com --- (In reply to Sebastian Lackner from comment #15)
Isn't this issue exactly the same as (or at least related to) http://bugs.winehq.org/show_bug.cgi?id=22006 ?
I talked to Erich E. Hoover about this one some time ago, and it seems like wine doesn't care about permissions at all for processes (yet). The basis to add ACLs for processes are these patches https://github.com/compholio/wine-compholio-daily/tree/master/patches/13- Misc_ACL which are still waiting for approval in the wine-patches list.
I tried AC Brotherhood with the both patch from Erich and i've still the same problem.
http://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #17 from Sebastian Lackner sebastian@fds-team.de --- The patches are just a base, not a full implementation of ACL support for processes yet. I don't think Erich already started working on the consecutive parts, he wanted to wait till the first set is upstream before working on the rest.
https://bugs.winehq.org/show_bug.cgi?id=33776
Adam Bolte abolte@systemsaviour.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |abolte@systemsaviour.com
--- Comment #18 from Adam Bolte abolte@systemsaviour.com --- I've got Far Cry 4 which requires Uplay and a 64-bit Windows 7 minimum, and have configured a prefix as such. I also have Far Cry 3 (which also requires Uplay) installed into the same prefix for comparison, the difference being Far Cry 3 is a 32-bit executable, and Far Cry 4 is 64-bit.
Neither of these work by default. Using Qian Hong's OpenProcess hack from comment #8, Far Cry 3 launches. Far Cry 4 however continues to fail. I do get the output:
fixme:process:OpenProcess hack: access is 00001400 fixme:process:OpenProcess hack: access is 00001400
Also, the game_starter_log.txt log shows: [ 115] 2014-12-29 01:39:38 [ 116] ERROR inject_impl.cpp (166) Getting thread context failed. System error code is 5 [ 150] 2014-12-29 01:39:38 [ 111] ERROR GameStarter.cpp (291) Failed to inject suspended process. Process terminated '28' [ 150] 2014-12-29 01:39:38 [ 111] ERROR UplayConnection.cpp (303) Failed to inject overlay and create process exepath 'C:\Far Cry 4\bin\FarCry4.exe', working directory 'C:\Far Cry 4\bin', inject overlay 'false', Steam runtime present 'false'
This suggests to me the hack does not work for 64-bit games. Does that sound correct?
Also, the link to Erich E. Hoover's patches is broken. I assume these are the ones I should try? https://github.com/wine-compholio/wine-staging/tree/master/patches/server-Mi...
Thanks.
https://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #19 from Sebastian Lackner sebastian@fds-team.de --- (In reply to Adam Bolte from comment #18)
Also, the link to Erich E. Hoover's patches is broken. I assume these are the ones I should try? https://github.com/wine-compholio/wine-staging/tree/master/patches/server- Misc_ACL
Thanks.
Yes, that is the right URL (we restructured our repository some time ago).
https://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #20 from Adam Bolte abolte@systemsaviour.com --- I noticed a bunch of ACL-related patches in the wine-staging repo, so I just added all of them to 1.7.33 using:
make -C ./patches DESTDIR="$(pwd)" install
However none of those made any difference to the execution of Far Cry 3 or 4. Only Qian's hack works if applied (with or without the staging patches), and only for Far Cry 3.
For reference, Far Cry 4 only prints:
fixme:heap:RtlSetHeapInformation 0xd10000 0 0x7fffc965cf00 4 stub fixme:heap:RtlSetHeapInformation 0xf30000 0 0x23fc90 4 stub fixme:heap:RtlSetHeapInformation (nil) 1 (nil) 0 stub fixme:process:OpenProcess hack: access is 00001400 fixme:process:OpenProcess hack: access is 00001400
There is no crash window, bad Wine exit status, or anything displayed to indicate a failure. The first three lines seem to be related to the initial cloud save and Uplay overlay warning windows that appear when cloud saves and the overlay have been disabled under settings, so basically only the two OpenProcess lines are printed. This is the same if launched by clicking "PLAY Far Cry 4" in Uplay, or executing the FarCry4.exe directly through wine when Uplay is already running.
Happy to assist with testing or provide any additional information which may be helpful in solving this.
https://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #21 from Berillions berillions@gmail.com --- (In reply to Adam Bolte from comment #20)
I noticed a bunch of ACL-related patches in the wine-staging repo, so I just added all of them to 1.7.33 using:
make -C ./patches DESTDIR="$(pwd)" install
However none of those made any difference to the execution of Far Cry 3 or 4. Only Qian's hack works if applied (with or without the staging patches), and only for Far Cry 3.
For reference, Far Cry 4 only prints:
fixme:heap:RtlSetHeapInformation 0xd10000 0 0x7fffc965cf00 4 stub fixme:heap:RtlSetHeapInformation 0xf30000 0 0x23fc90 4 stub fixme:heap:RtlSetHeapInformation (nil) 1 (nil) 0 stub fixme:process:OpenProcess hack: access is 00001400 fixme:process:OpenProcess hack: access is 00001400
There is no crash window, bad Wine exit status, or anything displayed to indicate a failure. The first three lines seem to be related to the initial cloud save and Uplay overlay warning windows that appear when cloud saves and the overlay have been disabled under settings, so basically only the two OpenProcess lines are printed. This is the same if launched by clicking "PLAY Far Cry 4" in Uplay, or executing the FarCry4.exe directly through wine when Uplay is already running.
Happy to assist with testing or provide any additional information which may be helpful in solving this.
Probably because FarCry 4 is a full Directx 11 game ?
https://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #22 from Adam Bolte abolte@systemsaviour.com --- (In reply to Berillions from comment #21)
Probably because FarCry 4 is a full Directx 11 game ?
No, that's bug #36828. You can observe that using a crack to remove the Uplay dependency.
https://bugs.winehq.org/show_bug.cgi?id=33776
Julian Rüger jr98@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jr98@gmx.net
https://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #23 from Sebastian Lackner sebastian@fds-team.de --- As its not yet mentioned in this bug report, Qian Hong is currently trying to upstream a proper fix for this bug, see: http://source.winehq.org/patches/data/108619
https://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #24 from Sebastian Lackner sebastian@fds-team.de --- Should be fixed with: http://source.winehq.org/git/wine.git/commit/d45bda3014cbf21e8fa8e8e429531ae...
https://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #25 from Berillions berillions@gmail.com --- (In reply to Sebastian Lackner from comment #24)
Should be fixed with: http://source.winehq.org/git/wine.git/commit/ d45bda3014cbf21e8fa8e8e429531aed4eeb530e
Unfortunatly, it's not the case. It's still unable to launch the game in a 64bits prefix + WinVista/Win7
https://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #26 from Qian Hong fracting@gmail.com --- (In reply to Berillions from comment #25)
(In reply to Sebastian Lackner from comment #24)
Should be fixed with: http://source.winehq.org/git/wine.git/commit/ d45bda3014cbf21e8fa8e8e429531aed4eeb530e
Unfortunatly, it's not the case. It's still unable to launch the game in a 64bits prefix + WinVista/Win7
Does the patch help Cry 3 or any games? My understand is the patch helps Cry 3 but not Cry 4, right?
https://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #27 from Berillions berillions@gmail.com --- (In reply to Qian Hong from comment #26)
(In reply to Berillions from comment #25)
(In reply to Sebastian Lackner from comment #24)
Should be fixed with: http://source.winehq.org/git/wine.git/commit/ d45bda3014cbf21e8fa8e8e429531aed4eeb530e
Unfortunatly, it's not the case. It's still unable to launch the game in a 64bits prefix + WinVista/Win7
Does the patch help Cry 3 or any games? My understand is the patch helps Cry 3 but not Cry 4, right?
I tried with two games : - FarCry 3 = FAIL - Child Of Light (available on Uplay) = FAIL
With your patch, I create a +relay log with Child of Light and i saw that KERNEL32.IsWow64Process() still fails.
https://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #28 from Qian Hong fracting@gmail.com --- Created attachment 50491 --> https://bugs.winehq.org/attachment.cgi?id=50491 Also fix IsWow64Process
https://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #29 from Qian Hong fracting@gmail.com --- (In reply to Berillions from comment #27)
With your patch, I create a +relay log with Child of Light and i saw that KERNEL32.IsWow64Process() still fails.
Thanks for testing, could you test my additional patch in comment #28 on top of latest Wine?
https://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #30 from Qian Hong fracting@gmail.com --- Created attachment 50492 --> https://bugs.winehq.org/attachment.cgi?id=50492 Fix iswow64 on 64bit
This one should help more, but it might not be correct, need more testing on Windows.
https://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #31 from Berillions berillions@gmail.com --- (In reply to Qian Hong from comment #30)
Created attachment 50492 [details] Fix iswow64 on 64bit
This one should help more, but it might not be correct, need more testing on Windows.
Your patch works Qian ;) Tested with FarCry 3 and Child Of Light, these games work in Prefix 64bits + Win7
https://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #32 from Sebastian Lackner sebastian@fds-team.de --- (In reply to Berillions from comment #31)
(In reply to Qian Hong from comment #30)
Created attachment 50492 [details] Fix iswow64 on 64bit
This one should help more, but it might not be correct, need more testing on Windows.
Your patch works Qian ;) Tested with FarCry 3 and Child Of Light, these games work in Prefix 64bits + Win7
One more related patch got upstream: http://source.winehq.org/git/wine.git/commit/bfd088dbc6b4f397d9adfbc11a6f878...
Are the hacks for NtOpenProcess access permissions still required, or does it now work out of the box?
https://bugs.winehq.org/show_bug.cgi?id=33776
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |bfd088dbc6b4f397d9adfbc11a6 | |f878ac0e8fd7c Status|NEW |RESOLVED CC| |focht@gmx.net Resolution|--- |FIXED
--- Comment #33 from Anastasius Focht focht@gmx.net --- Hello folks,
resolving for good here.
The specific issue mentioned here is fixed by commit http://source.winehq.org/git/wine.git/commitdiff/bfd088dbc6b4f397d9adfbc11a6...
Thanks Qian
BTW. not only UPlay was affected, certain 64-bit apps (debuggers) also suffered from this and work now. I didn't mention it since there were probably only a handful users in the world affected (who helped themselves) :-)
Other issues related to UPlay games in 64-bit prefixes deserve their own bugs if not already reported. Don't recycle bugs for meta-issues ("getting X to work").
Regards
https://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #34 from Adam Bolte abolte@systemsaviour.com --- (In reply to Qian Hong from comment #30)
Created attachment 50492 [details] Fix iswow64 on 64bit
This one should help more, but it might not be correct, need more testing on Windows.
Confirming this seems to sort out both 64-bit and 32-bit apps via Uplay successfully (tested Far Cry 4, Far Cry 3 and Settlers 7). Tested against master HEAD.
I note that this PROCESS_QUERY_LIMITED_INFORMATION stuff isn't actually in head master yet. The upstream patch Anastasius Focht linked is not sufficient to close this issue. I'm unclear on why this was closed.
As it stands, master HEAD can run 32-bit apps via Uplay in a 32-bit prefix, and 64-bit apps via Uplay in a 64-bit prefix - but not 32-bit apps. Applying attachment 50492 resolves all issues reported here.
https://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #35 from Qian Hong fracting@gmail.com --- (In reply to Adam Bolte from comment #34)
(In reply to Qian Hong from comment #30)
Created attachment 50492 [details] Fix iswow64 on 64bit
This one should help more, but it might not be correct, need more testing on Windows.
Confirming this seems to sort out both 64-bit and 32-bit apps via Uplay successfully (tested Far Cry 4, Far Cry 3 and Settlers 7). Tested against master HEAD.
I note that this PROCESS_QUERY_LIMITED_INFORMATION stuff isn't actually in head master yet. The upstream patch Anastasius Focht linked is not sufficient to close this issue. I'm unclear on why this was closed.
As it stands, master HEAD can run 32-bit apps via Uplay in a 32-bit prefix, and 64-bit apps via Uplay in a 64-bit prefix - but not 32-bit apps. Applying attachment 50492 [details] resolves all issues reported here.
Thanks for testing, there are multiple bugs related to IsWow64Process, I've just fixed the easy part, the PROCESS_QUERY_LIMITED_INFORMATION part needs some more work. To make the bug report cleaner, would you mind report a new bug and CC me?
https://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #36 from Adam Bolte abolte@systemsaviour.com --- (In reply to Qian Hong from comment #35)
Thanks for testing, there are multiple bugs related to IsWow64Process, I've just fixed the easy part, the PROCESS_QUERY_LIMITED_INFORMATION part needs some more work. To make the bug report cleaner, would you mind report a new bug and CC me?
This is done. Thanks Qian Hong for your efforts. For anyone else interested in 32-bit Uplay apps on 64-bit, it's over at bug #37915.
https://bugs.winehq.org/show_bug.cgi?id=33776
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|UPlay games does not work |Multiple 64-bit |into 64Bits prefix and Wine |applications and UPlay |set to Vista/Win7 |games fail in 64-bit | |WINEPREFIX with WinVer set | |to 'Windows Vista/7' | |(incorrect WoW64 info | |buffer size usage in | |IsWow64Process, | |NtQueryInformationProcess)
--- Comment #37 from Anastasius Focht focht@gmx.net --- Hello folks,
I refined the summary to clarify the scope/impact of this bug. Thanks.
Regards
https://bugs.winehq.org/show_bug.cgi?id=33776
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|-unknown |kernel32
https://bugs.winehq.org/show_bug.cgi?id=33776
sercovep@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |sercovep@gmail.com
--- Comment #38 from sercovep@gmail.com --- Hi,
I'm kind of new at this, but it seems this fix should help my issue, I just don't know how can I implement this? Where is this /dlls/kernel32/process.c?
Can someone please explain?
Thanks!
https://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #39 from Sebastian Lackner sebastian@fds-team.de --- (In reply to sercovep from comment #38)
Hi,
I'm kind of new at this, but it seems this fix should help my issue, I just don't know how can I implement this? Where is this /dlls/kernel32/process.c?
Can someone please explain?
Thanks!
This issue is marked as RESOLVED FIXED, which means that the fix will be included in the next wine development release (1.7.35). The easiest way is to wait a few more days, until it is available in repositories, and then directly install it.
If you do not want to wait you can either apply the patch on an old wine version, or check out the current wine git version (which already includes the fix). In both cases the patch has to be applied on the wine source code, not on the actual compiled package. See: * https://www.winehq.org/docs/wineusr-guide/installing-wine-source * http://wiki.winehq.org/Patching * http://wiki.winehq.org/Wine64
If you need additional help with compiling Wine, please refer to the winehq forums ( https://forum.winehq.org/ ) for further support. This bugtracker is mainly for discussing the issue from a technical perspective.
https://bugs.winehq.org/show_bug.cgi?id=33776
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #40 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 1.7.35.