Einzelnen Beitrag anzeigen

devidespe

Registriert seit: 7. Sep 2006
Ort: Berlin
434 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: Hilfedatei temporär erstellen und wieder löschen

  Alt 8. Jun 2014, 15:04
Wie erstellst du denn die Datei?

Wenn man dafür FILE_ATTRIBUTE_TEMPORARY (MSDN-Library durchsuchenCreateFile) verwendet, dann löscht Windows die Datei automatisch, selbst wenn dein Progamm abstürzt.
In wie weit FILE_FLAG_DELETE_ON_CLOSE helfen könnte, kann ich jetzt nicht sagen.

Alternativ gäbe es auch andere Hilfesysteme, als diese HLP-Dateien.
So ich habe die Dateierstellung auf CreateFile umgeschrieben, auch in Verbindung mit FILE_ATTRIBUTE_TEMPORARY und FILE_FLAG_DELETE_ON_CLOSE. Ersteres hat leider keinen Einfluss, die Datei lässt sich nachwievor nicht löschen. Bei FILE_FLAG_DELETE_ON_CLOSE wird die Datei garnicht erst erstellt und ich kann die Hilfe nicht laden. Das passiert folgendermaßen:

Delphi-Quellcode:
FHandle:=CreateFile(PChar(Filename),
                        GENERIC_WRITE,
                        0,
                        nil,
                        CREATE_ALWAYS,
                        FILE_ATTRIBUTE_TEMPORARY,
                        0);
Sicher gibt es andere Hilfesysteme, ich habe nun aber alles auf diese CHM-Datei ausgerichtet und dachte, ein einfacher Löschvorgang wäre nicht problematisch. Leider doch...
Devid
57 65 72 20 6C 65 73 65 6E 20 6B 61 6E 6E 2C 20 69 73 74 20 6B 6C 61 72 20 69 6D 20 56 6F 72 74 65 69 6C 21
  Mit Zitat antworten Zitat