AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

FindFirstFile NIL übergeben?

Ein Thema von Pseudemys Nelsoni · begonnen am 28. Jun 2004 · letzter Beitrag vom 28. Jun 2004
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#1

FindFirstFile NIL übergeben?

  Alt 28. Jun 2004, 04:55
hallo,

ich möchte das handle einer datei per FindFirstFile bekommen, der erste Parameter ist der Pfad zur datei, der zweite ist ein record den die funktion mit daten füllt. Die daten sind aber für mich unwichtig, muss ich nun extra eine variable deklarieren um die funktion benutzen zu können? Weder NIL noch 0 geht....



EDIT:

ist das richtig so?:

hf := FindFirstFile(PChar(pfad), TWin32FindData(nil^));
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#2

Re: FindFirstFile NIL übergeben?

  Alt 28. Jun 2004, 06:21
Du musst leider eine Variable erzeugen und sie füllen lassen. Kannst ja den Inhalt gleich wieder löschen.

Oder erstelle zur Laufzeit einen Pointer, der als speicherbereich genau die Größe des Recortds umfasst.
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#3

Re: FindFirstFile NIL übergeben?

  Alt 28. Jun 2004, 08:47
Moin!

Und mal was anderes: was stellst du dir denn unter "Handle für eine Datei" vor? Bzw. was meinst du denn von der Funktion zurück zu bekommen? Das ist zumindest ein Suchhandle aber kein Filehandle zu der Datei...

Nur, bevor Missverständnisse auftreten...

MfG
Muetze1
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: FindFirstFile NIL übergeben?

  Alt 28. Jun 2004, 12:02
Moin Pseudemys Nelsoni,

im zweiten Parameter soll die Funktion Informationen ablegen, und muss deshalb bei der Borland Deklaration, eine Variable sein.
FindFirstFile ist nichts anderes als die API Funktion zu FindFirst.

Was willst Du überhaupt machen?
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#5

Re: FindFirstFile NIL übergeben?

  Alt 28. Jun 2004, 14:07
hallo christian,

ich möchte per API prüfen ob eine datei existiert, also so eine art "FileExists"
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: FindFirstFile NIL übergeben?

  Alt 28. Jun 2004, 14:12
Moin Pseudemys Nelsoni,

nimm als zweiten Parameter einfach einen Dummy, da Dich in diesem Falle nicht interessiert, was die Funktion zurückliefert.
Ist der Rückgabewert dann INVALID_HANDLE_VALUE dürfte die Datei nicht existieren.
Zur Sicherheit könntest Du dann noch mit GetLastError prüfen, ob hier der Rückgabewert ERROR_FILE_NOT_FOUND ist.

War der Aufruf allerdings erfolgreich musst Du noch, mit FindClose, die Suche wieder schliessen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#7

Re: FindFirstFile NIL übergeben?

  Alt 28. Jun 2004, 14:22
hallo christian, was heisst einen "dummy" ? sonst jedenfalls schonmal danke für die erklärung
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#8

Re: FindFirstFile NIL übergeben?

  Alt 28. Jun 2004, 14:23
So ähnlich sieht die Funktion bei Borland aus:
Delphi-Quellcode:
function fileexists(const szFilename: string): boolean;
var
  Handle : THandle;
  FindData : TWin32FindData;
begin
  Handle := FindFirstFile(pchar(szFilename),FindData);
  Result := (Handle <> INVALID_HANDLE_VALUE);

  if(Result) then Windows.FindClose(Handle);
end;
Funktioniert auch für Ordner.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#9

Re: FindFirstFile NIL übergeben?

  Alt 28. Jun 2004, 14:26
Ich glaube, du solltest dir mal meine Toolbox ankucken -> http://www.luckie-online.de/Downloads/DelphiUnits/
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: FindFirstFile NIL übergeben?

  Alt 28. Jun 2004, 14:26
Moin Mathias,

Zitat von MathiasSimmack:
Funktioniert auch für Ordner.
wobei mir einfällt, dass die D5 Version von DirectoryExists unter ME nicht richtig funktioniert.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:22 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