Professional UI Solutions
Site Map   /  Register
 
 

Forum

Please Log In to post a new message or reply to an existing one. If you are not registered, please register.

NOTE: Some forums may be read-only if you are not currently subscribed to our technical support services.

Forums » Prof-UIS General Discussion » Error C2059 when compiling... Collapse All
Subject Author Date
Emmanuel Verguet Oct 6, 2006 - 7:44 AM

I was using Visual Studio 6 SP6, Prof-UIS v2.54 to compile my projects, and recently I installed PSDK february 2003 (the last one supported by VS6), and now I have a compilation error "transact.h(226) : error C2059: syntax error : ’constant’" (see also post on your forum, Soo Wei Tan Sep 1, 2006). PSDK includes in VS6 settings are moved on top of the list. If I move them on the bottom, compilation is OK, but I cannot use PSDK new headers files !

Can you help me ?

Thanks.

Emmanuel Verguet Oct 6, 2006 - 7:51 AM

I have some news : using Visual Studio 6 SP6, PSDK february 2003, ProfUISDLL_600.dsw(ProfUISDLL - Win32 ANSI Debug) does not compile :

C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE\transact.h(226) : error C2059: syntax error : ’constant’
C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE\transact.h(271) : error C2143: syntax error : missing ’;’ before ’}’
C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE\oledb.h(17149) : error C2143: syntax error : missing ’;’ before ’}’
C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE\oledb.h(17149) : error C2143: syntax error : missing ’;’ before ’}’
C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE\oledb.h(17149) : error C2143: syntax error : missing ’;’ before ’}’

If I remove PSDK february 2003, compilation is ok. So it seems that Prof-UIS and PSDK 2003 are not compatible. Do you have a fix for that ?

Thanks.

Emmanuel Verguet Oct 6, 2006 - 8:27 AM

Last news : If I include #include <Transact.h> before <Prof-UIS.h> in my project, compilation is ok.
Now to compile your ProfUISDLL_600.dsw(ProfUISDLL - Win32 ANSI Debug), I have to add #include <Transact.h> in top of your <Prof-UIS.h>.

Is the fix correct ?

Thanks.

Technical Support Oct 7, 2006 - 12:52 PM

The problem is caused by different function declarations in the COM API in different Platform SDKs. Your problem solution is acceptable.