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 » Crash While using CExtTabWnd in ATL Composite Control Collapse All
Subject Author Date
rajneesh May 3, 2003 - 1:16 AM

Hi,
While using CExtTabWnd in ATL Composite control,my application crashes while accesing its functions i.e, ItemGetCount(),SelectionGet() etc.

It doesnot crashes on OnTabWndSelectionChange() but crashes while accesing functions ItemGetCount(),SelectionGet() on Handling Rbutton Down etc.

Below is the test code.
CExtTabWnd* m_ProfTab;

m_ProfTab = new CDemoExtTabWnd();
m_ProfTab->Create( CWnd::FromHandle (m_hWnd), CRect(0,0,150,30), IDC_TAB3 , WS_CHILD | WS_VISIBLE, __ETWS_BOLD_SELECTION|__ETWS_ORIENT_TOP, NULL) ;


LRESULT OnRButtonDown(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
{
long lSel = m_ProfTab->SelectionGet(); //crashes here
long lCount =m_ProfTab->ItemGetCount();//crashes here

}

        CString sFormat;
        //sFormat.Format (_T("%d ,%d "),lSel,lCount);
        //AfxMessageBox (sFormat);

        return 0;
    }


Customer Support Team May 3, 2003 - 9:04 AM

Dear Rajneesh,

Prof-UIS is an MFC extension library by definition and should be called from an MFC-based EXE program. In case your component is critical for your application, we could help you write a similar component based on CExtTabWnd, which is compatible with the ATL control project.

rajneesh May 6, 2003 - 7:16 AM

Hi,
I have to use the profuis in my ATL Controls. So what i have to do so that this dll can be used in ATL.


Regards,
Rajneesh

Customer Support Team May 6, 2003 - 9:37 AM

Dear Rajneesh,

You cannot use MFC-extension DLLs (like Prof-UIS) in other DLLs. The DLLs in question should only be used in EXE programs which, in turn, should also be based on MFC.

The solution we can suggest you is to include some of the Prof-UIS source files directly into your ATL project (e.g. ExtTabWnd.*, ExtPaintManager.*). But, in this case, you have to modify those files, i.e. to remove dependency of other library sources.

If you encounter any problems, we can make a test ATL project with the modified version of the tab window inside. BUT PLEASE NOTE: THIS PROJECT WILL NOT USE PROF-UIS DLL.