Professional UI Solutions
Site Map   /  Register


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 » Elegant Ribbon Tech Support » Compile ProfSkin libary static Collapse All
Subject Author Date
dirk lindner Aug 6, 2008 - 8:55 AM

ihave a few question and one big problem:

I want to compile ProfSkin static libary.

it failed at ProfSkin.h line 144

//#if (defined _AFXDLL) && (! defined __STATPROFUIS_WITH_DLLMFC__)
//    #if (defined __PROF_UIS_FOR_REGULAR_DLL)
        new CDynLinkLibrary( the_ProfSkin_ExtensionModule );//this line 144 why are lines before uncommed ?
//    #endif

if i comment it out the lib will be compiled but the compiled exe crashed at runtime.

I use Prof uis version is 2.63.

1 Question:

It is possible to use the skins static and have samoebody solve this problem ?

The Docu says "yes"
But starting from Prof-UIS 2.52, we introduced an easy way to enable the resource-dependent features in static builds.

2. Why there are so many libs delivered that not be able to compile (12 build errors) !

3. In fact what can i do static and what must be dynamic linked ?

Greats Dirk

Technical Support Aug 12, 2008 - 2:14 PM

First of all, your question is related to Prof-UIS library - not to Elegant Ribbon control. Please post Prof-UIS related questions into Prof-UIS forums.

We suspect you are using Prof-UIS and ProfSkin libraries in MFC regular DLL project or Active X project. If our guess is correct, then you should use RDE configuration of Prof-UIS library (RDE - Regular DLL Extension). You should define the __PROF_UIS_FOR_REGULAR_DLL preprocessor symbol in your project settings and it will be automatically liked with appropriate RDE versions of both Prof-UIS and ProfSkin libraries. You should also invoke the following code in the InitInstance() virtual method of the CWinApp-derived class in your project:

CExt_ProfUIS_ModuleState::InitExtension(  AfxGetStaticModuleState()  );
CExt_ProfSkin_ModuleState::InitExtension(  AfxGetStaticModuleState()  );

The Prof-UIS library is based on MFC library, Visual C++ runtime libraries and explicitly linked with stub LIB files from several Windows DLLs. The ProfSkin library is based on Prof-UIS library and two third-party libraries required for PNG image format loading: ZLib and LibPNG. You should also compile ZLib and LibPNG libraries. Both Prof-UIS and ProfSkin libraries are always linked with your DLL or EXE automatically. This means you should not specify any LIB files in the linker settings of your project.