Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.03.06;
Скачать: CL | DM;

Вниз

WebBrowser чужого приложения   Найти похожие ветки 

 
Ertong ©   (2004-12-29 14:45) [0]

Как можно получить интерфейс чужого WebBrowser, для управления им (например, загрузить страницу, заполнить форму).


 
Dolt ©   (2004-12-31 09:10) [1]

1) Получаем хэндл Internet Explorer_Server.
2) GetIEFromHWnd(WndChild, IE);

function GetIEFromHWND(WHandle: HWND; var IE: IWebbrowser2): HRESULT;
var
hInst: HWND;
lRes: Cardinal;
MSG: Integer;
pDoc: IHTMLDocument2;
ObjectFromLresult: TObjectFromLresult;
begin
hInst := LoadLibrary("Oleacc.dll");
@ObjectFromLresult := GetProcAddress(hInst, "ObjectFromLresult");
if @ObjectFromLresult <> nil then begin
  try
    MSG := RegisterWindowMessage("WM_HTML_GETOBJECT");
    SendMessageTimeOut(WHandle, MSG, 0, 0, SMTO_ABORTIFHUNG, 1000, lRes);
    Result := ObjectFromLresult(lRes, IHTMLDocument2, 0, pDoc);
    if Result = S_OK then
      (pDoc.parentWindow as IServiceprovider).QueryService(IWebbrowserApp, IWebbrowser2, IE);
  finally
    FreeLibrary(hInst);
  end;
end;
end;

ЗЫ. Функцию писал не я - нашел на просторах этого же сайта



Страницы: 1 вся ветка

Текущий архив: 2005.03.06;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.037 c
4-1106198609
!Cyber
2005-01-20 08:23
2005.03.06
Как программно закрыть окно чужого диалога


14-1108588949
Луарвик
2005-02-17 00:22
2005.03.06
Хост базы MySQL


3-1107700175
dreamse
2005-02-06 17:29
2005.03.06
Как выполнить хранимую процедуру с параметрами


3-1107367125
VitGun
2005-02-02 20:58
2005.03.06
Правильная связь нескольких таблиц. Как?


14-1108415012
palva
2005-02-15 00:03
2005.03.06
Заведите себе собственный вирусятник