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 » Promblems with VS 2003 to 2005 migration Collapse All
Subject Author Date
lester oidka Aug 18, 2006 - 9:47 AM

Hi,

I need to move my project from VS 2003 to VS 2005. If I use libs and dlls which I already have, I can compile the application without an error but the application doesn’t run - the initialisation fails and no window is shown. I thought it might be a problem of old compilation (I use the latest prof-uis but it was compiled by VS 2003) so I’ve recompiled it with VS 2005. Now my app can’t be compiled at all - I get about 80 unresolved externals
like these:

MountDlg.obj : error LNK2001: unresolved external symbol "public: virtual int __thiscall CExtResDlg::Create(unsigned short const *,class CWnd *)" (?Create@CExtResDlg@@UAEHPBGPAVCWnd@@@Z)
OptionsDlg.obj : error LNK2001: unresolved external symbol "public: virtual int __thiscall CExtResDlg::Create(unsigned short const *,class CWnd *)" (?Create@CExtResDlg@@UAEHPBGPAVCWnd@@@Z)
ProgressDlg.obj : error LNK2001: unresolved external symbol "public: virtual int __thiscall CExtResDlg::Create(unsigned short const *,class CWnd *)" (?Create@CExtResDlg@@UAEHPBGPAVCWnd@@@Z)
PropertiesDlg.obj : error LNK2001: unresolved external symbol "public: virtual int __thiscall CExtResDlg::Create(unsigned short const *,class CWnd *)" (?Create@CExtResDlg@@UAEHPBGPAVCWnd@@@Z)
Aboutdlg.obj : error LNK2001: unresolved external symbol "public: virtual int __thiscall CExtResDlg::Create(unsigned short const *,class CWnd *)" (?Create@CExtResDlg@@UAEHPBGPAVCWnd@@@Z)

: error LNK2001: unresolved external symbol "public: virtual int __thiscall CExtPopupMenuWnd::ItemInsertSpecPopup(class CExtPopupMenuWnd *,int,unsigned short const *,class CExtCmdIcon const &)" (?ItemInsertSpecPopup@CExtPopupMenuWnd@@UAEHPAV1@HPBGABVCExtCmdIcon@@@Z)

: error LNK2019: unresolved external symbol "public: virtual int __thiscall CExtPopupMenuWnd::ItemInsertSpecPopup(class CExtPopupMenuWnd *,int,unsigned short const *,class CExtCmdIcon const &)" (?ItemInsertSpecPopup@CExtPopupMenuWnd@@UAEHPAV1@HPBGABVCExtCmdIcon@@@Z) referenced in function __ehhandler$?OnClickedOptions@CdisCryptorView@@IAEXXZ

: error LNK2001: unresolved external symbol "public: virtual int __thiscall CExtPopupMenuWnd::ItemFindByAccessChar(unsigned short,int,int)const " (?ItemFindByAccessChar@CExtPopupMenuWnd@@UBEHGHH@Z)

: error LNK2001: unresolved external symbol "public: virtual int __thiscall CExtPopupMenuWnd::ItemFindByAccessChar(unsigned short,int,int)const " (?ItemFindByAccessChar@CExtPopupMenuWnd@@UBEHGHH@Z)

: error LNK2001: unresolved external symbol "public: virtual int __thiscall CExtPopupMenuWnd::ItemFindByText(unsigned short const *,int,int)const " (?ItemFindByText@CExtPopupMenuWnd@@UBEHPBGHH@Z)

: error LNK2001: unresolved external symbol "public: virtual int __thiscall CExtPopupMenuWnd::ItemFindByText(unsigned short const *,int,int)const " (?ItemFindByText@CExtPopupMenuWnd@@UBEHPBGHH@Z)

and so on.

Where did I make the mistake? Do I have to add some prep. defs?

I use Prof-UIS and ProfSkin, both with combined versions (LIB + DLL)

Technical Support Aug 18, 2006 - 1:01 PM

We can guess you try to link your project that was compiled with VS 2005 with a Prof-UIS LIB file that was compiled with VS 2003. Please check the library paths in your VS 2005.

lester oidka Aug 19, 2006 - 2:13 AM

I use the correct libraries - I’m sure about it. It doesn’t work even if the old libraries are deleted. It finds the correct libs BUT still it doesn not compile.

To make sure I was clear in my first post:
Once again - I use the old compilation - my app can be compiled but the rogram doesn’t run
- I use VS2005 compilation - it can not even be compiled. Because of all the unresolved externals. I guess it has to be some preprocessor definition which disables the specified things in profuis254.lib

lester oidka Aug 19, 2006 - 3:06 AM

I tried to remove all Prof-uis files and start from scratch. I’ve downloaded prof-uis again, compile it (for like 10th time) and...

...
...
...

I have the same problem :(

Technical Support Aug 19, 2006 - 8:49 AM

First of all, if you are using Visual Studio 2005 (8.0) and MFC 8.0 provided with it, you should use Prof-UIS compiled with Visual Studio 2005 and based on MFC 8.0. You have no chance to use Prof-UIS compiled with other version of Visual C++ and based on other version of MFC. If you have one copy of some Prof-UIS version installed on your computer and you can see compiled DLL/LIB files in the ../Prof-UIS/Bin_800 folder and the ../Prof-UIS/Include and ../Prof-UIS/Bin_800 folders are referred in the Include and Library folders list of your Visual Studio 2005, then you should have no problems with compiling your projects. Please also ensure you have no other versions of Prof-UIS DLL available in the system folder and other folders listed in the PATH system variable.

lester oidka Aug 19, 2006 - 12:56 PM

How can I directly say to prof-uis to compile with MFC 8.0? That could be the only thing I am not quite sure about.

Technical Support Aug 20, 2006 - 11:38 AM

Prof-UIS includes project/solution files (ProfUISDLL_800.vcproj/ProfUISDLL_800.sln and ProfUISLIB_800.vcproj/ProfUISLIB_800.sln) files which you should open and compile for creating the required Prof-UIS libraries based on MFC 8.0 in Visual Studio 2005. If you compile these projects, the compiled libraries will appear in the Bin_800 folder. You should not port other .dsp/.dsw/.vcproj/.sln projects and solutions (that are used in older versions of Visual Studio) to Visual Studio 2005. Please remove all the ../Prof-UIS/Bin_*** folders and open the ../Prof-UIS/ProfUISDLL/ProfUISDLL_800.sln solution if you need Prof-UIS as a DLL or the ../Prof-UIS/ProfUISLIB/ProfUISLIB_800.sln solution if you need Prof-UIS as a static library. After compiling the required configurations of the open project/solution the ../Prof-UIS/Bin_800 folder will appear and it will contain the required Prof-UIS libraries based on MFC 8.0 and ready for use in your MFC/C++ projects developed in Visual Studio 2005.