AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) D2010, SHFileOperation, FO_DELETE -> Fehler 1026
Thema durchsuchen
Ansicht
Themen-Optionen

D2010, SHFileOperation, FO_DELETE -> Fehler 1026

Ein Thema von hoika · begonnen am 13. Aug 2010 · letzter Beitrag vom 16. Aug 2010
Antwort Antwort
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#1

D2010, SHFileOperation, FO_DELETE -> Fehler 1026

  Alt 13. Aug 2010, 16:23
Hallo,

die folgende Funktion liefert mir Fehler 1026.
Das muss irgendwas mit #0 zu tun haben.

Aber das ist doch alles richtig, oder ?


Delphi-Quellcode:
Function DelTree(DirName : string; var theErrorNo: Integer): Boolean;
var
  SHFileOpStruct : TSHFileOpStruct;
begin
  try
   Fillchar(SHFileOpStruct,Sizeof(SHFileOpStruct),0) ;
   with SHFileOpStruct do begin
    Wnd := 0;
    pFrom := PChar(DirName+#0); // PChar liefert eine #0, wir brauchen 2
    wFunc := FO_DELETE;
    fFlags := FOF_NOCONFIRMATION or FOF_SILENT;
   end;
    theErrorNo := SHFileOperation(SHFileOpStruct);
    Result:= theErrorNo=0;
   except
    Result := False;
  end;
end;

Heiko
Heiko

Geändert von hoika (13. Aug 2010 um 16:34 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#2

AW: D2010, SHFileOperation, FO_DELETE -> Fehler 1026

  Alt 13. Aug 2010, 16:40
Versuch es mal mit
pFrom := PChar(DirName+#0+#0) Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

AW: D2010, SHFileOperation, FO_DELETE -> Fehler 1026

  Alt 13. Aug 2010, 16:41
dann lass dir doch mal mit SysErrorMessage die Fehlermeldung im Klartext ausgeben oder guck in den Headerdateien nach was er bedeutet.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.119 Beiträge
 
Delphi 12 Athens
 
#4

AW: D2010, SHFileOperation, FO_DELETE -> Fehler 1026

  Alt 13. Aug 2010, 16:56
Dort gibt's kein 1026
http://msdn.microsoft.com/en-us/libr...=VS.85%29.aspx

das mit der #0 ist eigentlich OK
- eine #0 im String
- und nocheine #0 vom PChar
= #0#0

bei mir funktioniert es mit der #0 ohne Probleme, also vermute ich den Fehler wo anders

google
http://learnbyexamples.org/cc/visual...-1026-why.html
http://www.bigresource.com/VB-Error-...BG97yXFgz.html

Zitat:
It seems that 1026 really means “something went wrong”
Zitat:
As it stands, if you try and delete a file that doesn't exist, you get a dialog box that says "Cannot delete file: File system error (1026)" and myResult is 1026
Prüfe mal dein Dateisystem.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: D2010, SHFileOperation, FO_DELETE -> Fehler 1026

  Alt 16. Aug 2010, 07:05
Hallo,

neue Woche, neuer Versuch.

Den Fehler-Code gibt es (common error oder so ), warum er im obigen Link fehlt,
weiss ich nicht. Bei SHFileOperation bzw. dem Link darauf gibt es ihn.
Dateiystem ist OK, ich kann das Verzeichnis ja von Hand löschen.

Noch zum Hintergrund:
Es ist ein Tool zur Entfernung von Interbase (IBToFB).
Gelöscht wird das Interbase-Verzeichnis, nachdem der Server beendet wurde.

Ich teste jetzt mal:
- Löschen eines anderen Verzeichnisses
- SHFileOperationA


Das Betriebssystem ist Windows2000,
IB liegt nicht im Programme-Verzeichnis.
Mit Rechten kann es also nichts zu tun haben.


Heiko
Heiko
  Mit Zitat antworten Zitat
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#6

AW: D2010, SHFileOperation, FO_DELETE -> Fehler 1026

  Alt 16. Aug 2010, 08:57
Das Betriebssystem ist Windows2000,
IB liegt nicht im Programme-Verzeichnis.
Mit Rechten kann es also nichts zu tun haben.
Man kann Rechte für beliebige Verzeichnisse setzen. Das es nicht das Programme-Verzeichnis ist, ist keine Bedingung dafür, dass es mit Rechten nichts zu tun hat.
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
Antwort Antwort


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 08:57 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