Здравствуйте Patalog, Вы писали:
P>Здравствуйте drummer, Вы писали:
D>>Вот возникла такая проблема:
D>>я хочу в в программе вызвать mfc-диалог. В общем то вызов диалога идет не напрямую, а из экспортируемой функции. Проблема в том , что данная функция "обычная" (не mfc), и из нее диалог не вызывается. И я по незнанию и неопытности не знаю как такое осуществить (если это вообще возможно) — вызвать мфс-шный диалог из обычной функции. Или придется экспортировать классы???
>Заюзай для етой цели MFC dll Wizard (MFC extention dll) и будет тебе щастье.
это для вызова
void CTestDllDlg::OnBnClickedButton1()
{
HMODULE hLib;
hLib = LoadLibrary("Dl.dll");
if(hLib)
{
void (*F7)();
(FARPROC &)F7 = GetProcAddress(hLib,"F7");
F7();
}
else
{
AfxMessageBox("Dll not found!");
}
// TODO: Add your control notification handler code here
}
это в библиотеке dll
cpp
__declspec(dllexport) void F7()
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
CM6 dlg7;
dlg7.DoModal();
}
и в h
extern "C"{__declspec(dllexport) void F7();}
и усе......