Re: вызов ActiveX в dll
От: Laier  
Дата: 10.08.02 09:37
Оценка:
Здравствуйте Laier, Вы писали:

L>Visual C++ 6.0.

L>Экспортирую функцию из dll, которая отображает немодальное окно.
L>Вызов функции проходит успешно. Когда же я вставляю в это окно ActiveX control( без
L>создания класса, просто добавляю из панели Controls),приложение рушится с ошибкой
L>winocc.cpp, Line 301. Подскажите, что я делаю неправильно.
L>Код dll:
L>.........................
L>extern "C" __declspec( dllexport ) void Hallo();

L>CDlg myDlg;


L>void Hallo()

L>{
L> myDlg.Create(IDD_DIALOG1);
L> myDlg.ShowWindow(SW_SHOW);
L>}

L>Вызов:

L>..................
L>extern "C" __declspec( dllimport ) void Hallo();
L>...........................
L>BOOL CCntrlDlg::OnInitDialog()
L>{
L> CDialog::OnInitDialog();
L>................................
L> Hallo();
L> return TRUE;
L>}

Отвечаю сам себе. Необходимо добавить поддержку контейнера для OLE Control.
Код dll:
.....................................
BOOL CDlgApp::InitInstance()
{
AfxOleInit( );
AfxEnableControlContainer( );
return TRUE;
}

Спасибо за ответы.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.