crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V  < 1 2  
Ответить в данную темуНачать новую тему
> Как внедрить QEventLoop внутрь dll, Dll будет юзаться со стороны дельфи либо MFC-приложения
evg123
  опции профиля:
сообщение 10.6.2010, 9:43
Сообщение #11


Студент
*

Группа: Участник
Сообщений: 24
Регистрация: 29.4.2009
Из: Минск
Пользователь №: 714

Спасибо сказали: 0 раз(а)




Репутация:   0  


Вроде есть стандартное решение проблемы:
взято в http://doc.qt.nokia.com/solutions/4/qtwinm...#pluginInstance
Самый конец страницы.
Но, (ё-моё), гдеж взять этот класс QMfcApp? В коммерческой версии что-ль?


bool QMfcApp::pluginInstance ( Qt::HANDLE plugin = 0 ) [static]

If there is no global QApplication object (i.e. qApp is null) this function creates a QApplication instance and returns true; otherwise it does nothing and returns false.

The application installs an event filter that drives the Qt event loop while the MFC or Win32 application continues to own the event loop.

Use this static function if the application event loop code can not be easily modified, or when developing a plugin or DLL that will be loaded into an existing Win32 or MFC application. If plugin is non-null then the function loads the respective DLL explicitly to avoid unloading from memory.

BOOL WINAPI DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID lpvReserved)
{
if (dwReason == DLL_PROCESS_ATTACH)
QMfcApp::pluginInstance(hInstance);

return TRUE;
}

Set plugin to 0 when calling this function from within the same executable module.

If this function is used, call enterModalLoop and exitModalLoop whenever you call a Win32 or MFC function that opens a local event loop.

void Dialog::someSlot()
{
QMfcApp::enterModalLoop();
MessageBox(...);
QMfcApp::exitModalLoop();
}

Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
hkarel
  опции профиля:
сообщение 11.6.2010, 10:26
Сообщение #12


Студент
*

Группа: Участник
Сообщений: 25
Регистрация: 25.5.2009
Пользователь №: 771

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(evg123 @ 10.6.2010, 10:43) *
Но, (ё-моё), гдеж взять этот класс QMfcApp? В коммерческой версии что-ль?


В коммерческой Qt 4.5.0 точно нет, хотя на ней и тестилось. Возможно, Qt/MFC Migration Framework идет отдельной поставкой.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
alex977
  опции профиля:
сообщение 11.6.2010, 10:41
Сообщение #13


Активный участник
***

Группа: Участник
Сообщений: 310
Регистрация: 19.6.2008
Из: Россия, МО, г.Мытищи
Пользователь №: 206

Спасибо сказали: 77 раз(а)




Репутация:   8  


evg123,
посмотри здесь:
http://qt.nokia.com/products/appdev/add-on...ws/qtwinmigrate
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
evg123
  опции профиля:
сообщение 15.6.2010, 11:15
Сообщение #14


Студент
*

Группа: Участник
Сообщений: 24
Регистрация: 29.4.2009
Из: Минск
Пользователь №: 714

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(alex977 @ 11.6.2010, 11:41) *

Спасибо, буду скачивать
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

2 страниц V  < 1 2
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


4 чел. читают эту тему (гостей: 4, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 22.12.2024, 21:20