Bonjour,
J'ai une dll MFC, dans laquelle j'ai crée une boite de dialogue MFC,
A partir d'une application c++/cli, je veux lancer ma boite de dialogue et l'intégrer dans la form
Le code MFC de l'export des méthodes est
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) { ShowG3DViewerDlg(); IntPtr appWin; System::Threading::Thread::Sleep(2500); appWin = FindWindow(classname,"AppTest"); // Put it into this form SetParent(appWin, this->panel1->Handle); SendMessage(appWin, WM_SYSCOMMAND, SC_MAXIMIZE, 0); } private: System::Void button2_Click(System::Object^ sender, System::EventArgs^ e) { Display("Test", vX, vY, vZ); }
Le FindWindow retourne toujours une valeur nulle pourtant avec Spy++ je trouve ma fenêtre et un handle non null bien sure
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 extern "C" void WINAPI ShowDlg() { HINSTANCE curInstance = AfxGetInstanceHandle (); HMODULE hDll = ::GetModuleHandle("MyDll.dll"); if(hDll!=NULL) AfxSetResourceHandle(hDll); else return; //echec CDlgTest dlg; dlg.DoModal(); AfxSetResourceHandle(AfxGetApp()->m_hInstance); } extern "C" void WINAPI Display(std::string name) { AFX_MANAGE_STATE(AfxGetStaticModuleState ()); CDlgTest dlg; dlg.Create("Test"); }
Comment je peux intégrer la Dialog MFc dans mon application Winforms
Merci d'avance
Partager