Memory reference error in Vb.exe
#1
Posted 07 February 2012 - 07:48 AM
I am getting the error "The instuction at "0x7c910a19" refrenced memory at "0xffffffff". The memory could not be read" when I exit from the application EXE which is built in VB6.0. I do not get this error when I run the program through Vb environment. Only getting error when I make EXE and run it.
Can somebody help me please with the solution?
Thanks,
Ana
#2
Posted 07 February 2012 - 09:05 AM
Billy3
#3
Posted 07 February 2012 - 09:15 AM
I am getting error when i run EX and exit from it. I have placed debugger on terminate and unload of main form. But not able to catch the error. I am not getting error when I run program through VB environment. So not able to catch the exact line of code.
Thanks,
Ana
#4
Posted 07 February 2012 - 09:23 AM
There are a couple of people here who do (unfortunately) still use VB6; perhaps they'll be able to help with the debugger to run down the problem. (But I can't do that)
Billy3
#5
Posted 12 February 2012 - 06:15 PM
#6
Posted 12 February 2012 - 06:40 PM
Keep in mind that 0xffffffff is not a real memory address since
0xffffffff = -1 (using two's complement)
The last time I saw this with VB6 was quite some time ago but if I remember correctly it had to do with a Windows Media Player control or component in the program. Does your program have anything using WMP in it? If so, you should double check that part of the code.
James
#7
Posted 12 February 2012 - 11:51 PM
Billy3
#8
Posted 13 February 2012 - 11:35 AM
I have encountered people trying to troubleshoot the problem by searching for what was trying to access memory location 0xffffffff and that does not work
James
#9
Posted 13 February 2012 - 11:36 AM
Billy3
#10
Posted 13 February 2012 - 11:49 AM
It doesn't happen in VB, but it is probably what you suggested before...
Quote
and the COM component was probably not written in VB.
A lot of VB6 devs don't go that deep though and look for the error in VB. I guess that was the convoluted point I was trying to make and failed miserably. I apologize for the confusion.
James
#11
Posted 13 February 2012 - 01:47 PM
What happens is a something (probably a COM object or part of one) gets cleaned up twice on exit and the second time it throws an INVALID_HANDLE_VALUE error. The value of INVALID_HANDLE_VALUE is 0xFFFFFFFF and something in VB6 mistakenly tries to access that INVALID_HANDLE_VALUE value.
Billy is correct that it is possible (if not probable) that it is trying to access 0xFFFFFFFF.
So if that is the case, the program is trying to close and clean up something twice in the regular runtime environment that it is only doing once in the developer environment.
I could be wrong though as I could not find anything online about this in a quick search.
My mistake comes from interpreting 0xFFFFFFFF as -1 in other programming languages
James

Help

Back to top










