Microsoft KB Archive/257421

= FIX: Compiling ActiveX Project Does Not Release Reference Correctly =

Article ID: 257421

Article Last Modified on 8/7/2007

-

APPLIES TO


 * Microsoft Visual Basic 6.0 Professional Edition
 * Microsoft Visual Basic 6.0 Enterprise Edition

-



This article was previously published under Q257421



SYMPTOMS
After compiling a Visual Basic 6.0 ActiveX Control that uses an MFC ActiveX Control, you receive the following error message when you exit Visual Basic:

Debug Assertion Failed!

Program: C:\PROGRAM FILES\MICROSOFT VISUAL STUDIO\VB98\VB6.EXE

File: cmdtarg.cpp

Line: 52

For information on how your program can cause an assertion

failure, see the Visual C++ documentation on asserts.

(Press Retry to debug the application)



CAUSE
The problem occurs when the reference to IClassFactory2 is not released by Visual Basic.



STATUS
Microsoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article. This bug was corrected in the latest service pack for Visual Studio 6.0.

For additional information about Visual Studio service packs, click the following article numbers to view the articles in the Microsoft Knowledge Base:

194022 INFO: Visual Studio 6.0 Service Packs, What, Where, Why

194295 HOWTO: Tell That a Visual Studio Service Pack Is Installed

To download the latest Visual Studio service pack, visit the following Microsoft Web site:

http://msdn2.microsoft.com/en-us/vstudio/Aa718353.aspx



Create an MFC Control

 * 1) Start Microsoft Visual C++.
 * 2) On the File menu, select New.
 * 3) Select the Project tab and choose MFC ActiveX ControlWizard.
 * 4) Enter the project name and click OK.
 * 5) Use all of the project defaults.
 * 6) Select Build .ocx from the Build menu or press the F7 key.

Use an MFC Control in a Visual Basic ActiveX Control Project

 * 1) Start a new ActiveX Control project in Visual Basic. UserControl1 is created by default.
 * 2) On the Project menu, select Components, or right-click on the Toolbox and select Components.
 * 3) On the Components dialog box, check the MFC control that you just created, and then click OK.
 * 4) Add the MFC control to the UserControl.
 * 5) On the File menu, select Make Project1.ocx.
 * 6) After compiling the project, close Visual Basic and note that the error occurs.

Additional query words: sp4

Keywords: kbbug kbctrl kbctrlcreate kbfix kbvs600sp4fix kbvs600sp5fix KB257421

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.