https://bugs.winehq.org/show_bug.cgi?id=38596
--- Comment #5 from Anastasius Focht focht@gmx.net --- Hello Daniel,
--- quote --- I haven't had any luck with the 64 bit version, even after copying the color profile file to the drive_c/windows/system32/spool/drivers/color directory and overriding msvcr90.dll. Maybe I'm doing something wrong, but if I use winecfg to set it as (native,builtin), it doesn't seem to make a difference (it crashes with the C++ exception that you referenced in the other bug). If I set it to just native, then it crashes complaining that it can't find the DLLs. --- quote ---
I forgot to tell ... you need to copy 64-bit native 'msvcr90.dll' to WinSxS cache.
Some of the PE dlls contain manifest resources that reference shared SxS assemblies and expect the CRT loaded from there (even if CRT dlls are also present as private assemblies in app directory).
Use the native assembly in app directory and overwrite the builtin in WinSxS:
(adapt paths to your needs, beware of Bugzilla line breaks):
--- snip --- $ pwd /home/focht/Downloads/pn64/drive_c/Program Files/PictureCode/PhotoNinja64_1.2.5
$ file msvc* msvcm90.dll: PE32+ executable (DLL) (GUI) x86-64 Mono/.Net assembly, for MS Windows msvcp90.dll: PE32+ executable (DLL) (GUI) x86-64, for MS Windows msvcr90.dll: PE32+ executable (DLL) (GUI) x86-64, for MS Windows
$ cp msvcr90.dll $(find $(winepath -u "c:\windows\winsxs") -iname msvcr90.dll | grep amd64) --- snip ---
Override by command line (alternatively 'winecfg' for persistence):
--- snip --- $ WINEDLLOVERRIDES=msvcr90=n,b wine ./PhotoNinja64.exe --- snip ---
Regards