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

Вниз

Работал ли кто с Active Accessibility?   Найти похожие ветки 

 
Gero ©   (2006-07-06 15:14) [0]

Возникла проблема. Собственно, нужно получить IHTMLWindow2 окна Internet Explorer, зная Handle окна.
Написал такой код, используя Active Accessibility:


function GetIWindowFromHandle(Wnd: THandle): IHTMLWindow2;
var
 Acc: IAccessible;
 SProv: IServiceProvider;
 Disp: IDispatch;
 Window: IHTMLWindow2;
 Hr: HRESULT;
begin
 Result := nil;
 if Assigned(AccessibleObjectFromWindow) then
   begin
     Hr := AccessibleObjectFromWindow(Wnd, OBJID_WINDOW, @IID_IAccessible, Disp);
     if Succeeded(Hr) then
       begin
         Acc := Disp as IAccessible;
         Hr := Acc.QueryInterface(IID_IServiceProvider, SProv);
         if Succeeded(Hr) then
           begin
             Hr := SProv.QueryService(IHTMLWindow2, IHTMLWindow2, Window);
             // Window почему-то равен nil
           end;
       end;
   end;
end;


Собственно все проходит нормально, я получаю ссылку на ServiceProvider, а затем по идее, должен получить ссылку на IHTMLWindow2, путем вызова QueryService, но этого почему-то не происходит.
Если кто сталкивался с подобным, надеюсь на помощь.


 
Ломброзо ©   (2006-07-06 15:37) [1]

Оно?
http://support.microsoft.com/kb/q249232/


 
Ломброзо ©   (2006-07-06 15:40) [2]

Там же и второй способ, попроще

http://support.microsoft.com/kb/176792/EN-US/

Указатель на окно, разумеется, нужно получить от документа


 
Gero ©   (2006-07-07 00:52) [3]

Спасибо, пригодилось.



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

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

Наверх




Память: 0.47 MB
Время: 0.032 c
15-1152114162
mac117
2006-07-05 19:42
2006.08.06
Ошибка доступа к XML файлу через msxml


1-1151101641
Аццкий юзар
2006-06-24 02:27
2006.08.06
ADO компоненты в dll - инициализация


3-1149163023
Hadroran
2006-06-01 15:57
2006.08.06
Динамические LookUp поля


8-1139576928
sco
2006-02-10 16:08
2006.08.06
Алгоритм качественного уменьшения рисунка


9-1132081451
Kirill_
2005-11-15 22:04
2006.08.06
DelphiX Sprite.Dead