|
|
Home » U++ TheIDE » U++ TheIDE: Compiling, Linking, Debugging of your packages » SOLVED - When I try to do the exe on computer I get has encountered a problem
SOLVED - When I try to do the exe on computer I get has encountered a problem [message #32721] |
Fri, 03 June 2011 20:07  |
silverx
Messages: 62 Registered: March 2011
|
Member |
|
|
I created a couple of programs. I can run them on the vista machine I created the program, and then when I try on another computer running XP SP3, they run fine, but if I try and run them on yet another computer also running XP SP2, but I upgraded to SP3 as well it gives me:
xxx.exe has encountered a problem and needs to close. We are sorry for the inconvenience. Send Error Report, or Don't Send.
While I can see the data that it has with the I can't copy it to even send to any one. The data doesn't stay around long enough for me to even copy it.
I have attached the code, and the exe in a zip file. This is a stripped down system information example to just get a few simple items and put in a prompt box to view the information.
Is there anything I can do to make it easier to find the issue on the one system that my programs are not working?
The simple gui01 does work on it just fine, as I did try that on the machine.
I did try it on a windows 7 system, and they did run fine. I only have limited access to the windows 7 system as it is strictly remote access and not very fast.
Thanks
David
[Updated on: Sat, 04 June 2011 16:18] Report message to a moderator
|
|
|
|
|
|
Re: When I try to do the exe on computer I get xx.exe has encountered a problem and needs to close. [message #32730 is a reply to message #32728] |
Sat, 04 June 2011 14:42   |
silverx
Messages: 62 Registered: March 2011
|
Member |
|
|
Yes, I know it was fixed, but that was after I stripped it down to just what I needed.
Further on the issue, I found the statement that it is having the problem with. I got IDA disassembler, and using the address from the information I found the instruction. Also the IDA disassembler allows you to run the code, and it gave me the illegal instruction on the same instruction.
It is in the Upp::StdConvertDouble code.
I also compiled and linked the code for bombs.exe and it runs fine on all of the computers including the one that I am having the issue with my program with.
I then used the IDA disassembler on bombs.exe and found the same code.
Interesting, it is not the same code. My uses MOVSD which is the illegal instruction.
Attached is a zip with 2 files in it. one with bombs.txt, which is the code from bombs.exe the other mysysinfo.txt from code of my program.
Not sure why the code is different for this function, as both were compiled and linked on the same computer. And I didn't change any linking option between them.
Any possible reason for this difference in the compiled code?
smaller part of code from mysysinfo
mov ecx, $S20
or ecx, 1
mov $S20, ecx
mov [ebp+var_4], 0
push 0
movsd xmm0, ds:qword_8DB838
xorpd xmm0, oword ptr ds:__mask@@NegDouble@
sub esp, 8
movsd [esp+1Ch+var_1C], xmm0
sub esp, 8
fld ds:qword_8DB838
fstp [esp+24h+var_24]
mov ecx, offset unk_AFE170
call j_Upp__ConvertDouble__ConvertDouble
push offset _Upp__StdConvertDouble____2____dynamic_atexit_destructor_for __x__ ; _onexit_t
call atexit
add esp, 4
mov [ebp+var_4], 0FFFFFFFFh
The code from bombs for the same part of the code
mov ecx, $S20
or ecx, 1
mov $S20, ecx
mov [ebp+var_4], 0
push 0
fld ds:dbl_7845E8
fchs
sub esp, 8
fstp [esp+1Ch+var_1C]
sub esp, 8
fld ds:dbl_7845E8
fstp [esp+24h+var_24]
mov ecx, offset unk_947D28
call j_Upp__ConvertDouble__ConvertDouble
push offset _Upp__StdConvertDouble____2____dynamic_atexit_destructor_for __x__ ; _onexit_t
call atexit
add esp, 4
mov [ebp+var_4], 0FFFFFFFFh
Just a few lines are different, it uses fstp instead of movsd.
Any idea's on why and how to get them to generate the same code?
David
-
Attachment: codedif.zip
(Size: 1.64KB, Downloaded 359 times)
|
|
|
|
|
|
|
Goto Forum:
Current Time: Tue May 13 01:35:31 CEST 2025
Total time taken to generate the page: 0.01073 seconds
|
|
|