读书人

[]使用ObjectFromLresult控制外部浏览

发布时间: 2012-02-23 22:01:34 作者: rapoo

[求助]使用ObjectFromLresult控制外部浏览器时问题
最近需要控制外部浏览器 参考网上的源码终于有些成果了

procedure TForm1.Button1Click(Sender: TObject);
var
HWND_I: HWND;
PT: TPoint;
MV: Cardinal;
IRut: Cardinal;
IDOC: HTMLDocument2;
begin
GetCursorPos(PT);
HWND_I := WindowFromPoint(PT);
Caption := IntToStr(HWND_I);
MV := RegisterWindowMessage('WM_HTML_GETOBJECT');
SendMessageTimeout(HWND_I, MV, 0, 0, SMTO_ABORTIFHUNG, 1000, IRut);
if ObjectFromLresult(IRut, HTMLDocument2, 0, IDoc) = S_OK then
ShowMessage('成功') ;
else
ShowMessage('失败');
end;


-----------------------------------
就是取鼠标处的浏览器窗口
取出来的IDOC是HTMLDocument2 也能够控制获取网址一类的东西了
但是因为本人一直是学习使用
WebBrowser.OleObject.Document
WebBrowser.OleObject.Document.URL
这样的形式 而且用得挺熟了
请问怎么把 HTMLDocument2 转换成 OleObject这样的形式呢?
谢谢



[解决办法]

Delphi(Pascal) code
var  iDisp: IDispatch;  oleObject: OleVariant;IDOC.QueryInterface(IDispatch, idisp);oleObject := iDisp; 

读书人网 >.NET

热点推荐