Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi API-Funktion zur Pfadüberprüfung (https://www.delphipraxis.net/33263-api-funktion-zur-pfadueberpruefung.html)

valon 4. Nov 2004 07:35


API-Funktion zur Pfadüberprüfung
 
Hallo!

ne Frage.

Ich habe einen Pfad zb. C:\daten\users . Es muss doch ne API Funktion geben die überprüfen kann, ob dieser Pfad existiert.
Ich hab danach gesucht , doch ich finde nichts.

Kennt ihr die Funktion?

Danke!

shmia 4. Nov 2004 07:45

Re: API-Funktion zur Pfadüberprüfung
 
Aus der JCL kopiert:
Delphi-Quellcode:
function DirectoryExists(const Name: string): Boolean;
var
  R: DWORD;
begin
  R := GetFileAttributes(PChar(Name));
  Result := (R <> DWORD(-1)) and ((R and FILE_ATTRIBUTE_DIRECTORY) <> 0);
end;

Brüggendiek 4. Nov 2004 22:14

Re: API-Funktion zur Pfadüberprüfung
 
Hallo!

Jaja, warum einfach, wenn es umständlich geht!

Bei mit (D5 Standard) ist die Funktion DirectoryExists schon vorhanden - in der Unit FileCtrl.

Gruß

Dietmar Brüggendiek

Christian Seehase 4. Nov 2004 22:21

Re: API-Funktion zur Pfadüberprüfung
 
Moin Zusammen,

ich hätte dann noch diese Variante beizusteuern:

Delphi-Quellcode:
function DirectoryExists(const AsDirectory : string) : boolean;

var
  hHandle : DWORD;

begin
  hHandle := CreateFile(PChar(AsDirectory),GENERIC_READ,FILE_SHARE_READ,nil,OPEN_EXISTING,FILE_FLAG_BACKUP_SEMANTICS,0);
  Result := (hHandle <> INVALID_HANDLE_VALUE);
  if Result then CloseHandle(hHandle);
end;
@Dietmar:
Zitat:

Zitat von Brüggendiek
Jaja, warum einfach, wenn es umständlich geht!
Bei mit (D5 Standard) ist die Funktion DirectoryExists schon vorhanden - in der Unit FileCtrl.

Bei mir auch, aber ich hatte schon den Fall, dass die mitgelieferte Funktion unter Windows ME nicht funktioniert hat. Ein vorhandenes Directory wurde nicht erkannt. Mit der CreateFile Version hat es dann geklappt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:46 Uhr.

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