An ASSERT Error Occurs in Oledisp1.cpp When You Use VT_UI2 and VT_UI4 Variant Types (823812)



The information in this article applies to:

  • Microsoft Windows CE .NET 4.2

SYMPTOMS

When you use either the VT_UI2 variant type or the VT_UI4 variant type in a method for a Microsoft Foundation Classes (MFC) ActiveX control, you may experience the following symptoms:
  • You receive an ASSERT error in Oledisp1.cpp.
  • A memory leak occurs in the CCmdTarget::CallMemberFunc function.

RESOLUTION

Hotfix Information

A supported software update is now available from Microsoft as Windows CE 4.2 Core OS QFE 823812. To resolve this problem immediately, click the following article number for information about obtaining Windows CE Platform Builder and core operating system software updates:

837392 How to locate core operating system fixes for Microsoft Windows CE Platform Builder products

File Information

The English version of this fix has the file attributes (or later) that are listed in the following table. The dates and times for these files are listed in coordinated universal time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.
   Date         Time   Version            Size    File name
   -----------------------------------------------------------------------------------------

   Path: Signed
   21-Jul-2003  21:44  4.2.3.721       2,337,384  Wincepb42-030721-kb823812-armv4.exe  
   21-Jul-2003  21:45  4.2.3.721       2,337,384  Wincepb42-030721-kb823812-armv4i.exe  
   21-Jul-2003  21:45  4.2.3.721       2,431,592  Wincepb42-030721-kb823812-mipsii.exe  
   21-Jul-2003  21:46  4.2.3.721       2,443,880  Wincepb42-030721-kb823812-mipsii_fp.exe  
   21-Jul-2003  21:45  4.2.3.721       2,497,128  Wincepb42-030721-kb823812-mipsiv.exe  
   21-Jul-2003  21:45  4.2.3.721       2,505,320  Wincepb42-030721-kb823812-mipsiv_fp.exe  
   21-Jul-2003  21:44  4.2.3.721       2,329,192  Wincepb42-030721-kb823812-sh3.exe  
   21-Jul-2003  21:45  4.2.3.721       2,341,480  Wincepb42-030721-kb823812-sh4.exe  
   21-Jul-2003  21:44  4.2.3.721       2,210,408  Wincepb42-030721-kb823812-x86.exe  
