| ; [''''{AFA0DC11-C313-11D0-831A-00C04FD5AE38}'''']
function AddUrlAndNotify(pocsUrl: PWideChar; pocsTitle: PWideChar; dwFlags: Integer;
fWriteHistory: Integer; var poctNotify: Pointer;
const punkISFolder: IUnknown): HResult; stdcall;
function ClearHistory: HResult; stdcall;
end;
function ClearIEHistory:integer;
const
CLSID_CUrlHistory: TGUID = ''''{3C374A40-BAE4-11CF-BF7D-00AA006946EE}'''';
var
IEHistory:IUrlHistoryStg2;
begin
IEHistory:=CreateComObject(CLSID_CUrlHistory) as IUrlHistoryStg2;
IEHistory.ClearHistory;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ClearIEHistory;
end;
3.添加到收藏夹和整理收藏夹
const
CLSID_ShellUIHelper: TGUID = ''''{64AB4BB7-111E-11D1-8F79-00C04FC2FBE1}'''';
var
p:procedure(Handle: THandle; Path: PChar); stdcall;
procedure TForm1.OrganizeFavorite(Sender: Tobject);
var
H: HWnd;
begin
H := LoadLibrary(PChar(''''shdocvw.dll''''));
if H <> 0 then
begin
p := GetProcAddress(H, PChar(''''DoOrganizeFavDlg''''));
if Assigned(p) then p(Application.Handle, PChar(FavFolder));
end;
FreeLibrary(h);
end;
procedure TForm1.AddFavorite(Sender: TObject);
var
ShellUIHelper: ISHellUIHelper;
url, title: Olevariant;
begin
Title := Webbrowser1.LocationName;
Url := Webbrowser1.LocationUrl;
if Url <> '''''''' then
begin
ShellUIHelper := CreateComObject(CLSID_SHELLUIHELPER) as IShellUIHelper;
ShellUIHelper.AddFavorite(url, title);
end;
end;
4.直接从TWebBrowser得到网页源码及Html
Memo1.Lines.Add(IHtmlDocument2(WebBrowser1.Document).Body.OuterHtml);
如果,用TWebBrowser浏览HTML文件的时候要将其保存为文本文件就很简单了,
Memo1.Lines.Add(IHtmlDocument2(WebBrowser1.Document).Body.OuterText);
5.获取IE地址栏的handle
var
Form1: TForm1;
implementation
{$R *.DFM}
Function GetURL(H:hwnd;lparam:longint):boolean;stdcall;
var str,url:array [0..254] of char;
begin
getclassname(h,@str,255);
if strpas(@str)=''''ComboBoxEx32'''' then // ComboBoxEx32可以改成Edit.
begin
SendMessage(h,WM_GETTEXT,255,LongInt(@url));
SendMessage(h,WM_SETTEXT,255,longint(pchar(''''http://www.sina.com.cn'''')));
Sendmessage(h,WM_KEYDOWN,VK_Return,1);
form1.ListBox1.Items.Add(strpas(@url));
end;
result:=true;
end;
function callbackproc(H:HWnd;lparam:longint):Boolean;stdcall;
var str:array [1..255] of char;
begin
getclassname(h,@str,255);
if ((strpas(@str)=''''CabinetWClass'''') or (strpas(@str)=''''IEFrame'''')) then
begin
Enumchildwindows(h,@GetURL,0);
end;
result:=true;
end;
上一页 [1] [2] [3] [4] 下一页 |