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 Tech Support » Prof-UIs & Windows Platform SDK Collapse All
Subject Author Date
Robert Hofstetter Aug 13, 2009 - 1:27 AM

Does Prof-UIS compile with Windows Server 2003 Platform SDK (the latest Platform SDK comptiable with Visual C++ 6.0)?


My Visual C++ 6.0 project was statically linked to Prof-UIs 2.85 and compiled without any problems. But it does not complie when I started using the Window Platform SDK in my project. The errors are: 


Compiling...

StdAfx.cpp

   Prof-UIS multiple monitor support:

      built-in

   Automatically linking with Prof-UIS library: ProfUIS285ymd.lib

      (Professional User Interface Suite)

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 ’}’


Any suggestions?


Regards


Robert

Technical Support Aug 14, 2009 - 11:58 AM

This is the easiest solution. The Prof-UIS source code does not need to be modified in this case. Then you can include only newer headers the new Platform SDK into your project. But this solution is not always can be applied. The Platform SDKs are often funny. For instance, the OLE automation APIs often contain the same functions with the same names but with larger parameter counts. This will require modification of Prof-UIS source code. We can make Prof-UIS compatible with Platform SDK 2003, but it will become incompatible with all the supported Visual C++ versions without installing appropriate Platform SDK additionally. We already did similar work several times by customer requests. The fix is simple but it can be different for different Platform SDKs. Only the ...\Prof-UIS\Include\Prof-UIS.h file needs to be modified. In some cases there is enough to add the #include < atlbase.h > line of code. In other cases we need to include particular Platform SDK header files. For instance, you encountered error in the transact.h file. This means you should try to include this file into the ...\Prof-UIS\Include\Prof-UIS.h file. If this does not solves problem, then you should find other Platform SDK’s header files which include the transact.h file and try to include other files into the ...\Prof-UIS\Include\Prof-UIS.h file.

Technical Support Aug 14, 2009 - 11:58 AM

This is the easiest solution. The Prof-UIS source code does not need to be modified in this case. Then you can include only newer headers the new Platform SDK into your project. But this solution is not always can be applied. The Platform SDKs are often funny. For instance, the OLE automation APIs often contain the same functions with the same names but with larger parameter counts. This will require modification of Prof-UIS source code. We can make Prof-UIS compatible with Platform SDK 2003, but it will become incompatible with all the supported Visual C++ versions without installing appropriate Platform SDK additionally. We already did similar work several times by customer requests. The fix is simple but it can be different for different Platform SDKs. Only the ...\Prof-UIS\Include\Prof-UIS.h file needs to be modified. In some cases there is enough to add the #include < atlbase.h > line of code. In other cases we need to include particular Platform SDK header files. For instance, you encountered error in the transact.h file. This means you should try to include this file into the ...\Prof-UIS\Include\Prof-UIS.h file. If this does not solves problem, then you should find other Platform SDK’s header files which include the transact.h file and try to include other files into the ...\Prof-UIS\Include\Prof-UIS.h file.

Robert Hofstetter Aug 13, 2009 - 6:08 PM

That’s not a solution. I need to use the Windows SDK in my project thus have to keep the Platform SDK include folders before Visual C++ include folders. Otherwise, my project will not compile. 


I tried to open the ProfUISLIB_600.dsw and build the Prof-Uis static lib manually (without using integration wizard) and had the same errors. Does that mean Prof-Uis can not work with Windows Platfrom SDK?

Technical Support Aug 13, 2009 - 12:53 PM

It will compile ok if you move the Platform SDK include folders to the bottom of the include folders list in you Visual C++ settings.

Robert Hofstetter Aug 13, 2009 - 6:10 PM

Sorry. Should reply yours here.


That’s not a solution. I need to use the Windows SDK in my project thus have to keep the Platform SDK include folders before Visual C++ include folders. Otherwise, my project will not compile. 


 


I tried to open the ProfUISLIB_600.dsw and build the Prof-Uis static lib manually (without using integration wizard) and had the same errors. Does that mean Prof-Uis can not work with Windows Platfrom SDK?