https://bugs.winehq.org/show_bug.cgi?id=51126
Mehmet gelisin mehmetgelisin@aol.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |mehmetgelisin@aol.com
--- Comment #8 from Mehmet gelisin mehmetgelisin@aol.com --- fix http://www.compilatori.com/ It's not clear to me that linking to msvcrt.dll would make things much better. We would then be possibly missing ucrtbase.dll being loaded. On Windows, ucrtbase.dll ends up being used in quite http://www.wearelondonmade.com/ some cases and I think that usually both msvcrt.dll and ucrtbase.dll end up being loaded. For a relatively high level testing, I used a simple test like this: http://www.jopspeech.com/ #include <windows.h> #include <stdio.h> http://joerg.li/ int main(int argc, char **argv) { LoadLibraryA(argc > 1 ? argv[1] : "user32.dll"); printf("%p %p\n", GetModuleHandleW(L"msvcrt.dll"), http://connstr.net/ GetModuleHandleW(L"ucrtbase.dll")); return 0; } http://embermanchester.uk/
For the test to make sense, it needs to be compiled with some other msvcrt version than tested ones. It's not possible with GCC mingw, so I used llvm-mingw with a command (I will attach the executable for convenience): http://www.slipstone.co.uk/
x86_64-w64-mingw32-gcc deptest.c -lmsvcr100 -o deptest64.exe
If you try it with DLLs like gdi32.dll or user32.dll, only ucrtbsae.dll is loaded on Windows 10. If you try it with advapi32.dll, only msvcrt.dll is loaded. Thus, higher level DLLs pull both of them. http://www.logoarts.co.uk/
That said, is the attached patch enough to get the game running?
fix http://www.acpirateradio.co.uk/ It's not clear to me that linking to msvcrt.dll would make things much better. We would then be possibly missing ucrtbase.dll being loaded. On Windows, ucrtbase.dll ends up being used in quite some cases and I think that usually both msvcrt.dll and ucrtbase.dll end up being loaded. For a relatively high level testing, I used a simple test like this: https://waytowhatsnext.com/
#include <windows.h> #include <stdio.h>
int main(int argc, char **argv) { https://www.webb-dev.co.uk/ LoadLibraryA(argc > 1 ? argv[1] : "user32.dll"); printf("%p %p\n", GetModuleHandleW(L"msvcrt.dll"), GetModuleHandleW(L"ucrtbase.dll")); return 0; }
For the test to make sense, it needs to be compiled with some other msvcrt version than tested ones. It's not possible with GCC mingw, so I used llvm-mingw with a command (I will attach the executable for convenience):
x86_64-w64-mingw32-gcc deptest.c -lmsvcr100 -o deptest64.exe
If you try it with DLLs like gdi32.dll or user32.dll, only ucrtbsae.dll is loaded on Windows 10. If you try it with advapi32.dll, only msvcrt.dll is loaded. Thus, higher level DLLs pull both of them.
That said, is the attached patch enough to get the game running? fix
It's not clear to me that linking to msvcrt.dll would make things much better. We would then be possibly missing ucrtbase.dll being loaded. On Windows, ucrtbase.dll ends up being used in quite some cases and I think that usually both msvcrt.dll and ucrtbase.dll end up being loaded. For a relatively high level testing, I used a simple test like this:
#include <windows.h> #include <stdio.h> http://www.iu-bloomington.com/
int main(int argc, char **argv) { LoadLibraryA(argc > 1 ? argv[1] : "user32.dll"); printf("%p %p\n", GetModuleHandleW(L"msvcrt.dll"), GetModuleHandleW(L"ucrtbase.dll")); return 0; } http://www-look-4.com/
For the test to make sense, it needs to be compiled with some other msvcrt version than tested ones. It's not possible with GCC mingw, so I used llvm-mingw with a command (I will attach the executable for convenience):
x86_64-w64-mingw32-gcc deptest.c -lmsvcr100 -o deptest64.exe
If you try it with DLLs like gdi32.dll or user32.dll, only ucrtbsae.dll is loaded on Windows 10. If you try it with advapi32.dll, only msvcrt.dll is loaded. Thus, higher level DLLs pull both of them.
That said, is the attached patch enough to get the game running?