HTML control и картинки
От: da_007  
Дата: 18.12.06 08:53
Оценка:
Добрый день.

Такая штука: пишу программку, будет использоваться компонент HTMLСontrol. Проблема: при отладке программки на эмуляторе — все работает как надо, все отлично. Но при запуске на КПК — все картинки в HTMLControl отображаются только на очень короткое время, а потом меняются на "крестик" — файл не найден. Кто-нибудь сталкивался с подобным?

Подробности: все окна создаются вручную, т.е. никаких диалогов-ресурсов. Из ресурсов берется только картинка. Общая идея работы с HTMLControl:

main ()
{
...
LoadLibrary (_T("Htmlview.dll"));
...
InitHTMLControl (hInst);
...
RegisterClass (&WndClass);
...
CreateWindowEx (NULL,ProgrammName,ProgrammName,WS_EX_OVERLAPPEDWINDOW|WS_VISIBLE,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInst,0);
...
CreateWindowEx (NULL,DISPLAYCLASS,ProgrammName,WS_CHILD|WS_VISIBLE,2,0,ScreenSizeX-4,ScreenSizeY-MENU_HEIGHT,hWndMain,NULL,hInst,0);
...
hBmpLogo=LoadBitmap (hInst,MAKEINTRESOURCE(109));
...


WndProc ()
{
...
// Перепробовал все возможные варианты - на эмуляторе работает ЛЮБОЙ. На КПК - ни один не работает. Везде одно и то же: картинка появляется на доли секунды, и тут же пропадает.
ImgInfoM.dwCookie=pn->dwCookie;
ImgInfoW.iOrigHeight=13;
ImgInfoW.iOrigWidth=16;
ImgInfoW.hbm=hBmpLogo;
ImgInfoW.bOwnBitmap=false;
SendMessage(hWndHTML,DTM_SETIMAGE,0,(LPARAM)&ImgInfoM);
...


Сабклассинг окна HTML ничего не дал — ему вообще никакие сообщения не посылаются (логично, окно же дочернее).

Пробовал сперва получить контекст окна (как в примере Микрософта) — те же результаты.

Кстати говоря, вопрос: у Микрософта в примере, после отправки сообщения — что картинку сменили, потом зачем-то вызывается старый обработчик. Зачем? Я считал, надо самому вернуть ноль — что сообщение обработано. Впрочем, я пробовал и как у Микрософт — аналогичные результаты.

Показательный момент: если в документе несколько картинок — то они отображаются все, и потом ОДНОВРЕМЕННО пропадают — может, это что-то скажет...
Re: HTML control и картинки
От: игппук Беларусь  
Дата: 18.12.06 14:58
Оценка:
может быть картинка не подгружается? (LoadBitmap)

теоретически может быть так, что когда вы сидите в дебаги или отладке, то у вас пути отличаются, чем когда в релизе.
проверить можно еще так.
откомпилить под дебагом и запустить не из под студии. а из командной строки.
проклятый антисутенерский закон
Re[2]: HTML control и картинки
От: da_007  
Дата: 18.12.06 17:08
Оценка:
Здравствуйте, игппук, Вы писали:

И>может быть картинка не подгружается? (LoadBitmap)


И>теоретически может быть так, что когда вы сидите в дебаги или отладке, то у вас пути отличаются, чем когда в релизе.

И>проверить можно еще так.
И>откомпилить под дебагом и запустить не из под студии. а из командной строки.

Картинки точно подгружаются =) Во-первых, я проверяю, что вернул LoadBitmap, во вторых картинки же показываются на какой-то период времени... Пути — тоже не могут играть роль, т.к. картинки я гружу из ресурсов... Кстати говоря, и если картинку создать вручную (через CreateBitmap, на основании растра) — аналогичные результаты: отображается, но на несколько секунд.

А про отладку — можно чуточку подробнее? Я вообще не понимаю — зачем нужен режим отладки при компиляции под КПК... Какие-то отладочные механизмы, но как их использовать на КПК — че-то не догоняю...
Re[3]: HTML control и картинки
От: игппук Беларусь  
Дата: 19.12.06 09:30
Оценка:
Здравствуйте, da_007, Вы писали:

_>А про отладку — можно чуточку подробнее? Я вообще не понимаю — зачем нужен режим отладки при компиляции под КПК... Какие-то отладочные механизмы, но как их использовать на КПК — че-то не догоняю...


отладка на девайсе точно такая же, как на эмуляторе. тока в качестве цели указываешь девайс, а не эмулятор.
отладка на девайсе имеет свои плюсы
1. быстрее
2. эмулятор не может абсолютно точно сэмулировать устройство
проклятый антисутенерский закон
Re: HTML control и картинки
От: JohnBel Россия  
Дата: 11.01.07 18:53
Оценка:
HTML control не отображает картинки (только крестики) если мало свободной оперативной памяти.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re: HTML control и картинки
От: wiy  
Дата: 19.10.08 07:50
Оценка:
В обработчике нужно вернуть ненулевое значение. Это будет означать что вы обработали запрос на картинку и контрол не будет её пытаться загружать сам.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.