Error message when you compile a Visual C++ 2010 project that includes the Atlcomcli.h file

Article translations Article translations
Article ID: 982517 - View products that this article applies to.
Expand all | Collapse all

On This Page

SYMPTOMS

Consider the following scenario:
  • You have a Microsoft Visual C++ 2010 project that includes the Atlcomcli.h file.
  • You specify the /J compiler option to define the _CHAR_UNSIGNED macro in the project.
  • You compile the project.
In this scenario, you receive one of the following error messages:
  • error C2338: CVarTypeInfo< char > cannot be compiled with /J or _CHAR_UNSIGNED flag enabled
  • error C2338: CVarTypeInfo< char* > cannot be compiled with /J or _CHAR_UNSIGNED flag enabled
Note Visual C++ 2010 is a component of Microsoft Visual Studio 2010.

CAUSE

This problem occurs because static assertions in the Atlcomcli.h file are set to the CHAR_UNSIGNED macro incorrectly.

RESOLUTION

Resolution for Visual Studio 2010 Service Pack 1 (SP1)

If you use Visual Studio 2010 SP1, install the hotfix which is described in the following knowledge base article:
2545588 FIX: Access violation when you run a Visual C++ 2010 application that uses a singular value to reset an input iterator

Resolution for Visual Studio 2010

If you use Visual Studio 2010, install the following hotfix.

Hotfix information

A supported hotfix is now available from Microsoft. However, it is intended to correct only the problem that is described in this article. Apply it only to systems that are experiencing this specific problem. This hotfix may receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.

To resolve this problem immediately, contact Microsoft Customer Support Services to obtain the hotfix. For a complete list of Microsoft Customer Support Services telephone numbers and information about support costs, visit the following Microsoft Web site:
http://support.microsoft.com/contactus/?ws=support
Note In special cases, charges that are ordinarily incurred for support calls may be canceled if a Microsoft Support Professional determines that a specific update will resolve your problem. The usual support costs will apply to additional support questions and issues that do not qualify for the specific update in question.

Prerequisites

You must have Visual Studio 2010 installed to apply this hotfix.

Restart requirement

You do not have to restart the computer after you apply the hotfix if no instance of Visual Studio is being used.

Hotfix replacement information

This hotfix does not replace any other hotfixes.

File information

