AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Datei löschen mit DeleteFile....
Thema durchsuchen
Ansicht
Themen-Optionen

Datei löschen mit DeleteFile....

Ein Thema von bingo72 · begonnen am 21. Nov 2006 · letzter Beitrag vom 22. Nov 2006
Antwort Antwort
Seite 1 von 2  1 2      
bingo72

Registriert seit: 18. Aug 2006
Ort: Österreich
180 Beiträge
 
Delphi 5 Professional
 
#1

Datei löschen mit DeleteFile....

  Alt 21. Nov 2006, 19:58
Hallo Experten!!

Ich versuche eine bestehende Datei zu löschen mittels DeleteFile...
Doch nachher ist die Datei noch immer vorhanden. Es gibt keine Fehlermeldungen oder sonstige Anomalien??!!

Zuvor habe ich die Datei umbenannt....hat funktioniert...falls das von Bedeutung ist!!??
Hab was gelesen von Datei freigeben oder so?? Wie funktioniert das?? Oder wie lösch ich sonst die Datei??

LG
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von Andidreas
Andidreas

Registriert seit: 27. Okt 2005
1.110 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#2

Re: Datei löschen mit DeleteFile....

  Alt 21. Nov 2006, 20:04
wie versuchst du die datei zu löschen???

bzw. hast mal bisl code???
Ein Programmierer Programmiert durchschnittlich 15 Code Zeilen pro Tag
Wir sind hier doch nicht bei SAP!!!

Aber wir habens bald
  Mit Zitat antworten Zitat
Balu der Bär
(Gast)

n/a Beiträge
 
#3

Re: Datei löschen mit DeleteFile....

  Alt 21. Nov 2006, 20:28
Zitat von bingo72:
Es gibt keine Fehlermeldungen oder sonstige Anomalien??!!
Woher weißt du das?

Schonmal Delphi-Referenz durchsuchenGetLastError oder Delphi-Referenz durchsuchenSysErrorMessage probiert, die dir einen möglichen Fehler ausgeben?
  Mit Zitat antworten Zitat
Benutzerbild von ste_ett
ste_ett

Registriert seit: 10. Sep 2004
Ort: Dülmen
464 Beiträge
 
Delphi 7 Professional
 
#4

Re: Datei löschen mit DeleteFile....

  Alt 21. Nov 2006, 20:31
Schreingeschützte Dateien können ncith mit DeleteFile() gelöscht werden.
"SetFileAttributes(Pfad, FILE_ATTRIBUTE_NORMAL)" schafft Abhilfe.
Stefan
"Geht nicht!" ist keine Fehlerbeschreibung und "Hab ich schon versucht!" keine Antwort!

Hey, it compiles! Ship it!
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.755 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Datei löschen mit DeleteFile....

  Alt 21. Nov 2006, 20:41
@ste_ett
Zitat von ste_ett:
Schreingeschützte Dateien können ncith mit DeleteFile() gelöscht werden.
"SetFileAttributes(Pfad, FILE_ATTRIBUTE_NORMAL)" schafft Abhilfe. :)
Wenn die Datei schreibgeschützt wäre, dann würde auch das Umbenennen nicht funktionieren, oder?

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
bingo72

Registriert seit: 18. Aug 2006
Ort: Österreich
180 Beiträge
 
Delphi 5 Professional
 
#6

Re: Datei löschen mit DeleteFile....

  Alt 22. Nov 2006, 06:31
Zitat von Andidreas:
wie versuchst du die datei zu löschen???

bzw. hast mal bisl code???
Hier ist er:

Delphi-Quellcode:
procedure TfmMain.FormDestroy(Sender: TObject);
begin
  SetToNil();
  CoUninitialize();
  if (FileExists(TEMP_VIDEO_LARGE) AND FileExists(TEMP_VIDEO_SMALL)) then begin
    DeleteFile(TEMP_VIDEO_LARGE);
    DeleteFile(TEMP_VIDEO_SMALL);
  end;
