|
Тема |
eto... [re: PhantomAS] |
|
Автор |
Demo (malko razbira..) |
|
Публикувано | 29.05.02 12:54 |
|
|
unit Unit1;
interface
uses
WinInet, Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ScktComp, Grids, StdCtrls, ExtCtrls, shlOBJ;
type
TForm1 = class(TForm)
Button1: TButton;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
function GetUrlCacheEntryInfo(lpszUrlName: PChar; lpCacheEntryInfo: PInternetCacheEntryInfo; var lpdwCacheEntryInfoBufferSize: DWORD): BOOL; stdcall;
function FindFirstUrlCacheEntry(lpszUrlSearchPattern: PChar;
lpFirstCacheEntryInfo: PInternetCacheEntryInfo;
var lpdwFirstCacheEntryInfoBufferSize: DWORD): THandle; stdcall;
function FindNextUrlCacheEntry(hEnumHandle: THandle; lpNextCacheEntryInfo:
PInternetCacheEntryInfo; var lpdwNextCacheEntryInfoBufferSize: DWORD): BOOL; stdcall;
var
Form1: TForm1;
IEHis: Array [0..9999] of record
Website: String;
end;
implementation
{$R *.dfm}
const
URLHISTORY_CACHE_ENTRY = $00200000;
winetdll = 'wininet.dll';
function FindFirstUrlCacheEntry; external winetdll name 'FindFirstUrlCacheEntryA';
function FindNextUrlCacheEntry; external winetdll name 'FindNextUrlCacheEntryA';
function GetUrlCacheEntryInfo; external winetdll name 'GetUrlCacheEntryInfoA';
function GetIEHistory : TStrings;
var
T: PInternetCacheEntryInfo;
D: Cardinal;
H: THandle;
History: TStrings;
begin
History := TStringlist.Create;
D := 0;
H := FindFirstUrlCacheEntry(nil, nil, D); //Get bufferSize
GetMem(T, D);
if D > 0 then T^.dwStructSize := D;
H := FindFirstUrlCacheEntry(nil, T, D);
if GetLastError <> 0 then
repeat
if (T^.CacheEntryType = T^.CacheEntryType or URLHISTORY_CACHE_ENTRY) then
History.Add (T^.lpszSourceUrlName);
Freemem(T, D);
D := 0;
FindNextUrlCacheEntry(H, nil, D); //Get BufferSize
GetMem(T, D);
if D > 0 then T^.dwStructSize := D;
until not FindNextUrlCacheEntry(H, T, D);
FreeMem(T, D);
FindCloseUrlCache(H);
Result := History;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Lines := GetIEHistory;
end;
end.//iztegli programata ot delphihackers.nl maj
Borland e badeshteto a Delphi nastoyashteto!
|
| |
|
|
|