The English version of this hotfix has the file attributes (or later file attributes) 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 item in Control Panel.
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Atl100.dll10.0.30319.314158,53628-May-201007:55x64.pdb
Atl100.dll10.0.30319.314385,35228-May-201008:01IA-64
Atl100.dll10.0.30319.314138,05628-May-201008:07x86.pdb
Microsoft_vc100_atl_i64.pdb.msm163,84028-May-201006:57
Microsoft_vc100_atl_x64.pdb.msm87,04028-May-201006:59x64.pdb
Microsoft_vc100_atl_x86.pdb.msm80,89628-May-201007:00x86.pdb
Microsoft_vc100_crt_i64.pdb.msm802,81628-May-201006:57
Microsoft_vc100_crt_x64.pdb.msm568,32028-May-201006:59x64.pdb
Microsoft_vc100_crt_x86.pdb.msm556,54428-May-201007:00x86.pdb
Microsoft_vc100_debugcrt_i64.pdb.msm1,522,17628-May-201006:57
Microsoft_vc100_debugcrt_x64.pdb.msm831,48828-May-201006:58x64.pdb
Microsoft_vc100_debugcrt_x86.pdb.msm784,89628-May-201007:00x86.pdb
Microsoft_vc100_debugmfc_x64.pdb.msm6,876,67228-May-201006:58x64.pdb
Microsoft_vc100_debugmfc_x86.pdb.msm6,240,25628-May-201006:59x86.pdb
Microsoft_vc100_debugopenmp_i64.pdb.msm98,81628-May-201006:57
Microsoft_vc100_debugopenmp_x64.pdb.msm48,12828-May-201006:58x64.pdb
Microsoft_vc100_debugopenmp_x86.pdb.msm48,12828-May-201006:59x86.pdb
Microsoft_vc100_mfc_x64.pdb.msm5,287,93628-May-201006:58x64.pdb
Microsoft_vc100_mfc_x86.pdb.msm4,660,22428-May-201006:59x86.pdb
Microsoft_vc100_mfcloc_x64.pdb.msm135,68028-May-201006:58x64.pdb
Microsoft_vc100_mfcloc_x86.pdb.msm135,68028-May-201006:59x86.pdb
Microsoft_vc100_openmp_i64.pdb.msm65,53628-May-201006:57
Microsoft_vc100_openmp_x64.pdb.msm39,42428-May-201006:57x64.pdb
Microsoft_vc100_openmp_x86.pdb.msm37,88828-May-201006:59x86.pdb
Crtversion.h59127-May-201021:11
Atl100.i64.pdb4,018,17627-May-201022:26
Atl100.x64.pdb3,788,80027-May-201022:34x64.pdb
Atl100.x86.pdb3,854,33627-May-201022:36x86.pdb
Mfc100.x64.pdb27,357,18428-May-201000:20x64.pdb
Mfc100.x86.pdb24,162,30428-May-201001:09x86.pdb
Mfc100d.x64.pdb29,995,00828-May-201000:19x64.pdb
Mfc100d.x86.pdb27,619,32828-May-201001:08x86.pdb
Mfc100u.x64.pdb27,504,64028-May-201000:20x64.pdb
Mfc100u.x86.pdb24,350,72028-May-201001:09x86.pdb
Mfc100ud.x64.pdb30,257,15228-May-201000:19x64.pdb
Mfc100ud.x86.pdb27,914,24028-May-201001:08x86.pdb
Mfcm100.x64.pdb3,813,37628-May-201000:20x64.pdb
Mfcm100.x86.pdb3,903,48828-May-201001:11x86.pdb
Mfcm100d.x64.pdb3,944,44828-May-201000:20x64.pdb
Mfcm100d.x86.pdb3,960,83228-May-201001:11x86.pdb
Mfcm100u.x64.pdb3,829,76028-May-201000:20x64.pdb
Mfcm100u.x86.pdb3,919,87228-May-201001:11x86.pdb
Mfcm100ud.x64.pdb3,960,83228-May-201000:20x64.pdb
Mfcm100ud.x86.pdb3,977,21628-May-201001:11x86.pdb
Msvcp100.i64.pdb3,312,64027-May-201022:25
Msvcp100.x64.pdb4,049,92027-May-201022:33x64.pdb
Msvcp100.x86.pdb3,746,81627-May-201022:36x86.pdb
Msvcp100d.i64.pdb3,869,69627-May-201022:25
Msvcp100d.x64.pdb4,959,23227-May-201022:33x64.pdb
Msvcp100d.x86.pdb4,369,40827-May-201022:36x86.pdb
Msvcr100.i64.pdb5,549,05627-May-201022:25
Msvcr100.x64.pdb6,769,66427-May-201022:33x64.pdb
Msvcr100.x86.pdb8,866,81627-May-201022:35x86.pdb
Msvcr100d.i64.pdb6,024,19227-May-201022:25
Msvcr100d.x64.pdb8,375,29627-May-201022:33x64.pdb
Msvcr100d.x86.pdb7,891,96827-May-201022:36x86.pdb
Vcomp100.i64.pdb1,634,30427-May-201023:30
Vcomp100.x64.pdb1,617,92028-May-201000:21x64.pdb
Vcomp100.x86.pdb1,699,84028-May-201001:11x86.pdb
Vcomp100d.i64.pdb1,757,18427-May-201023:30
Vcomp100d.x64.pdb1,757,18428-May-201000:21x64.pdb
Vcomp100d.x86.pdb1,798,14428-May-201001:11x86.pdb
Src.crtversion.h75227-May-201021:54
Atl.lib14,40027-May-201022:11x86.pdb
Atl.lib16,17627-May-201022:05x86.pdb
Atl.lib13,46827-May-201022:03x86.pdb
Atlbuild.h57527-May-201021:11
Atlcomcli.h73,91326-May-201020:56
Atlconv.cpp53226-May-201020:56
Atls.lib1,509,80427-May-201022:11x86.pdb
Atls.lib1,413,15827-May-201022:05x86.pdb
Atls.lib1,209,62227-May-201022:03x86.pdb
Atlsd.lib1,836,02227-May-201022:11x86.pdb
Atlsd.lib2,091,82627-May-201022:05x86.pdb
Atlsd.lib1,664,75227-May-201022:03x86.pdb
Libcmt.lib16,845,14627-May-201022:10x86.pdb
Libcmt.lib13,210,11427-May-201022:04IA-64
Libcmt.lib13,210,11427-May-201022:04x86.pdb
Libcmt.lib18,194,11427-May-201022:02x64.pdb
Libcmt.lib18,194,11427-May-201022:02x86.pdb
Libcmtd.lib18,567,76827-May-201022:10x86.pdb
Libcmtd.lib16,919,41827-May-201022:04IA-64
Libcmtd.lib16,919,41827-May-201022:04x86.pdb
Libcmtd.lib21,006,47827-May-201022:02x64.pdb
Libcmtd.lib21,006,47827-May-201022:02x86.pdb
Libcpmt.lib8,104,96427-May-201022:10
Libcpmt1.lib8,449,77027-May-201022:10
Libcpmt1.lib9,938,39227-May-201022:02x64.pdb
Libcpmt1.lib9,400,70627-May-201022:04IA-64
Libcpmt.lib9,477,43627-May-201022:02x64.pdb
Libcpmt.lib8,864,05427-May-201022:04IA-64
Libcpmtd.lib8,846,03827-May-201022:10
Libcpmtd0.lib8,110,11627-May-201022:10
Libcpmtd0.lib10,517,02627-May-201022:02x64.pdb
Libcpmtd0.lib10,134,55027-May-201022:04IA-64
Libcpmtd1.lib8,632,61827-May-201022:10
Libcpmtd1.lib11,331,06227-May-201022:02x64.pdb
Libcpmtd1.lib11,080,72627-May-201022:04IA-64
Libcpmtd.lib11,655,65427-May-201022:02x64.pdb
Libcpmtd.lib11,500,47027-May-201022:04IA-64
Mfc100.lib5,502,92627-May-201023:19x64.pdb
Mfc100.lib5,497,94227-May-201023:47x86.pdb
Mfc100d.lib6,341,27627-May-201023:20x64.pdb
Mfc100d.lib6,327,69027-May-201023:48x86.pdb
Mfc100u.lib6,948,86227-May-201023:21x64.pdb
Mfc100u.lib7,034,80227-May-201023:49x86.pdb
Mfc100ud.lib7,997,37627-May-201023:21x64.pdb
Mfc100ud.lib8,070,92827-May-201023:49x86.pdb
Mfcm100.lib43,10427-May-201023:21x64.pdb
Mfcm100.lib41,05827-May-201023:50x86.pdb
Mfcm100d.lib46,20027-May-201023:21x64.pdb
Mfcm100d.lib44,61627-May-201023:50x86.pdb
Mfcm100u.lib44,56827-May-201023:21x64.pdb
Mfcm100u.lib42,47427-May-201023:50x86.pdb
Mfcm100ud.lib47,66227-May-201023:21x64.pdb
Mfcm100ud.lib46,03627-May-201023:50x86.pdb
Mfcs100.lib1,100,55427-May-201023:16x86.pdb
Mfcs100.lib1,096,07227-May-201023:46x86.pdb
Mfcs100d.lib1,090,29227-May-201023:16x64.pdb
Mfcs100d.lib1,063,42027-May-201023:46x86.pdb
Mfcs100u.lib1,117,89627-May-201023:17x64.pdb
Mfcs100u.lib1,113,41627-May-201023:47x86.pdb
Mfcs100ud.lib1,111,37427-May-201023:16x86.pdb
Mfcs100ud.lib1,083,21027-May-201023:46x86.pdb
Msvcmrt.lib1,716,69627-May-201022:10x86.pdb
Msvcmrt.lib1,917,11427-May-201022:02x64.pdb
Msvcmrt.lib1,917,11427-May-201022:02x86.pdb
Msvcmrt.lib2,088,53027-May-201022:04IA-64
Msvcmrt.lib2,088,53027-May-201022:04x86.pdb
Msvcmrtd.lib1,846,03227-May-201022:11x86.pdb
Msvcmrtd.lib2,067,40227-May-201022:02x64.pdb
Msvcmrtd.lib2,067,40227-May-201022:02x86.pdb
Msvcmrtd.lib2,249,63627-May-201022:04IA-64
Msvcmrtd.lib2,249,63627-May-201022:04x86.pdb
Msvcprt.lib949,24427-May-201022:10x86.pdb
Msvcprt.lib1,151,78227-May-201022:04IA-64
Msvcprt.lib1,151,78227-May-201022:04x86.pdb
Msvcprt.lib964,48427-May-201022:02x64.pdb
Msvcprt.lib964,48427-May-201022:02x86.pdb
Msvcprtd.lib964,37227-May-201022:10x86.pdb
Msvcprtd.lib1,172,96227-May-201022:04IA-64
Msvcprtd.lib1,172,96227-May-201022:04x86.pdb
Msvcprtd.lib980,62627-May-201022:02x64.pdb
Msvcprtd.lib980,62627-May-201022:02x86.pdb
Msvcrt.lib1,379,40427-May-201022:10x86.pdb
Msvcrt.lib1,527,02027-May-201022:04IA-64
Msvcrt.lib1,527,02027-May-201022:04x86.pdb
Msvcrt.lib1,396,18227-May-201022:02x64.pdb
Msvcrt.lib1,396,18227-May-201022:02x86.pdb
Msvcrtd.lib1,400,88227-May-201022:10x86.pdb
Msvcrtd.lib1,580,52827-May-201022:04IA-64
Msvcrtd.lib1,580,52827-May-201022:04x86.pdb
Msvcrtd.lib1,423,13227-May-201022:02x64.pdb
Msvcrtd.lib1,423,13227-May-201022:02x86.pdb
Msvcurt.lib31,719,96027-May-201022:11x86.pdb
Msvcurt.lib32,376,80227-May-201022:02x64.pdb
Msvcurt.lib32,376,80227-May-201022:02x86.pdb
Msvcurt.lib32,617,58027-May-201022:04IA-64
Msvcurt.lib32,617,58027-May-201022:04x86.pdb
Msvcurtd.lib33,912,24027-May-201022:11x86.pdb
Msvcurtd.lib34,532,60427-May-201022:02x64.pdb
Msvcurtd.lib34,532,60427-May-201022:02x86.pdb
Msvcurtd.lib34,813,24427-May-201022:05IA-64
Msvcurtd.lib34,813,24427-May-201022:05x86.pdb
Nafxcw.lib61,602,64427-May-201023:48x86.pdb
Nafxcw.lib73,900,88227-May-201023:20x86.pdb
Nafxcwd.lib57,192,09427-May-201023:48x86.pdb
Nafxcwd.lib72,756,64627-May-201023:19x86.pdb
Ptrustm.dll562,98627-May-201022:04IA-64
Ptrustm.dll562,98627-May-201022:04x86.pdb
Ptrustm.lib424,75627-May-201022:10x86.pdb
Ptrustm.lib475,99827-May-201022:02x64.pdb
Ptrustm.lib475,99827-May-201022:02x86.pdb
Ptrustmd.dll570,62427-May-201022:04IA-64
Ptrustmd.dll570,62427-May-201022:04x86.pdb
Ptrustmd.lib432,07027-May-201022:11x86.pdb
Ptrustmd.lib483,64827-May-201022:02x64.pdb
Ptrustmd.lib483,64827-May-201022:02x86.pdb
Ptrustu.lib322,31427-May-201022:10x86.pdb
Ptrustu.lib333,58227-May-201022:02x64.pdb
Ptrustu.lib333,58227-May-201022:02x86.pdb
Ptrustu.lib391,17627-May-201022:04IA-64
Ptrustu.lib391,17627-May-201022:04x86.pdb
Ptrustud.lib327,93227-May-201022:11x86.pdb
Ptrustud.lib339,31427-May-201022:02x64.pdb
Ptrustud.lib339,31427-May-201022:02x86.pdb
Ptrustud.lib397,44027-May-201022:04IA-64
Ptrustud.lib397,44027-May-201022:04x86.pdb
Uafxcw.lib62,774,67627-May-201023:50x86.pdb
Uafxcw.lib75,017,13227-May-201023:21x86.pdb
Uafxcwd.lib58,910,07827-May-201023:49x86.pdb
Uafxcwd.lib74,402,66227-May-201023:21x86.pdb
Vcomp.lib28,58027-May-201023:54x86.pdb
Vcomp.lib28,00427-May-201023:22x86.pdb
Vcomp.lib33,33427-May-201023:06x86.pdb
Vcompd.dll28,13027-May-201023:22x86.pdb
Vcompd.lib28,68627-May-201023:54x86.pdb
Vcompd.lib33,46227-May-201023:06x86.pdb
Mfc100.dll10.0.30319.3145,493,57628-May-201007:55x64.pdb
Mfc100.dll10.0.30319.3144,342,08828-May-201008:07x86.pdb
Mfc100chs.dll10.0.30319.31436,17628-May-201007:55x64.pdb
Mfc100chs.dll10.0.30319.31436,17628-May-201008:07x86.pdb
Mfc100cht.dll10.0.30319.31436,17628-May-201007:55x64.pdb
Mfc100cht.dll10.0.30319.31436,17628-May-201008:07x86.pdb
Mfc100d.dll10.0.30319.3146,926,16029-May-201022:57x86.pdb
Mfc100d.dll10.0.30319.3148,955,21629-May-201022:57x64.pdb
Mfc100deu.dll10.0.30319.31464,33628-May-201007:55x64.pdb
Mfc100deu.dll10.0.30319.31464,33628-May-201008:07x86.pdb
Mfc100enu.dll10.0.30319.31455,12028-May-201007:55x64.pdb
Mfc100enu.dll10.0.30319.31455,12028-May-201008:07x86.pdb
Mfc100esn.dll10.0.30319.31463,82428-May-201007:55x64.pdb
Mfc100esn.dll10.0.30319.31463,82428-May-201008:07x86.pdb
Mfc100fra.dll10.0.30319.31464,33628-May-201007:55x64.pdb
Mfc100fra.dll10.0.30319.31464,33628-May-201008:07x86.pdb
Mfc100ita.dll10.0.30319.31462,28828-May-201007:55x64.pdb
Mfc100ita.dll10.0.30319.31462,28828-May-201008:07x86.pdb
Mfc100jpn.dll10.0.30319.31443,85628-May-201007:55x64.pdb
Mfc100jpn.dll10.0.30319.31443,85628-May-201008:07x86.pdb
Mfc100kor.dll10.0.30319.31443,34428-May-201007:55x64.pdb
Mfc100kor.dll10.0.30319.31443,34428-May-201008:07x86.pdb
Mfc100rus.dll10.0.30319.31460,75228-May-201007:55x64.pdb
Mfc100rus.dll10.0.30319.31460,75228-May-201008:07x86.pdb
Mfc100u.dll10.0.30319.3145,522,76828-May-201007:55x64.pdb
Mfc100u.dll10.0.30319.3144,368,72028-May-201008:07x86.pdb
Mfc100ud.dll10.0.30319.3146,994,25629-May-201022:57x86.pdb
Mfc100ud.dll10.0.30319.3149,030,99229-May-201022:57x64.pdb
Mfcm100.dll10.0.30319.31491,47228-May-201007:55x64.pdb
Mfcm100.dll10.0.30319.31480,20828-May-201008:07x86.pdb
Mfcm100d.dll10.0.30319.314103,24829-May-201022:57x86.pdb
Mfcm100d.dll10.0.30319.314118,60829-May-201022:57x64.pdb
Mfcm100u.dll10.0.30319.31491,47228-May-201007:55x64.pdb
Mfcm100u.dll10.0.30319.31480,72028-May-201008:07x86.pdb
Mfcm100ud.dll10.0.30319.314104,78429-May-201022:57x86.pdb
Mfcm100ud.dll10.0.30319.314120,14429-May-201022:57x64.pdb
Mfcmifc80u.dll10.0.30319.31413,13629-May-201022:57x86.pdb
Msvcp100.dll10.0.30319.314608,08028-May-201007:55x64.pdb
Msvcp100.dll10.0.30319.314966,48028-May-201008:01IA-64
Msvcp100.dll10.0.30319.314421,20028-May-201008:07x86.pdb
Msvcp100d.dll10.0.30319.3141,014,09629-May-201022:57x64.pdb
Msvcp100d.dll10.0.30319.3141,978,70429-May-201022:57IA-64
Msvcp100d.dll10.0.30319.314743,24829-May-201022:57x86.pdb
Msvcr100.dll10.0.30319.314827,72828-May-201007:55x64.pdb
Msvcr100.dll10.0.30319.3141,499,47228-May-201008:01IA-64
Msvcr100.dll10.0.30319.314770,38428-May-201008:07x86.pdb
Msvcr100d.dll10.0.30319.3141,498,96029-May-201022:57x86.pdb
Msvcr100d.dll10.0.30319.3141,858,89629-May-201022:57x64.pdb
Msvcr100d.dll10.0.30319.3143,764,04829-May-201022:57IA-64
Vcomp100.dll10.0.30319.31457,16828-May-201007:55x64.pdb
Vcomp100.dll10.0.30319.314143,18428-May-201008:01IA-64
Vcomp100.dll10.0.30319.31451,02428-May-201008:07x86.pdb
Vcomp100d.dll10.0.30319.314106,83229-May-201022:57x64.pdb
Vcomp100d.dll10.0.30319.314316,75229-May-201022:57IA-64
Vcomp100d.dll10.0.30319.31487,88829-May-201022:57x86.pdb
Vcomp100ui.dll10.0.30319.31410,06429-May-201022:57x86.pdb
Vcomp100ui.dll10.0.30319.31410,57629-May-201022:57x86.pdb
Vcomp100ui.dll10.0.30319.31411,60029-May-201022:57x86.pdb
Vcomp100ui.dll10.0.30319.3149,55229-May-201022:57x86.pdb
Vcredist_ia64.exe10.0.30319.3143,117,40029-May-201001:40x86.pdb
Vcredist_x64.pdb.exe10.0.30319.31410,274,13629-May-201001:34x86.pdb
Vcredist_x86.pdb.exe10.0.30319.3149,033,04829-May-201001:46x86.pdb

WORKAROUND

To work around this problem, follow these pragma directives to include the Atlcomcli.h file:
#pragma push_macro("ATLSTATIC_ASSERT")
#undef ATLSTATIC_ASSERT
#define ATLSTATIC_ASSERT(x,y) 
#include <atlcomcli.h>
#undef ATLSTATIC_ASSERT
#pragma pop_macro("ATLSTATIC_ASSERT")

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

Properties

Article ID: 982517 - Last Review: August 29, 2011 - Revision: 4.0
APPLIES TO
  • Microsoft Visual Studio 2010 Premium
  • Microsoft Visual Studio 2010 Professional
  • Microsoft Visual Studio 2010 Ultimate
Keywords: 
kbqfe kbhotfixserver kbsurveynew kbexpertiseadvanced KB982517

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com