FIX: Multiple ActiveX Control Containers Under Win32s Problems (152792)
The information in this article applies to:
- The Microsoft Foundation Classes (MFC), when used with:
- Microsoft Visual C++, 32-bit Editions 4.0
- Microsoft Visual C++, 32-bit Editions 4.1
This article was previously published under Q152792 SYMPTOMS
It is possible to use MFC versions 4.0 and 4.1 to create ActiveX control
containers that will run under Win32s version 1.3. However if, after
the container has been started under Win32s, another MFC ActiveX control
container is started or a second instance of the same application is
started, the second ActiveX control container can't display ActiveX
controls if the first application has already displayed one of its ActiveX
controls.
If the first application doesn't create its ActiveX controls first, then
the second application can create ActiveX controls, but then the first
application can't create ActiveX controls at all. Also, if you are running
a debug build of the application, you will see an assertion in Appinit.cpp
at line 110 when the second application starts up.
CAUSE
This is caused by improper initialization of the MFC and C-Run-Time DLLs
under Win32s.
RESOLUTION
The assertion in Appinit.cpp at line 110 can be safely ignored. Note that
assertions are only included in debug builds of MFC applications. There
currently is no work around to the problem of a second MFC app being able
to use MFC control container support under Win32s.
STATUS
Microsoft has confirmed this to be a bug in the Microsoft products listed
at the beginning of this article. This bug was corrected in the Visual C++
4.1b patch.
For information of the availablity of the patch, see the following
Microsoft Knowlegdebase article:
154428 PATCH: Visual C++ Version 4.1b
Modification Type: | Major | Last Reviewed: | 10/24/2003 |
---|
Keywords: | kbBug kbContainer kbCtrl kbfix kbNoUpdate kbVC410fix KB152792 |
---|
|