Type Library [Tlb] reference gives "VB6 caused an invalid page fault".
To be more specific, I have been creating type libraries using MkTypLib and MIDL and about 1/16th of the time when I try to reference them [in the references dialog] I get a page fault that is almost always the same [with these exact values]:
Code:
VB6 caused an invalid page fault in module <unknown> at 00de:003f003f.
Registers:
EAX=00000019 CS=0167 EIP=003f003f EFLGS=00010202
EBX=005db13c SS=016f ESP=007ff600 EBP=007f003f
ECX=ecbb7020 DS=016f ESI=0060025c FS=4aef
EDX=006207ec ES=016f EDI=006001c8 GS=0000
Bytes at CS:EIP:
Stack dump:
00000000 006001c8 00000000 000006d8 00000000 007ff63c 0fac91a9 000006c4
007ff634 00000000 005fc210 00000000 0fa975e7 005fe3e8 00000000 007ff6ac
-> First off 003F003F seems to me like an odd value for the instruction pointer, more like a color value.
-> In the reference dialog it is displayed in the list [or I browse to it if I did not register it first], I check the box, but as soon as I hit 'OK' I get this page fault.
-> It seems to have no effect if I remove all possible GUId/name references to the library from the registry before accessing it.
-> No other programs seem to have any issues accessing any of these libraries.
-> It does not seem to matter if it is compiled from MIDL or MkTypLib [and I have
NO CHOICE as to which can be used for a particular library as each has a requirement to be compiled by the specific program in order for it to work for VB.]
-> Sometimes just making minute changes suddenly causes this issue. These changes seem to be arbitrary and have been anything from changing the library name [unreg all related 1st of coarse], a GUId, or just text in some of the 'helpstring' values.
-> So far, a very few number of times, after tinkering with the library for weeks the issue magically disappears with no major differences from the original, and I have NO idea [or clues] as to why!
-> I have already checked the help files [MSDN]
very thoroughly to see if there is/was a known bug, and came up empty.
-> This has been an ongoing issue since I have been writing my own type libraries for VB6 [years], and across different machines/installs.
-> I would love for someone to check/test if they come across the same issue with these Tlb files but some of the files used for compiling are multiple and very large otherwise I would upload some, and I am not certain of the policies regarding uploading type libraries otherwise I would attach a pair where they are very similar but one works and the other causes the crash. If you are aware that 'Tlb' files are NOT restricted then let me know and I will upload some.
-> Other than that, although unlikely to be the cause, is there a way I can 'verify' that my VB6 install is sound and not corrupted?
Any ideas?