Autor |
Beitrag |
mimi
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: Do 13.11.03 20:41
Hallo,
ich muss die größe(in bytes) von der eigen anwendung zur laufzeit ermitteln wie geht das am besten ?
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
maxk
      
Beiträge: 1696
Erhaltene Danke: 1
Win XP, Debian Lenny
Delphi 6 Personal
|
Verfasst: Do 13.11.03 21:11
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8:
| var SR:TSearchRec; begin if FindFirst(Application.ExeName,faAnyFile,SR)<>0 then exit; FindClose(SR); end; |
_________________ Ein Computer wird das tun, was Du programmierst - nicht das, was Du willst.
|
|
mimi 
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: Do 13.11.03 23:05
genau diese möglichkeit habe ich schon getestet, ergbnis:
size ist zu klein.
ich muss das ende der exe rausbekommen.
gibts noch andere möglichkeiten ?
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Do 13.11.03 23:39
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9:
| procedure TForm1.Button1Click(Sender: TObject); var SR:TSearchRec; begin if FindFirst(Application.ExeName,faAnyFile,SR)<>0 then exit else ShowMessage(IntToStr(SR.Size)); FindClose(SR); end; |
Exakt die Dateigröße, bis auf das letzte Byte.
|
|
maxk
      
Beiträge: 1696
Erhaltene Danke: 1
Win XP, Debian Lenny
Delphi 6 Personal
|
Verfasst: Fr 14.11.03 08:15
@Luckie: Ist das vom Prinzip nicht dasselbe, wie "mein" Code?
@Mimi: Könntest du das genauer erklären? Sollgröße/Istgröße, etc.
_________________ Ein Computer wird das tun, was Du programmierst - nicht das, was Du willst.
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Fr 14.11.03 15:21
Es ist dein Code. Ich wollte nur zeigen, dass es bei mir funktioniert. Mimi sollte mal kucken, was er da noch macht.
|
|
mimi 
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: Fr 14.11.03 15:23
diese idee hatte ich auch:
ich arbeite z.z. an einem sfx tool, wenn ich der variable exeSize die größe die mir das Windows eingenschaften dialog angiebt dort eintrage geht es, wenn ich aber die größe mit findFirst ermittele geht es nicht, weil die größe zu klein ist, warum ???
der code ist der selbe wie bei dir maxk
der trehd kann geschloßen werde, das was ich vorhatte funktionirt nicht....
nicht wegen der exe größe sondern wegen was andres kann es garnicht funktioniern.
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Fr 14.11.03 15:55
Zu welchem Zeitpunkt ermittelst du denn die Größe?
|
|
mimi 
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: Fr 14.11.03 16:05
wenn die datei aufgerufen wird, also beim starten des SFX archvies wird die größe ermitteln und heute ist mir eingefallen, das das ja garnicht geht, so werde ich einfach die datei größe am ende der datei reinschreiben, das wird wohl das einfachste sein, würde ich mal sagen.
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Fr 14.11.03 16:13
Dann hängen doch schon die Dateien dran oder täusche ich mich da jetzt? Da sich die Grölße der SFX-Archiv Exe nichgt ändert kannst du sie als Konstante im Quellcode eintragen.
|
|