![]() |
Inkompatible Typen - deletefile
Hallo,
ich bekomme bei folgender Anweisung
Delphi-Quellcode:
beim Compilieren die Fehlermeldung:
var dateiname : string;
dateiname := 'irgendwas'; DeleteFile(dateiname); Zitat:
Was mache ich falsch ? Hab ich was vergessen ? |
Re: Inkompatible Typen - deletefile
Delphi-Quellcode:
pansichar ist ein pointer auf einen string.
deletefile(pansichar(dateiname));
|
Re: Inkompatible Typen - deletefile
also normalerweise erwartet DeleteFile einen String, die Funktion stammt dabei aus der SysUtils. Müsste also egtl. so stimmen wie du es schreibst (wenn du die SysUtils Funktion verwendest).
Wenn du DeleteFile aus der Windows Unit verwendest, erwartet diese einen PAnsiChar. Du kannst es dann auch via @Dateiname[1] umwandeln und löschen. |
Re: Inkompatible Typen - deletefile
DeleteFile gibt es in zwei Unit: Windows und SysUtils.
Die Deklarationen unterscheiden sich:
Delphi-Quellcode:
Wenn du SysUtils.DeleteFile(dateiname) schreibst, ist dein Problem weg.
// aus Windows
function DeleteFile(lpFileName: PChar): BOOL; stdcall; // aus SysUtils function DeleteFile(const FileName: string): Boolean; |
Re: Inkompatible Typen - deletefile
via @-Zeichen geht es nicht immer. Ich hab das erst vor einer halben stunde versucht eine nonvcl caption zuzuweisen mit dem @ und da kam nur Zeichensalat raus.
|
Re: Inkompatible Typen - deletefile
Super, danke für die vielen Tips.
|
Re: Inkompatible Typen - deletefile
@ichbins: Dann hast du wohl "[1]" vergessen wenn nur Zeischensalat raus kam.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:36 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