Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Verzeichnisgröße anzeigen (https://www.delphipraxis.net/103028-verzeichnisgroesse-anzeigen.html)

daredd 8. Nov 2007 16:48


Verzeichnisgröße anzeigen
 
Hallo!
Ich habe mal wieder eine Frage, undzwar habe ich ein kleines Programm das anzeigen soll wie groß ein Verzeichnis ist oder eine Datei.
Nun beim Compeliren bekommen ich ein Fehlermeldung an der Stelle wo FolderSize gestartet wird:
Delphi-Quellcode:
function FolderSize(FolderName: string): Int64;
var
  fldr, fso: OleVariant;
begin
  fso   := CreateOleObject('Scripting.FileSystemObject');
  fldr  := fso.GetFolder(FolderName);

  result := fldr.size;
end;

procedure TMainform.Button1Click(Sender: TObject);
var
exs : Int64;
ex : String;
begin
     Button1.Visible := false;
     ex := MetaIni.ReadString('Path', 'ExportPath', '');
     exs := FolderSize(ex); // hier kommt die Fehlermeldung: Too many actual Parameters !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     Label16.Caption := Format('%d', [exs]);
end;
weiss jemand warum das passiert? auch wenn ich den ordner ohne die Registry angebe also gleich als String dann mekert der Compiler torztdem mit der selben Fehelrmeldung

DeddyH 8. Nov 2007 17:01

Re: Verzeichnisgröße anzeigen
 
Nur mal aus Verdacht: was passiert, wenn Du es so schreibst?
Delphi-Quellcode:
exs := DeinUnitName.FolderSize(ex);

daredd 8. Nov 2007 17:10

Re: Verzeichnisgröße anzeigen
 
ALso da ändert sich nicht, es kommt die selbe Fehlermeldung!

Luckie 8. Nov 2007 17:23

Re: Verzeichnisgröße anzeigen
 
Delphi-Quellcode:
function FolderSize(FolderName: string): Int64;
var
  fldr, fso: OleVariant;
begin
  fso   := CreateOleObject('Scripting.FileSystemObject');
  fldr  := fso.GetFolder(FolderName);

  result := fldr.size;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(IntToStr(FolderSize('C:\Windows')));
end;
Kompilieret ohne Probleme. Allerdings bekomme ich bei result eine Acception.

daredd 8. Nov 2007 17:36

Re: Verzeichnisgröße anzeigen
 
Ich hab das Problem Gelöst, habe oben in der Deklaration type nur zu stehen:

Delphi-Quellcode:
function FolderSize : Int64;
// Statt
function FolderSize(FolderName: string) : Int64;
deshalb hat er auch nicht den Parameter angenommen.

Danke trozdem


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:08 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz