[Bug 46464] New: Strong hold 2 needs a native dll fallback mechanism
wine-bugs at winehq.org
wine-bugs at winehq.org
Sun Jan 13 21:59:22 CST 2019
https://bugs.winehq.org/show_bug.cgi?id=46464
Bug ID: 46464
Summary: Strong hold 2 needs a native dll fallback mechanism
Product: Wine
Version: 4.0-rc6
Hardware: x86
OS: Linux
Status: NEW
Severity: normal
Priority: P2
Component: ntdll
Assignee: wine-bugs at winehq.org
Reporter: zzhang at codeweavers.com
Distribution: ---
Created attachment 63272
--> https://bugs.winehq.org/attachment.cgi?id=63272
patch
See https://github.com/ValveSoftware/Proton/issues/506 for details.
Strong hold 2 doesn't run. For it to run, use the following steps:
$ STEAM_COMPAT_DATA_PATH=~/.steam/steam/steamapps/compatdata/40960
~/.steam/steam/compatibilitytools.d/proton/proton run
~/.steam/steam/steamapps/compatdata/40960/pfx/drive_c/windows/system32/winecfg.exe
And set msvcr100.dll and msvcp100.dll to builtin.
And FFLauncher.exe is a .NET application. Since proton doesn't have mono
support yet. We need to rename rename Stronghold2.exe to FFLaucher.exe, then it
will launch.
$ cd ~/.steam/steam/steamapps/common/Stronghold\ 2/
$ file msvcp100.dll
msvcp100.dll: PE32+ executable (DLL) (GUI) x86-64, for MS Windows
$ file FFLauncher.exe
FFLauncher.exe: PE32 executable (GUI) Intel 80386, for MS Windows
So the reason that the game doesn't run on proton is that it is bundled with
dlls of wrong architecture in its application folder. On Windows, there is a
dll architecture check[1] when loading dlls, whereas wine currently loads the
first found.
[1] Windows Internals # Known Dll Redirection:
https://books.google.com/books?id=y83LDgAAQBAJ&pg=PT282&dq=dll+of+wrong+architecture+in+search+path&hl=en&sa=X&ved=0ahUKEwjDv6qE3erfAhUDZt4KHYNDDhgQ6AEIKjAA#v=onepage&q=dll%20of%20wrong%20architecture%20in%20search%20path&f=false
--
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