end;
Ist quasi der letzte Code der ausgeführt wird, um Temp-Dateien, nachdem sie umbenannt worden sind (passiert im FormQueryClose mit Ja/Nein-Messagebox), sofern User dies wünscht, gelöscht werden.
Wenn zuvor die Dateien umbenannt werden sollen, gibt es ja dann keine Temp-Dateien mehr und somit überspringt er die IF-Anweisung. Andernfalls soll er die Temp-Dateien löschen...

LG
Thomas
  Mit Zitat antworten Zitat
bingo72

Registriert seit: 18. Aug 2006
Ort: Österreich
180 Beiträge
 
Delphi 5 Professional
 
#7

Re: Datei löschen mit DeleteFile....

  Alt 22. Nov 2006, 06:44
Zitat von Balu der Bär:
Zitat von bingo72:
Es gibt keine Fehlermeldungen oder sonstige Anomalien??!!
Woher weißt du das?

Schonmal Delphi-Referenz durchsuchenGetLastError oder Delphi-Referenz durchsuchenSysErrorMessage probiert, die dir einen möglichen Fehler ausgeben?
Hallo Balu!!

Du hast recht....mit GetLastError bekomm ich den Fehlercode 32 bedeutet ERROR_SHARING_VIOLATION...

Wie kann ich die alleinigen Rechte für mich beanspruchen??

LG
Thomas
  Mit Zitat antworten Zitat
bingo72

Registriert seit: 18. Aug 2006
Ort: Österreich
180 Beiträge
 
Delphi 5 Professional
 
#8

Re: Datei löschen mit DeleteFile....

  Alt 22. Nov 2006, 06:56
Zitat von Klaus01:
@ste_ett
Zitat von ste_ett:
Schreingeschützte Dateien können ncith mit DeleteFile() gelöscht werden.
"SetFileAttributes(Pfad, FILE_ATTRIBUTE_NORMAL)" schafft Abhilfe.
Wenn die Datei schreibgeschützt wäre, dann würde auch das Umbenennen nicht funktionieren, oder?

Grüße
Klaus
Klaus hat Recht....habe testhalber den SetFileAttributes-Befehl gesetzt...

Delphi-Quellcode:
if (FileExists(TEMP_VIDEO_LARGE) AND FileExists(TEMP_VIDEO_SMALL)) then begin
    SetFileAttributes(TEMP_VIDEO_LARGE, FILE_ATTRIBUTE_NORMAL);
    if (not(DeleteFile(TEMP_VIDEO_LARGE))) then
      str := IntToStr(GetLastError);
...und da ist er in den IF-Teil reingesprungen...also hat die Datei dennoch ned löschen können!!

Danke trotzdem für die Bemühungen...

LG
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#9

Re: Datei löschen mit DeleteFile....

  Alt 22. Nov 2006, 07:11
Zitat von bingo72:
Du hast recht....mit GetLastError bekomm ich den Fehlercode 32 bedeutet ERROR_SHARING_VIOLATION...

Wie kann ich die alleinigen Rechte für mich beanspruchen??
Es gab zu diesem Thema vor kurzem erst einen Thread dazu.
Dabei hat jemand ein Tool vorgestellt, mit dem man das Sharing beenden konnte und dann die Datei löschen kann.

muss mal mit geeigneten Suchbegriffen die Forumssuche bemühen...
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
bingo72

Registriert seit: 18. Aug 2006
Ort: Österreich
180 Beiträge
 
Delphi 5 Professional
 
#10

Re: Datei löschen mit DeleteFile....

  Alt 22. Nov 2006, 07:26
Ja aber ich will kein Tool einsetzen...es wird doch so im Delphi-Code Möglichkeiten geben, eine Datei löschen zu können bzw. Prozesse die den Zugriff auf die Datei blockieren zu beenden, damit man sie anschließend löschen kann oder??
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 17:24 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