Hello,
Attempting to run BEC anti-cheat which is an admin tool for Arma II game servers.
http://ibattle.org/downloads/
Running into the following error:
fixme:time:GetSystemTimes (0x33f204,0x33f214,0x33f20c): Stub!
Invalid address (0x7b85daff start_process+0x5f) for breakpoint 0, disabling it
I have Visual C++ Installed which is a requirement.
$ wine Bec.exe
fixme:time:GetSystemTimes (0x33f204,0x33f214,0x33f20c): Stub!
Traceback (most recent call last):
File "Bec.py", line 14, in <module>
File "zipextimporter.pyo", line 82, in load_module
File "psutil\__init__.pyo", line 455, in <module>
File "psutil\__init__.pyo", line 451, in cpu_times
File "psutil\_psmswindows.pyo", line 57, in get_system_cpu_times
WindowsError: [Error 0] Success
file Bec.exe
Bec.exe: PE32 executable (console) Intel 80386, for MS Windows, UPX compressed
I compiled wine from git-wine and I checked time.c:
/*********************************************************************
* GetSystemTimes (KERNEL32.@)
*
* Retrieves system timing information
*
* PARAMS
* lpIdleTime [O] Destination for idle time.
* lpKernelTime [O] Destination for kernel time.
* lpUserTime [O] Destination for user time.
*
* RETURNS
* TRUE if success, FALSE otherwise.
*/
BOOL WINAPI GetSystemTimes(LPFILETIME lpIdleTime, LPFILETIME lpKernelTime, LPFILETIME lpUserTime)
{
FIXME("(%p,%p,%p): Stub!\n", lpIdleTime, lpKernelTime, lpUserTime);
return FALSE;
}
Any ideas?
GetSystemTimes Issue?
Re: GetSystemTimes Issue?
Some summarised and edited notes from a conversation on IRC about this.
"lpIdleTime = 0; lpKernelTime = 0; lpUserTime = 0;
before the return FALSE there add
http://msdn.microsoft.com/en-us/library ... s.85).aspx
it says if a NULL is passed in then the call should cause an access violation
lpSystemTime is an out
so you probably need to fill the SYSTEMTIME structure with some real data
the application doesn't checks if the call fails or not
or you can open a bugzilla entry
here's the actual MSDN
http://msdn.microsoft.com/en-us/library ... s.85).aspx
here's the FILETIME structure:
http://msdn.microsoft.com/en-us/library ... s.85).aspx
i would work from those two and implement some values. shouldnt really matter what you put there
probably just dump 0s in the struct and pass it back and it should work
the problem is PROBABLY that your app is asking for values, sends in uninitialized structs, and gets back some super high values that crash it.. setting them to 0s should fix.
and you can prob use the debugger to write to those addresses and test before writing code if you know how to do that"
"lpIdleTime = 0; lpKernelTime = 0; lpUserTime = 0;
before the return FALSE there add
http://msdn.microsoft.com/en-us/library ... s.85).aspx
it says if a NULL is passed in then the call should cause an access violation
lpSystemTime is an out
so you probably need to fill the SYSTEMTIME structure with some real data
the application doesn't checks if the call fails or not
or you can open a bugzilla entry
here's the actual MSDN
http://msdn.microsoft.com/en-us/library ... s.85).aspx
here's the FILETIME structure:
http://msdn.microsoft.com/en-us/library ... s.85).aspx
i would work from those two and implement some values. shouldnt really matter what you put there
probably just dump 0s in the struct and pass it back and it should work
the problem is PROBABLY that your app is asking for values, sends in uninitialized structs, and gets back some super high values that crash it.. setting them to 0s should fix.
and you can prob use the debugger to write to those addresses and test before writing code if you know how to do that"
Re: GetSystemTimes Issue?
Found a patch:
http://bugs.winehq.org/show_bug.cgi?id=19813
http://bugs.winehq.org/attachment.cgi?id=25967
Trying now.
http://bugs.winehq.org/show_bug.cgi?id=19813
http://bugs.winehq.org/attachment.cgi?id=25967
Trying now.
Re: GetSystemTimes Issue?
It appeared to work, I got past that line and the application splash screen appears, however the application exits.
I stepped through with windbg and it reveals the following:
Wine-dbg>next
Invalid address (0x7b85daff start_process+0x5f) for breakpoint 0, disabling it
any pointers for this little jem?
I stepped through with windbg and it reveals the following:
Wine-dbg>next
Invalid address (0x7b85daff start_process+0x5f) for breakpoint 0, disabling it
any pointers for this little jem?
Re: GetSystemTimes Issue?
Hey, Did you ever get any further with this? Did you manage to get BEC working under wine?
Re: GetSystemTimes Issue?
Yes I did.
Apply the patch to wine source as mentioned above.
Run BEC with --dsc flag:
wine Bec.exe -f config.cfg --dsc
Works great in screen.
Apply the patch to wine source as mentioned above.
Run BEC with --dsc flag:
wine Bec.exe -f config.cfg --dsc
Works great in screen.