如何获取Internet临时文件中某文件的大小?
第一步、获取Internet临时文件的路径,要求各个系统通用
第二步、获取这个路径中a.jpg的大小,比如200KB。
如果找不到这个文件,就提示找不到,谢谢
请给出代码谢谢!
[解决办法]
unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private function GetIeTempFilePath():string; public { Public declarations } end;var Form1: TForm1;implementation uses Registry;{$R *.dfm}function TForm1.GetIeTempFilePath():string;var reg:Tregistry; KeyList: TStringList; i: Integer;begin reg:=Tregistry.create; KeyList := TStringList.Create; reg.RootKey := HKEY_CURRENT_USER; reg.openkey('Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders', False); reg.GetValueNames(KeyList); for i := 0 to KeyList.Count - 1 do begin if KeyList[i] = 'Templates' then begin Result := reg.ReadString(KeyList[i]); Exit; end; end; reg.CloseKey; reg.free; KeyList.Free;end;function GetFileSize1(const FileName: string):integer;var f: TFileStream; begin f:=TFileStream.Create(FileName,fmOpenRead or fmShareDenyNone); Result:=f.Size; F.Free;end;procedure TForm1.Button1Click(Sender: TObject);var filePath:string;begin filePath := GetIeTempFilePath; if FileExists(filePath+'\a.jpg') then begin ShowMessage(IntToStr(GetFileSize1(filePath+'\a.jpg'))); end else ShowMessage('文件不存在!');end;end.
[解决办法]
uses
WinInet;
FindFirstURLCacheEntry
FindNextUrlCacheEntry
DeleteUrlCacheEntry