OCX and Test Case 31

Our VB6 app uses the ListView control in mscomctl.ocx.

In our install we put mscomctl.ocx, app.exe, and app.exe.local in the Program Files\App folder.

All applicable Test Cases pass, except for Test Case 31. Starting the application app.exe does not bring up the debugger, but *ending* the application app.exe brings up the debugger.

We even tried with a simple VB6 app with just a Form and a ListView control and no code and the same behavior happens.

Can anyone help?

Here is the output from Windbg. We do not know how to read this output:

Microsoft (R) Windows Debugger Version 6.6.0007.5
Copyright (c) Microsoft Corporation. All rights reserved.

*** wait with pending attach
Symbol search path is: *** Invalid ***
****************************************************************************
* Symbol loading may be unreliable without a symbol search path. *
* Use .symfix to have the debugger choose a symbol path. *
* After setting your symbol path, use .reload to refresh symbol locations. *
****************************************************************************
Executable search path is:
ModLoad: 00400000 00404000 C:\Program Files\App\app.exe
ModLoad: 77780000 7789e000 C:\Windows\system32\ntdll.dll
ModLoad: 73640000 73671000 C:\Windows\system32\verifier.dll
ModLoad: 734b0000 734d0000 C:\Windows\system32\vrfcore.dll
ModLoad: 73470000 734ad000 C:\Windows\system32\vfbasics.dll
ModLoad: 766e0000 767b8000 C:\Windows\system32\kernel32.dll
ModLoad: 732a0000 733f3000 C:\Windows\system32\MSVBVM60.DLL
ModLoad: 76990000 76a2e000 C:\Windows\system32\USER32.dll
ModLoad: 77970000 779bb000 C:\Windows\system32\GDI32.dll
ModLoad: 76bf0000 76caf000 C:\Windows\system32\ADVAPI32.dll
ModLoad: 76590000 76653000 C:\Windows\system32\RPCRT4.dll
ModLoad: 76040000 76184000 C:\Windows\system32\ole32.dll
ModLoad: 76350000 763fa000 C:\Windows\system32\msvcrt.dll
ModLoad: 76a30000 76abc000 C:\Windows\system32\OLEAUT32.dll
ModLoad: 778d0000 778ee000 C:\Windows\system32\IMM32.DLL
ModLoad: 767c0000 76887000 C:\Windows\system32\MSCTF.dll
ModLoad: 778a0000 778a9000 C:\Windows\system32\LPK.DLL
ModLoad: 778f0000 7796d000 C:\Windows\system32\USP10.dll
ModLoad: 750e0000 7511f000 C:\Windows\system32\uxtheme.dll
ModLoad: 75db0000 75e0f000 C:\Windows\system32\SXS.DLL
ModLoad: 76260000 762e4000 C:\Windows\system32\CLBCatQ.DLL
ModLoad: 762f0000 76345000 C:\Windows\system32\SHLWAPI.dll
ModLoad: 74de0000 74f74000 C:\Windows\WinSxS\x86_microsoft.windows.common-controls_6595b64144ccf1df_6.0.6000.16386_none_5d07289e07e1d100\comctl32.dll
ModLoad: 10000000 1000c000 C:\Program Files\VMware\VMware Tools\hook.dll
(e14.ffc): Break instruction exception - code 80000003 (!!! second chance !!!)
eax=000001ff ebx=73488834 ecx=777a14cd edx=00000000 esi=00000000 edi=000001ff
eip=777c2ea9 esp=0012f6a8 ebp=0012f8a8 iopl=0 nv up ei pl nz na po nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000202
*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Windows\system32\ntdll.dll -
ntdll!DbgBreakPoint+0x1:
777c2ea9 c3 ret

[3222 byte] By [JeffRozar] at [2008-1-4]
# 1
Looks like a it might be a bug in VMWare.
BruceN.Baker-MSFT at 2007-10-11 > top of Msdn Tech,Software Development for Windows Vista,Application Compatibility for Windows Vista...
# 2
When we just use tabctl32.ocx in a form, the software does not break into the debugger, and all of our other EXEs run fine; it's just with mscomctl.ocx.

And here's a dump of when another app is run with mscomctl.ocx (on load this time):

Microsoft (R) Windows Debugger Version 6.6.0007.5
Copyright (c) Microsoft Corporation. All rights reserved.

