Toon posts:

[DELPHI] Deletefile functie??

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik gebruik de functie deletefile in een programma.

Ik krijg nu de melding: Incompatible types: PChar en string

Toch staat achter de functie een string (weet ik heel zeker :? )

deletefile (filename);

enig idee hoe dit kan?

  • whoami
  • Registratie: December 2000
  • Laatst online: 15:05
Misschien verwacht DeleteFile () wel een PChar variable en geef jij een string mee.

Ik heb hier nu geen Delphi staan, maar je zult die string moeten casten naar een PChar lijkt me.

https://fgheysels.github.io/


Verwijderd

Topicstarter
Als ik in de help file van Delphi kijk, dan staat er toch echt dat deletefile een string verwacht.
In andere programmatjes die ik geschreven heb werkt het gewoon wel. :?
Ik heb hier nu geen Delphi staan, maar je zult die string moeten casten naar een PChar lijkt me.
Hoe doe je dit? Heb hier al tijdje om gezocht maar kan hier niet echt een makkelijke manier voor vinden...zal wel aan mij liggen hoor...ben redelijke newbie @ delphi

  • whoami
  • Registratie: December 2000
  • Laatst online: 15:05
Plaats eens het regeltje code waar je die DeleteFile aanroept.

https://fgheysels.github.io/


Verwijderd

Topicstarter
Heb het op een andere pc staan, maar het komt op het volgende neer eigenlijk.


var:
filename : string

begin
filename := (Edit1.text + '.txt');
deletefile (filename);
end;

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 31-08 19:41

Creepy

Tactical Espionage Splatterer

Er zijn 2 deletefiles functies. 1 in de windows api, 1 in de sysutils

Oplossing 1: sysutils.deletefile i.p.v. deletefile
Oplossing 2: in je uses clause staat windows en sysutils. Draai die twee om zodat de scope van sysutils voorgaat op die van windows

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Verwijderd

Topicstarter
ok, zal ik zometeen ff probere.

Verwijderd

Topicstarter
sysutil stond vooraan, nu maar achteraan geplakt en het werkt!

Thx, moet je ook maar ff wete he? :)

  • LordLarry
  • Registratie: Juli 2001
  • Niet online

LordLarry

Aut disce aut discede

beter is gewoon deze ambiugiteit op te lossen door de unit naam voor de functie naam te voegen. Dan ben je niet meer afhankelijk van de volgorde.

Windows.DeleteFile
en
SysUtils.DeleteFile

We adore chaos because we like to restore order - M.C. Escher


  • MisterE
  • Registratie: April 2002
  • Laatst online: 28-08 19:15
DeleteFile(String(File)); ??

  • LordLarry
  • Registratie: Juli 2001
  • Niet online

LordLarry

Aut disce aut discede

Het probleem is al opgelost MisterE :) en anders zou het DeleteFile(PChar(File)); moeten zijn

We adore chaos because we like to restore order - M.C. Escher

Pagina: 1