Поиск:

Ответ в темуСоздание новой темы Создание опроса
> IShockwaveFlash в DLL 
:(
    Опции темы
V0LT
Дата 8.4.2010, 22:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 91
Регистрация: 16.6.2009

Репутация: нет
Всего: 2



Подключаю из сетапника на Inno Setup.
DLL с данным кодом - при выходе либо ошибка либо вылет ... как побороть сия глюк

Код
#include <windows.h>
#include <atlbase.h>
#include <atlwin.h>
#import  "PROGID:ShockwaveFlash.ShockwaveFlash" rename_namespace("Flash") named_guids exclude("IServiceProvider") 

static Flash::IShockwaveFlash* shWaveFlash=NULL;

extern "C" void __stdcall f_init(HWND hWnd, char *ShockwaveFile)
{
    CoInitialize(NULL);
    AtlAxWinInit();
    AfxEnableControlContainer();
    CoCreateInstance(Flash::CLSID_ShockwaveFlash, 0, CLSCTX_INPROC, Flash::IID_IShockwaveFlash, (void **)&shWaveFlash); 
    AtlAxAttachControl(shWaveFlash,hWnd,0);
    shWaveFlash->put_Movie(bstr_t(ShockwaveFile));
}

extern "C" void __stdcall f_free()
{
    // вызов выполняется почему то два раза 
    // вылет тут 
    shWaveFlash->Release();
    CoUninitialize();
}


Это сообщение отредактировал(а) V0LT - 8.4.2010, 22:39
PM MAIL ICQ   Вверх
xvr
Дата 9.4.2010, 12:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 8
Всего: 223



Прежде чем делать CoCreateInstance нужно убедится, что ShockwaveFlash установлен и зарегистрирован
Код

    // вызов выполняется почему то два раза 
    // вылет тут 
    shWaveFlash->Release();
2 раза это много - потому и вылетает. Ограничьте вызов Release и CoUninitialize одним разом

PM MAIL   Вверх
V0LT
Дата 9.4.2010, 14:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 91
Регистрация: 16.6.2009

Репутация: нет
Всего: 2



xvr, непомогает ... вылет всё равно даже если удалить эти строки
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: COM/DCOM/ActiveX/ATL/CORBA | Следующая тема »


 




[ Время генерации скрипта: 0.1651 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.