Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Funktionsaufruf ?? (https://www.delphipraxis.net/18005-funktionsaufruf.html)

Vader 12. Mär 2004 17:45


Funktionsaufruf ??
 
hallo,

hab da eine funktion aufgeschnappt, aber ich weiß nicht wie ich sie aufrufen soll :?

Code:
function GetFolders( path : string ) : string;
var
  searchRec : TSearchRec;
begin
  result := '';

  if ( FindFirst( path, $00000010, searchRec ) = 0 ) then begin
    while FindNext( searchRec ) = 0 do begin
      if ( ( searchRec.Attr and $00000010 ) = searchRec.Attr ) then
        result := result + searchRec.Name + '|';
    end;

    FindClose( searchRec );
  end;

  Delete( result, length( result ), 1 );
end;
mein versuch zum aufrufen in ein memofeld
Code:
procedure TForm1.Button1Click(Sender: TObject);
begin
memo1.lines:= GetFolders;
end;

end.
aber das funzt nicht er schreit zu wenig parameter oder sowas.
diese funktion gibt einen string zurück oder ??

wie müßte ich die aufrufen.

mfg vader

Markus K. 12. Mär 2004 17:48

Re: Funktionsaufruf ??
 
Hi Vader,
du hast oben die Funktion mit einer String-Variablen deklariert, also musst du beim Aufruf auch eine übergeben.
Delphi-Quellcode:
memo1.lines:= GetFolders({path});
Tschüß Markus

Vader 12. Mär 2004 18:46

Re: Funktionsaufruf ??
 
hallo markus,

hast du die funktion ausprobiert, denn erschreit noch immer nicht
genügend parameter,wenn ich sie so aufrufe.

memo1.lines:= GetFolders({path});


mfg vader

CalganX 12. Mär 2004 19:06

Re: Funktionsaufruf ??
 
Hi,
Delphi-Quellcode:
{path}
ist ein Kommentar... :gruebel:

Du musst da schon den richtigen Pfad als String bzw. als Stringvariable übergeben... ;)

Chris

Vader 12. Mär 2004 21:33

Re: Funktionsaufruf ??
 
hallo chris,

versteh nur bahnhof !!!
du sagst:

Du musst da schon den richtigen Pfad als String bzw. als Stringvariable übergeben...

in der funktion oder im aufruf bitte kannst du mir den richtigen
aufruf für die funktion posten.

mfg vader

CalganX 12. Mär 2004 21:45

Re: Funktionsaufruf ??
 
Hi Vader,
Delphi-Quellcode:
GetFolders('C:\Dein\Verzeichnis\das\du\auslesen\willst\');
Chris

Vader 12. Mär 2004 22:23

Re: Funktionsaufruf ??
 
hallo chris,


hab den aufruf jetzt so gemacht:

memo1.lines:=GetFolders('C:\Windows');
dann kommt die fehlermeldung :

[Fehler] Unit1.pas(46): Inkompatible Typen: 'TStrings' und 'String'

frage: in der funktionsdeklaration bleibt das path od. muß das auch ersetzt werden durch den richtigen pfad ??

function GetFolders( path : string ) : string;


mfg vader

braingrenade 12. Mär 2004 23:03

Re: Funktionsaufruf ??
 
Moin!

probier mal

Delphi-Quellcode:
memo1.lines.add(GetFolders('C:\Windows'));

Vader 13. Mär 2004 06:21

Re: Funktionsaufruf ??
 
thanks brain,

der aufruf funzt, aber dafür funzt die funktion nicht,glaub die ist
nicht ganz rein.
es wird im memo nicht angezeigt nach start des progs.

mfg vader

Sharky 13. Mär 2004 09:06

Re: Funktionsaufruf ??
 
Hai Vader,

FindFirst möchte im Pfad auch eine Dateimaske haben. Du must die Funktion also so aufrufen:

Delphi-Quellcode:
begin
  Memeo1.Lines.Add (GetFolders ('c:\windows\*.*'));
end;
Oder, noch einfacher, das "*.*" in der Funktion an path dranhängen:

Delphi-Quellcode:
function GetFolders( path : string ) : string;
var
  searchRec : TSearchRec;
begin
  path := path + '*.*';
  result := '';
  if ( FindFirst( path,$00000010, searchRec ) = 0 ) then
  begin
    while FindNext( searchRec ) = 0 do
    begin
      if ( ( searchRec.Attr and $00000010 ) = searchRec.Attr ) then
        result := result + searchRec.Name + '|';
    end;
    FindClose( searchRec );
  end;
  Delete( result, length( result ), 1 );
end;


procedure TForm1.Button2Click(Sender: TObject);
begin
 Memo1.Lines.add (GetFolders ('c:\Windows\'));
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:38 Uhr.
Seite 1 von 2  1 2      

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