Entwickler-Ecke
Windows API - Verzeichnis auslesen (PChar Probleme)
Lyrico - Mo 03.10.11 01:40
Titel: Verzeichnis auslesen (PChar Probleme)
Hallo leute,
Ich habe ein Problem, ich kann denn Code nicht compilieren.
Fehler Meldung:
[DCC Fehler] Func.pas(67): E2010 Inkompatible Typen: 'Cardinal' und 'PWideChar'
[DCC Warnung] Func.pas(348): W1057 Implizite String-Umwandlung von 'AnsiChar' zu 'string'
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37:
| Function ListFiles(sDir: String): String; Var sFileName: String; sFileList: String; sDirList: String; sSizeList: String; sRec: TWin32FindData; findHandle: THandle; Begin
If AnsiLastChar(sDir) <> '\' Then Begin sDir := sDir + '\'; End;
Try findHandle := FindFirstFile(PChar(sDir + '*.*'), sRec);
If findHandle <> INVALID_HANDLE_VALUE Then Repeat sFileName := sRec.cFileName;
If (sRec.dwFileAttributes And FILE_ATTRIBUTE_DIRECTORY) <> 0 Then Begin sDirList := sDirList + sDir + sFileName + '++'; End Else Begin sFileList := sFileList + sDir + sFileName + '++'; sSizeList := sSizeList + IntToStr(GetFileSize(PChar(sDir + sFileName))) + '++'; End; Until FindNextFile(findHandle, sRec) = False; Finally End;
Result := sDirList + '|' + sFileList + '|' + sSizeList; End; |
Jetzt wollte ich euch fragen wo der Fehler ist u. Warum...
Mit freundlichen grüßen
Lyrico
Moderiert von
Narses: Topic aus Sonstiges (Delphi) verschoben am Mo 03.10.2011 um 12:59
Boldar - Mo 03.10.11 01:42
Und Welche Zeile ist Zeile 67?
Edit: GetFilesize get so nicht, da brauchst du ein handle.
Aber du hast doch in sRec die Dateigröße drin, schau dir das mal in der Hilfe an. Stichwort nFileSizeHigh und nFileSizeLow.
Ausserdem würde sich die Verwendung von Stringlists empfehlen.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!