The English version of this fix has the file attributes (or later) that are listed in the following table. The dates and times for these files are listed in coordinated universal time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.
   Date         Time   Version            Size    File name
   --------------------------------------------------------------

   Path: Others\Mfc\Include
   14-Jun-2003  15:54                     51,821  Afxdisp.h

   Path: Others\Mfc\Lib\Armv4
   02-Jul-2003  20:47  6.0.712.1279      271,360  Olece400.dll     ARM
   02-Jul-2003  20:47                    600,600  Olece400.lib
   02-Jul-2003  20:47                  2,281,472  Olece400.pdb
   02-Jul-2003  20:47                    165,145  Olece400.rel
   02-Jul-2003  20:56  6.0.712.1279      629,760  Olece400d.dll    ARM
   02-Jul-2003  20:56                    685,926  Olece400d.lib
   02-Jul-2003  20:56                  2,625,536  Olece400d.pdb
   02-Jul-2003  20:56                    200,235  Olece400d.rel

   Path: Others\Mfc\Lib\Armv4i
   02-Jul-2003  20:48  6.0.712.1279      282,624  Olece400.dll     THUMB
   02-Jul-2003  20:48                    600,600  Olece400.lib
   02-Jul-2003  20:48                  2,281,472  Olece400.pdb
   02-Jul-2003  20:48                    165,145  Olece400.rel
   02-Jul-2003  20:57  6.0.712.1279      640,512  Olece400d.dll    THUMB
   02-Jul-2003  20:57                    685,926  Olece400d.lib
   02-Jul-2003  20:57                  2,625,536  Olece400d.pdb
   02-Jul-2003  20:57                    200,235  Olece400d.rel

   Path: Others\Mfc\Lib\Mipsii
   02-Jul-2003  20:49  6.0.712.1279      346,624  Olece400.dll     R4000
   02-Jul-2003  20:49                    598,278  Olece400.lib
   02-Jul-2003  20:49                  2,191,360  Olece400.pdb
   02-Jul-2003  20:49                    391,751  Olece400.rel
   02-Jul-2003  20:58  6.0.712.1279      705,536  Olece400d.dll    R4000
   02-Jul-2003  20:58                    685,748  Olece400d.lib
   02-Jul-2003  20:58                  2,666,496  Olece400d.pdb
   02-Jul-2003  20:58                    623,084  Olece400d.rel

   Path: Others\Mfc\Lib\Mipsii_fp
   02-Jul-2003  20:50  6.0.712.1279      347,136  Olece400.dll     R4000
   02-Jul-2003  20:50                    599,620  Olece400.lib
   02-Jul-2003  20:50                  2,199,552  Olece400.pdb
   02-Jul-2003  20:50                    390,272  Olece400.rel
   02-Jul-2003  20:59  6.0.712.1279      709,120  Olece400d.dll    R4000
   02-Jul-2003  20:59                    693,540  Olece400d.lib
   02-Jul-2003  20:59                  2,666,496  Olece400d.pdb
   02-Jul-2003  20:59                    624,331  Olece400d.rel

   Path: Others\Mfc\Lib\Mipsiv
   02-Jul-2003  20:51  6.0.712.1279      379,904  Olece400.dll     MIPSFPU
   02-Jul-2003  20:51                    598,278  Olece400.lib
   02-Jul-2003  20:51                  2,330,624  Olece400.pdb
   02-Jul-2003  20:51                    444,560  Olece400.rel
   02-Jul-2003  20:59  6.0.712.1279      734,720  Olece400d.dll    MIPSFPU
   02-Jul-2003  20:59                    685,748  Olece400d.lib
   02-Jul-2003  20:59                  2,666,496  Olece400d.pdb
   02-Jul-2003  20:59                    628,275  Olece400d.rel

   Path: Others\Mfc\Lib\Mipsiv_fp
   02-Jul-2003  20:51  6.0.712.1279      380,416  Olece400.dll     MIPSFPU
   02-Jul-2003  20:51                    599,606  Olece400.lib
   02-Jul-2003  20:51                  2,330,624  Olece400.pdb
   02-Jul-2003  20:51                    441,689  Olece400.rel
   02-Jul-2003  21:00  6.0.712.1279      738,304  Olece400d.dll    MIPSFPU
   02-Jul-2003  21:00                    691,652  Olece400d.lib
   02-Jul-2003  21:00                  2,666,496  Olece400d.pdb
   02-Jul-2003  21:00                    626,013  Olece400d.rel

   Path: Others\Mfc\Lib\Sh3
   02-Jul-2003  20:52  6.0.712.1279      229,376  Olece400.dll     SH3
   02-Jul-2003  20:52                    599,760  Olece400.lib
   02-Jul-2003  20:52                  2,150,400  Olece400.pdb
   02-Jul-2003  20:52                    226,393  Olece400.rel
   02-Jul-2003  21:01  6.0.712.1279      553,472  Olece400d.dll    SH3
   02-Jul-2003  21:01                    685,382  Olece400d.lib
   02-Jul-2003  21:01                  2,617,344  Olece400d.pdb
   02-Jul-2003  21:01                    337,521  Olece400d.rel

   Path: Others\Mfc\Lib\Sh4
   02-Jul-2003  20:53  6.0.712.1279      230,400  Olece400.dll     SH4
   02-Jul-2003  20:53                    601,414  Olece400.lib
   02-Jul-2003  20:53                  2,150,400  Olece400.pdb
   02-Jul-2003  20:53                    223,812  Olece400.rel
   02-Jul-2003  21:02  6.0.712.1279      556,544  Olece400d.dll    SH4
   02-Jul-2003  21:02                    693,476  Olece400d.lib
   02-Jul-2003  21:02                  2,617,344  Olece400d.pdb
   02-Jul-2003  21:02                    335,491  Olece400d.rel

   Path: Others\Mfc\Lib\X86
   02-Jul-2003  20:54  6.0.712.1279      178,176  Olece400.dll     X86
   02-Jul-2003  20:54                    597,590  Olece400.lib
   02-Jul-2003  20:54                  2,084,864  Olece400.pdb
   02-Jul-2003  20:54                    120,398  Olece400.rel
   02-Jul-2003  21:03  6.0.712.1279      468,992  Olece400d.dll    X86
   02-Jul-2003  21:03                    685,382  Olece400d.lib
   02-Jul-2003  21:03                  2,535,424  Olece400d.pdb
   02-Jul-2003  21:03                    183,705  Olece400d.rel

   Path: Others\Mfc\Src
   14-Jun-2003  16:07                      4,831  Dispimpl.h
   20-Jun-2003  03:49                     52,662  Oledisp1.cpp
   16-Jun-2003  03:58                     14,036  Oledisp2.cpp

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article.

MORE INFORMATION

This update includes the following improvements:
  • Implements correct handling of VT_I1, VT_UI2, VT_UI4, VT_R4 and VT_R8 dispatch parameters for SH4, MIPSII FP and MIPSIV FP.
  • Improves thunk code according to the correct CPU calling conventions for SH3, SH4, MIPSII FP and MIPSIV FP.
  • Eliminates a memory leak in dispatch code marshaling.

Modification Type:MinorLast Reviewed:5/27/2005
Keywords:kbBug kbfix kbQFE KB823812 kbAudDeveloper