Go4Expert

Go4Expert (http://www.go4expert.com/)
-   MFC (http://www.go4expert.com/forums/mfc/)
-   -   MainWindow of dll how to launch from client exe (http://www.go4expert.com/forums/mainwindow-dll-launch-client-exe-t27191/)

sujan.dasmahapatra 22Nov2011 08:35

MainWindow of dll how to launch from client exe
 
Dear Friends I have two mfc application. One is a dll and the other one is a client:) exe application. From the exe application I am trying to load the dll and launch the mainwindow of the dll.
For that in dll.....I have the view class there in view implementation file i am declaring a view pointer, like the code below
Code:

//RevolutionProjView.cpp file
CRevolutionProjView *view;
CRevolutionProjView::CRevolutionProjView()
{
 view = this;
}
// The I am creating an extern C function by name runAppli like below.
extern "C" BOOL __declspec(dllexport) runAppli(void)
{
  AFX_MANAGE_STATE(AfxGetStaticModuleState());
  view->ShowWindow(SW_SHOW);
  return true;
}

Now I have exe applicatioln where I want to launch the mainwindow of the dll above is given below.
Code:

void CClientRevProjDlg::OnBnClickedButton1()
{
    typedef VOID (*MYPROC)(void);
    HINSTANCE hinstLib;
    MYPROC ProcAdd;
    BOOL fFreeResult, fRunTimeLinkSuccess = FALSE;
    hinstLib = LoadLibrary(L"C:\\Users\\DasmahapatraS\\Projects\\Bhagavan_Cadem\\RevolutionProj_OrthoGraphic\\debug\\RevolutionProj.dll");
 if (hinstLib != NULL)
    {
        ProcAdd = (MYPROC) GetProcAddress(hinstLib, "runAppli");
        if (fRunTimeLinkSuccess = (ProcAdd != NULL))
        (ProcAdd) ();
        fFreeResult = FreeLibrary(hinstLib);
    }
    if (! fRunTimeLinkSuccess)
        printf("message via alternative method\n");
}

With this my application mainwindow is appearing but immediately its crashing. Can anyone tell me whats going wrong. How can I launch the mainwindow of the dll ?? Please help me. Thanks Sujan


All times are GMT +5.5. The time now is 01:39.