![]() |
встраивание flash в c++
пытаюсь создать элемент ShockwaveFlash.ShockwaveFlash. подскажите пожалуйста в чем может быть ошибка.
в WinMain вызываю AtlAxWinInit (), дальше создаю окно и в обработчике WM_CREATE делаю такой вызов: CreateWindowEx (0, TEXT("AtlAxWin"), TEXT("ShockwaveFlash.ShockwaveFlash"), WS_CHILD | WS_TABSTOP | WS_VISIBLE, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, wWindow, 0, wInstance, 0) где wWindow был передан WinProc, а wInstance - WinMain. функция завершается с ошибкой 6 - invalid handle. что я забыл сделать ? ps ShockwaveFlash в com object viewer-е есть. |
Для того, чтобы динамически хостить различные ActiveX с помощью библиотеки ATL MSDN рекомендует пользоваться классом AtlAxWin80. Вот вариант его использования под MSVC++ 2005:
Код:
#define _ATL_APARTMENT_THREADEDПо вашему примеру: зачем указан стиль WS_CHILD? wWindow - по смыслу хэндл родительского окна либо NULL, если окно самостоятельное. Ведь класс AtlAxWin - лишь окно-контейнер для контрола. wInstance - хэндл инстанса приложения, типа не WinMain а один из передаваемых ей параметров, либо просто GetModuleHandle(NULL); |
спасибо большое за пример, сейчас попробую.
Цитата:
Цитата:
если не сложно, можете дать ссылку на к-н описание или сказать, что вводить в гугл ?) |
ссылка по #import
или в гугл "#import c++" |
м-да, глупый вопрос. спасибо. а я использовал midl для этого.
странно, вроде работает wnd.Create(0, rect, _T("ShockwaveFlash.ShockwaveFlash"), WS_VISIBLE ); а CreateWindowEx - нет. спасибо за наводку. пойду учить atl >использовал midl ну в смысле сохранял ole-com object viewer-ом в idl сначала |
Код:
#include <windows.h>откуда взял. |
спасибо, да, его смотрел, но в атл из .net как раз так у меня не получается - т.е. с помощью CreateWindow. в vc 6 все работает. слышал, что AtlAxWin изменилось на AtlAxWin7, но это не помогает, видимо изменилось и еще что-то. но ваш пример с CAxWindow работает - в нем наверное учитываются эти изменения.
|
| Часовой пояс GMT +4, время: 05:56. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.