AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi kurioser Fehler beim auflisten der Dateien (?!)
Thema durchsuchen
Ansicht
Themen-Optionen

kurioser Fehler beim auflisten der Dateien (?!)

Ein Thema von MCQ · begonnen am 7. Dez 2005 · letzter Beitrag vom 7. Dez 2005
Antwort Antwort
MCQ

Registriert seit: 14. Jan 2004
Ort: Dessau
80 Beiträge
 
#1

kurioser Fehler beim auflisten der Dateien (?!)

  Alt 7. Dez 2005, 04:33
Ich wollte grad eine DLL schreiben die mir aus mehreren Dateien ein Arciv erstellt und aus diesem Archiv auch wieder diese Dateien erstellen kann. Nun komme ich aber bereits beim aulisten der Dateien zu einem kuriosen Fehler den ich mir nicht erklären kann. ier der bisherige Quelltext der Funktion:

Delphi-Quellcode:
procedure CreateHeader(path:PChar;var header:array of char; var HeaderSize:Cardinal; relpath:pchar; FirstFilePos:Cardinal=0);
var subdirs : TStrings;
    hSuche : THandle;
    finddata : _WIN32_FIND_DATA;
    i : integer;
    posval : cardinal;
begin
// erstellt den Achive-Header und schreibt ihn in die Variable "header"
subdirs:=TStringList.Create;
hSuche:=0;
hSuche:=FindFirstFile(PChar(path+'\*'),finddata);
memo.Lines.Add('');
memo.Lines.Add(path);
while hSuche<>INVALID_HANDLE_VALUE do
 begin
  if (string(finddata.cFileName[0])<>'.') and (string(finddata.cFileName[0])<>'..') then
   begin
    if DirectoryExists(path+'\'+finddata.cFileName) then
     begin
     subdirs.Add(finddata.cFileName);
     memo.Lines.Add(finddata.cFileName+' <-- dir');
     end
    else
     begin
     memo.Lines.Add(finddata.cFileName+' <- file');
     end;
   end;
  FindNextFile(hSuche,FindData);
  if GetLastError=ERROR_NO_MORE_FILES then hSuche:=INVALID_HANDLE_VALUE;
 end;
if subdirs.Count=0 then exit;
for i := 0 to subdirs.Count-1 do
 CreateHeader(PChar(path+'\'+subdirs.strings[i]),header,headersize,PChar(relpath+'\'+subdirs.strings[i]),posval);
end;

In der MemoBox steht nach ausführung dieses Codes folgender Text:

Zitat:
D:\Projects\PHP\online-raub
inc.config.php <- file
init_vars.php <- file
Neuer Ordner <-- dir
site.dieb.php <- file
site.transfer.php <- file
site.userstat.php <- file
tresor.php <- file
_notes <-- dir

D:\Projects\PHP\online-raub\Neuer Ordner
Neu Textdokument.txt <- file
_notes <-- dir

D:\Projects\PHP\online-raub\Neuer Ordner\_notes
dwsync.xml <- file
Kopie von Neuer Ordner <-- dir

D:\Projects\PHP\online-raub\Neuer Ordner\_notes\Kopie von Neuer Ordner
_notes <-- dir

D:\Projects\PHP\online-raub\Neuer Ordner\_notes\Kopie von Neuer Ordner\_notes
dwsync.xml <- file

D:\Projects\PHP\online-raub\_notes
dwsync.xml <- file
Entferne ich nun nur diese beiden Zeilen im Quelltext:
Delphi-Quellcode:
memo.Lines.Add('');
memo.Lines.Add(path);
Sieht die ausgabe wie folgt aus:
Zitat:
inc.config.php <- file
init_vars.php <- file
Neuer Ordner <-- dir
site.dieb.php <- file
site.transfer.php <- file
site.userstat.php <- file
tresor.php <- file
_notes <-- dir
Die Dateien in den unterordnern (z.B. dwsync.xml und Neu Textdokument.txt) fehlen nun völlig, obwohl sie laaut Qulltext angezeigt werden müssten.
Kann mir jemannd dieses Phänomän erklären?
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.594 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: kurioser Fehler beim auflisten der Dateien (?!)

  Alt 7. Dez 2005, 07:28
Nur ein Versuch

Mach mal aus


Delphi-Quellcode:
[/pre:1:8e5e25cdae]while hSuche<>INVALID_HANDLE_VALUE do
begin
Delphi-Quellcode:
[/pre:1:8e5e25cdae]
while hSuche<>INVALID_HANDLE_VALUE do
begin
Sven Harazim
--
  Mit Zitat antworten Zitat
Benutzerbild von jim_raynor
jim_raynor

Registriert seit: 17. Okt 2004
Ort: Berlin
1.251 Beiträge
 
Delphi 5 Standard
 
#3

Re: kurioser Fehler beim auflisten der Dateien (?!)

  Alt 7. Dez 2005, 07:30
Es fehlt dir auch noch ein subdirs.Free. So hinterlässt du schöne Speicherlecks.
Christian Reich
Schaut euch mein X-COM Remake X-Force: Fight For Destiny ( http://www.xforce-online.de ) an.
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.594 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: kurioser Fehler beim auflisten der Dateien (?!)

  Alt 7. Dez 2005, 08:08
also bei mit gehts

was genau macht eigentlich

[delphi][pre:1:8e5e25cdae]...[delphi]

?
Sven Harazim
--
  Mit Zitat antworten Zitat
MCQ

Registriert seit: 14. Jan 2004
Ort: Dessau
80 Beiträge
 
#5

Re: kurioser Fehler beim auflisten der Dateien (?!)

  Alt 7. Dez 2005, 08:58
Zitat von sh17:
also bei mit gehts

was genau macht eigentlich

[delphi][pre:1:8e5e25cdae]...[delphi]

?
Also ich würd mal sagen phpBB-Code ... eingefügt hab ich den eigendlich nicht ... nun steht er aber drin, werds gleich mal editieren.

// edit, so jetzt ist der Code wieder so wie er unsprünlich sein sollte.
  Mit Zitat antworten Zitat
Antwort Antwort


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 19:54 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