線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1564
推到 Plurk!
推到 Facebook!

如何得知正在執行的EXE檔檔案大小

尚未結案
gcleektop
一般會員


發表:7
回覆:4
積分:2
註冊:2004-03-01

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-01-26 09:31:09 IP:140.128.xxx.xxx 未訂閱
請問 宣告 var o:file of byte; 在FormCreate事件中,想得知本身執行檔大小,使用AssignFile(o,Application.ExeName); 及 FileSize(o); 會產生例外,是否因本身開啟中之緣故,該如何解決?
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-01-26 09:52:55 IP:210.65.xxx.xxx 未訂閱
Hi gcleektop,    Try this one :
procedure TForm1.Button1Click(Sender: TObject);
var
  FileName : String;
  SR: TSearchRec;
begin
  FileName := Application.ExeName;
  if FindFirst(FileName,faAnyFile,SR) = 0 then
    begin
      ShowMessage(FileName   '-'   inttostr(sr.Size));
    end;
  FindClose(SR);
end;
---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman
william
版主


發表:66
回覆:2535
積分:3048
註冊:2002-07-11

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-01-26 10:36:09 IP:147.8.xxx.xxx 未訂閱
1) you need to open the file for FileSize 2) you need to consider file sharing    
var
    f: file of byte;
begin
    FileMode := fmShareDenyNone;
    AssignFile(f,Application.ExeName);
    Reset(f);
    Label1.Caption := IntToStr(FileSize(f));
    CloseFile(f);
end;
http://pywong.hk.st http://www.lazybones.ca
gcleektop
一般會員


發表:7
回覆:4
積分:2
註冊:2004-03-01

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-01-27 17:06:49 IP:140.128.xxx.xxx 未訂閱
感謝Fishman兄及william兄, 兩位的方法完全不同但都很好用, 這樣萬一執行檔自身染病毒就可以知道了, 謝謝兩位!!
系統時間:2024-05-01 8:15:18
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!