I installed MetaTrader 4 with wine it is up and running everything works well, the best performers is with the new wine 1.3.
BUT if I run some EA Experts Advisors I get on two of it problems and the application crashes.
The EA`s with crashes have custom .dll (FCS300.dll) and I try to debug this errors.
Code: Select all
0028:Ret ntdll.RtlFreeHeap() retval=00000001 ret=7d7984a2
0028:Ret wininet.InternetCloseHandle() retval=00000001 ret=004222c2
0028:Call KERNEL32.LoadLibraryA(01b4e770 "C:\\Programme\\MetaTrader 4 \\experts\\libraries\\FCS300.dll") ret=00421df4
0009:Call hook proc 0x4f2290 (id=WH_CALLWNDPROC,code=0,wp=00000001,lp=0033669c)
0009:Call user32.CallNextHookEx(00010068,00000000,00000001,0033669c) ret=004f23a7
0025:Ret KERNEL32.Sleep() retval=00000000 ret=0051993e
0025:Call KERNEL32.GetTickCount() ret=005196ce
0025:Ret KERNEL32.GetTickCount() retval=00010158 ret=005196ce
0025:Call ws2_32.ioctlsocket(000000a0,4004667f,01a3ea6c) ret=0051ec12
0025:Call ntdll.wine_server_handle_to_fd(000000a0,00000000,01a3e7dc,00000000) ret=7ee19c24
0009:Ret user32.CallNextHookEx() retval=00000000 ret=004f23a7
0025:Ret ntdll.wine_server_handle_to_fd() retval=00000000 ret=7ee19c24
0009:Ret hook proc 0x4f2290 (id=WH_CALLWNDPROC,code=0,wp=00000001,lp=0033669c) retval=00000000
0025:Call ntdll.wine_server_release_fd(000000a0,00000029) ret=7ee1af26
0025:Ret ntdll.wine_server_release_fd() retval=00000000 ret=7ee1af26
0025:Ret ws2_32.ioctlsocket() retval=00000000 ret=0051ec12
0025:Call KERNEL32.Sleep(00000032) ret=0051993e
0028:Call PE DLL (proc=0x1f2b000,module=0x1d50000 L"FCS300.dll",reason=PROCESS_ATTACH,res=(nil))
0009:Call window proc 0x7ecc96b0 (hwnd=0x100d0,msg=WM_MDIGETACTIVE,wp=00000000,lp=00000000)
0009:Ret window proc 0x7ecc96b0 (hwnd=0x100d0,msg=WM_MDIGETACTIVE,wp=00000000,lp=00000000) retval=000201e6
0009:Ret user32.SendMessageA() retval=000201e6 ret=005b25da
0009:Call user32.GetParent(000201e6) ret=0059da5d
0009:Ret user32.GetParent() retval=000100d0 ret=0059da5d
0009:Call user32.DefFrameProcA(000100ca,000100d0,0000004e,00008a71,003377a4) ret=005b23e1
0009:Ret user32.DefFrameProcA() retval=00000000 ret=005b23e1
0009:Ret window proc 0x59a8b2 (hwnd=0x100ca,msg=WM_NOTIFY,wp=00008a71,lp=003377a4) retval=00000000
0009:Ret user32.SendMessageA() retval=00000000 ret=005a5e38
0009:Ret window proc 0x59a8b2 (hwnd=0x100ea,msg=WM_NOTIFY,wp=00008a71,lp=003377a4) retval=00000000
0009:Ret user32.SendMessageW() retval=00000000 ret=7e4abe7c
0009:Call user32.IsWindow(000100ec) ret=7e4b7311
0009:Ret user32.IsWindow() retval=00000001 ret=7e4b7311
0009:Call user32.InvalidateRect(000100ec,0033783c,00000001) ret=7e4af1c2
0009:Ret user32.InvalidateRect() retval=00000001 ret=7e4af1c2
0009:Call user32.GetScrollInfo(000100ec,00000000,003374c4) ret=7e4adf05
0009:Ret user32.GetScrollInfo() retval=00000001 ret=7e4adf05
0009:Call user32.GetScrollInfo(000100ec,00000001,003374c4) ret=7e4adf2b
0009:Ret user32.GetScrollInfo() retval=00000001 ret=7e4adf2b
0009:Call user32.SendMessageW(000100ee,0000120f,00000000,00000000) ret=7e4b3aec
0028:Call KERNEL32.VirtualAlloc(00000000,00000954,00001000,00000004) ret=01d7465b
0028:Ret KERNEL32.VirtualAlloc() retval=01f30000 ret=01d7465b
0028:Call KERNEL32.LoadLibraryA(01db1356 "USER32.dll") ret=01db13ab
0028:Ret KERNEL32.LoadLibraryA() retval=7ec30000 ret=01db13ab
0028:Call KERNEL32.LoadLibraryA(01db1361 "ADVAPI32.dll") ret=01db13b5
0028:Ret KERNEL32.LoadLibraryA() retval=7eb10000 ret=01db13b5
0028:Call KERNEL32.LoadLibraryA(01db136e "NTDLL.dll") ret=01db13c9
0028:Ret KERNEL32.LoadLibraryA() retval=7bc10000 ret=01db13c9
0028:Call KERNEL32.GetLocalTime(01db1378) ret=01db13dd
0028:Ret KERNEL32.GetLocalTime() retval=00000001 ret=01db13dd
0028:Call KERNEL32.CreateFileA(01db44ab "\\\\.\\SICE",c0000000,00000003,00000000,00000003,00000080,00000000) ret=01db470a
0028:Ret KERNEL32.CreateFileA() retval=ffffffff ret=01db470a
0028:Call KERNEL32.CreateFileA(01db44b4 "\\\\.\\SIWVID",c0000000,00000003,00000000,00000003,00000080,00000000) ret=01db487c
0028:Ret KERNEL32.CreateFileA() retval=ffffffff ret=01db487c
0028:Call KERNEL32.CreateFileA(01db44bf "\\\\.\\NTICE",c0000000,00000003,00000000,00000003,00000080,00000000) ret=01db4a3f
0028:Ret KERNEL32.CreateFileA() retval=ffffffff ret=01db4a3f
0028:Call KERNEL32.GetCommandLineA() ret=01db5af0
0028:Ret KERNEL32.GetCommandLineA() retval=001410f8 ret=01db5af0
0028:Call KERNEL32.GetEnvironmentVariableA(01db5a60 "XBH_FNT",01db5a68,00000010) ret=01db5f23
0028:Ret KERNEL32.GetEnvironmentVariableA() retval=00000000 ret=01db5f23
0028:Call KERNEL32.GetVersionExA(01dbbc31) ret=01dbdba9
0028:Ret KERNEL32.GetVersionExA() retval=00000001 ret=01dbdba9
0028:Call advapi32.RegOpenKeyA(80000001,01dbbcca "Software\\Wine",01dbba0c) ret=01dc0794
0028:Ret advapi32.RegOpenKeyA() retval=00000000 ret=01dc0794
0028:Call advapi32.RegOpenKeyA(80000002,01dbb7ed "HARDWARE\\ACPI\\DSDT\\VBOX__",01dbba0c) ret=01dc07bb
0028:Ret advapi32.RegOpenKeyA() retval=00000002 ret=01dc07bb
0028:Call KERNEL32.GetProcAddress(7b810000,01dbac2f "GetNativeSystemInfo") ret=01dc07ff
0028:Ret KERNEL32.GetProcAddress() retval=7b823c70 ret=01dc07ff
0028:Call KERNEL32.GetNativeSystemInfo(01dbbc0c) ret=01dc080e
0028:Ret KERNEL32.GetNativeSystemInfo() retval=00000000 ret=01dc080e
0028:Call KERNEL32.GetVersion() ret=01dc082a
0028:Ret KERNEL32.GetVersion() retval=0a280105 ret=01dc082a
0028:Call KERNEL32.LoadLibraryA(01dbbce8 "winmm.dll") ret=01dbfe33
0028:Ret KERNEL32.LoadLibraryA() retval=7ed60000 ret=01dbfe33
0028:Call KERNEL32.GetProcAddress(7ed60000,01dbbcdc "timeGetTime") ret=01dbcd10
0028:Ret KERNEL32.GetProcAddress() retval=7b824480 ret=01dbcd10
0028:Call KERNEL32.GetTickCount() ret=01dbcd28
0028:Ret KERNEL32.GetTickCount() retval=00010174 ret=01dbcd28
0028:Call KERNEL32.GetTickCount() ret=01dbc4ba
0028:Ret KERNEL32.GetTickCount() retval=00010174 ret=01dbc4ba
0028:Call KERNEL32.GetTickCount() ret=01dbc4ba
0028:Ret KERNEL32.GetTickCount() retval=00010174 ret=01dbc4ba
0028:Call KERNEL32.GetTickCount() ret=01dbc4ba
0028:Ret KERNEL32.GetTickCount() retval=00010174 ret=01dbc4ba
0028:Call KERNEL32.GetTickCount() ret=01dbc4ba
0028:Ret KERNEL32.GetTickCount() retval=00010174 ret=01dbc4ba
0028:Call KERNEL32.GetTickCount() ret=01dbc4ba
0028:Ret KERNEL32.GetTickCount() retval=00010174 ret=01dbc4ba
0028:Call KERNEL32.GetTickCount() ret=01dbc4ba
0028:Ret KERNEL32.GetTickCount() retval=00010174 ret=01dbc4ba
0028:Call KERNEL32.GetTickCount() ret=01dbc4ba
0028:Ret KERNEL32.GetTickCount() retval=00010174 ret=01dbc4ba
0028:Call KERNEL32.GetTickCount() ret=01dbc4ba
0028:Ret KERNEL32.GetTickCount() retval=00010174 ret=01dbc4ba
0028:Call KERNEL32.GetTickCount() ret=01dbc4ba
0028:Ret KERNEL32.GetTickCount() retval=00010174 ret=01dbc4ba
0028:Call KERNEL32.GetTickCount() ret=01dbc4ba
0028:Ret KERNEL32.GetTickCount() retval=00010174 ret=01dbc4ba
0028:Call KERNEL32.GetTickCount() ret=01dbc4ba
0028:Ret KERNEL32.GetTickCount() retval=00010174 ret=01dbc4ba
0028:Call KERNEL32.GetTickCount() ret=01dbc4ba
Code: Select all
0028:Call KERNEL32.LoadLibraryA(01dbbce8 "winmm.dll") ret=01dbfe33
0028:Ret KERNEL32.LoadLibraryA() retval=7ed60000 ret=01dbfe33
0028:Call KERNEL32.GetProcAddress(7ed60000,01dbbcdc "timeGetTime") ret=01dbcd10
0028:Ret KERNEL32.GetProcAddress() retval=7b824480 ret=01dbcd10
0028:Call KERNEL32.GetTickCount() ret=01dbcd28
0028:Ret KERNEL32.GetTickCount() retval=00010174 ret=01dbcd28
http://bugs.winehq.org/show_bug.cgi?id=17097You can fix winmm.dll problem, without recompiling the kernel, by setting your
audio output to oss in winecfg. Run winecfg, switch to audio tab, select oss
output. If you can't access winecfg, please try the following steps: disable
any soundcard which is giving problem (i.e. remove usb soundcards, disable
internal ones from bios), then run winecfg, set the right output, enable all
your soundcards, reboot. For me, everything has worked fine since I took these
steps.
Please Note I have no sound card on this virtual so no sound function available. Any Ideas are welcome to run my MT4 EA on wine if needed I can share a demosystem for testing or troubleshooting.
Thanks...
Klausi