最近需要控制外部浏览器 参考网上的源码终于有些成果了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这样的形式呢?
谢谢
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这样的形式呢?
谢谢
var
iDisp: IDispatch;
oleObject: OleVariant;IDOC.QueryInterface(IDispatch, idisp);
oleObject := iDisp;
后来还是学了一下htmlelement