*** wait with pending attach
Symbol search path is: *** Invalid ***
****************************************************************************
* Symbol loading may be unreliable without a symbol search path. *
* Use .symfix to have the debugger choose a symbol path. *
* After setting your symbol path, use .reload to refresh symbol locations. *
****************************************************************************
Executable search path is:
ModLoad: 00400000 0050b000 C:\Program Files\App\app2exe
ModLoad: 77780000 7789e000 C:\Windows\system32\ntdll.dll
ModLoad: 73640000 73671000 C:\Windows\system32\verifier.dll
ModLoad: 734b0000 734d0000 C:\Windows\system32\vrfcore.dll
ModLoad: 73470000 734ad000 C:\Windows\system32\vfbasics.dll
ModLoad: 766e0000 767b8000 C:\Windows\system32\kernel32.dll
ModLoad: 732a0000 733f3000 C:\Windows\system32\MSVBVM60.DLL
ModLoad: 76990000 76a2e000 C:\Windows\system32\USER32.dll
ModLoad: 77970000 779bb000 C:\Windows\system32\GDI32.dll
ModLoad: 76bf0000 76caf000 C:\Windows\system32\ADVAPI32.dll
ModLoad: 76590000 76653000 C:\Windows\system32\RPCRT4.dll
ModLoad: 76040000 76184000 C:\Windows\system32\ole32.dll
ModLoad: 76350000 763fa000 C:\Windows\system32\msvcrt.dll
ModLoad: 76a30000 76abc000 C:\Windows\system32\OLEAUT32.dll
ModLoad: 778d0000 778ee000 C:\Windows\system32\IMM32.DLL
ModLoad: 767c0000 76887000 C:\Windows\system32\MSCTF.dll
ModLoad: 778a0000 778a9000 C:\Windows\system32\LPK.DLL
ModLoad: 778f0000 7796d000 C:\Windows\system32\USP10.dll
ModLoad: 750e0000 7511f000 C:\Windows\system32\uxtheme.dll
ModLoad: 75db0000 75e0f000 C:\Windows\system32\SXS.DLL
ModLoad: 74de0000 74f74000 C:\Windows\WinSxS\x86_microsoft.windows.common-controls_6595b64144ccf1df_6.0.6000.16386_none_5d07289e07e1d100\comctl32.DLL
ModLoad: 762f0000 76345000 C:\Windows\system32\SHLWAPI.dll
ModLoad: 76cb0000 7777e000 C:\Windows\system32\shell32.dll
ModLoad: 75ed0000 75ee4000 C:\Windows\system32\Secur32.dll
ModLoad: 75ef0000 75f0e000 C:\Windows\system32\USERENV.dll
ModLoad: 76400000 76588000 C:\Windows\system32\SETUPAPI.dll
ModLoad: 747d0000 74887000 C:\Windows\system32\PROPSYS.dll
ModLoad: 76260000 762e4000 C:\Windows\system32\CLBCatQ.DLL
ModLoad: 75430000 75468000 C:\Windows\system32\rsaenh.dll
ModLoad: 27580000 27685000 C:\Program Files\App\mscomctl.ocx
ModLoad: 76890000 76904000 C:\Windows\system32\comdlg32.dll
(dc4.f20): Break instruction exception - code 80000003 (!!! second chance !!!)
eax=000001ff ebx=734baff0 ecx=777a14cd edx=00000000 esi=00000000 edi=000001ff
eip=777c2ea9 esp=0012f3e8 ebp=0012f5e8 iopl=0 nv up ei pl nz na po nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000202
*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Windows\system32\ntdll.dll -
ntdll!DbgBreakPoint+0x1:
777c2ea9 c3 ret

JeffRozar at 2007-10-11 > top of Msdn Tech,Software Development for Windows Vista,Application Compatibility for Windows Vista...
# 3
This says the file has been tested but is not shipping with Vista. It doesn't sound like it's not supported, just that the developer has to ship them separately b/c they don't come with Vista:

http://msdn2.microsoft.com/en-us/vbrun/ms788708.aspx

JeffRozar at 2007-10-11 > top of Msdn Tech,Software Development for Windows Vista,Application Compatibility for Windows Vista...
# 4
mscomctl is a Microsoft OCX.
JeffRozar at 2007-10-11 > top of Msdn Tech,Software Development for Windows Vista,Application Compatibility for Windows Vista...
# 5

Try the version 6.1.97.82 of mscomctl.ocx (Visual Basic SP6). I had the same problem using version 6.0.88.62 (SP4).

With SP6 version everythings works ok.

Jairo

JairoMarques at 2007-10-11 > top of Msdn Tech,Software Development for Windows Vista,Application Compatibility for Windows Vista...
# 6
Now this is a show-stopper: other programs that are using the same OCX. If they are uninstalled, somehow the OCX registration unregisters itself and the app.exe program will not run, giving the error:

Run-time error '339':
Component 'MSCOMCTL.OCX' or one of its dependencies not correctly registered: a file is missing or invalid

JeffRozar at 2007-10-11 > top of Msdn Tech,Software Development for Windows Vista,Application Compatibility for Windows Vista...
# 7
Do you install it in the same directory as your application and register it? Try installing it as non-shared.
BruceN.Baker-MSFT at 2007-10-11 > top of Msdn Tech,Software Development for Windows Vista,Application Compatibility for Windows Vista...
# 8
Thanks, Bruce. SxS fixed this problem.
JeffRozar at 2007-10-11 > top of Msdn Tech,Software Development for Windows Vista,Application Compatibility for Windows Vista...
# 9

Version version 6.1.97.82 of mscomctl.ocx is not provided by Visual Basic SP6.

Maybe it does now if you download SP6, but on the SP6 I have on my MSDN subscription version 6.1.95.45 is installed.

You can find version 6.1.97.86 here: http://support.microsoft.com/kb/896559

FransOskam at 2007-10-11 > top of Msdn Tech,Software Development for Windows Vista,Application Compatibility for Windows Vista...
# 10

Hi Bruce,

I also have the same problem. Should I recompile the VB application with the new version of mscomtl and then test it on the vista machine.

Thanks,

Raji

RejiA at 2007-10-11 > top of Msdn Tech,Software Development for Windows Vista,Application Compatibility for Windows Vista...
# 11

This is the same error I am getting. I am trying to figure out what to do about it. Is there any way you can help? I looked on the microsoft page and updated what I thought needed to be updated but that didn't work. Please help.

Thank you, Jennifer

Jwalker007 at 2007-10-11 > top of Msdn Tech,Software Development for Windows Vista,Application Compatibility for Windows Vista...

Software Development for Windows Vista

Site Classified