AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Rechte zum verschieben einer Datei prüfen

Rechte zum verschieben einer Datei prüfen

Ein Thema von ebber · begonnen am 23. Jun 2007 · letzter Beitrag vom 30. Jun 2007
Antwort Antwort
Seite 1 von 2  1 2   
ebber

Registriert seit: 31. Okt 2006
243 Beiträge
 
#1

Rechte zum verschieben einer Datei prüfen

  Alt 23. Jun 2007, 13:21
Hallo

ich möchte herausfinden ob ich eine Datei verschieben kann, also in einen anderen Ordner. Wenn eine Datei in einen bestimmten Ordner kopiert wird und ich während diesem, diesen Ordner nach Dateien durchsuche mit meinem Programm, dann ist die Datei dort schon vorhanden obwohl sie noch beim kopieren ist. Dann lässt sie sich natürlich noch nicht weiter verschieben. Wie kann ich jetzt herausfinden ob ich die Datei verschieben kann ? Also ob sie ein anderes Programm in irgend einer Weise verwendet ?

MfG
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: Rechte zum verschieben einer Datei prüfen

  Alt 23. Jun 2007, 17:02
Bitte benutz die Suche.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
ebber

Registriert seit: 31. Okt 2006
243 Beiträge
 
#3

Re: Rechte zum verschieben einer Datei prüfen

  Alt 23. Jun 2007, 17:37
Ich bin deiner bitte jetzt nachgekommen. Ich hatte das zwar schon gemacht bevor ich hier gefragt habe aber doppelt ist meistens besser.

Aufjedenfall habe ich wieder nichts gefunden, also entweder habe ich einen komplett falschen Ansatz oder es gibt hier nichts dazu, was ich nicht glaube sonst würdest du mich wohl kaum darauf hinweisen.

Kann mir pls jemand mal einen entsprechenden Beitrag nennen, pls ?

MfG
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: Rechte zum verschieben einer Datei prüfen

  Alt 23. Jun 2007, 17:40
Guck mal nach Datei exklusiv geöffnet
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Dezipaitor

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

Re: Rechte zum verschieben einer Datei prüfen

  Alt 23. Jun 2007, 17:47
Wie gewünscht:

1
2
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.189 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: Rechte zum verschieben einer Datei prüfen

  Alt 23. Jun 2007, 17:49
Das beste ist einfach Versuchen und bei Mißerfolgt den letzten Windows-Fehlercode prüfen/Ausgeben. Unter Windows kann neben NTFS-Rechte, Lanmanager-Rechte, Policy-Rechte und dem neuer UAC-Vereinfachung bei Vista auch noch (bei .NET) die .NET-Rechtevergabe dir einen Strich durch die Rechnung machen. Ebenfalls können auch noch Plattenplatzprobleme (Verzeichnis könnte bei NTFS ja von anderer Partition kommen) sowie eine wild gewordener Virenscanner das Vorhaben vereiteln.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
ebber

Registriert seit: 31. Okt 2006
243 Beiträge
 
#7

Re: Rechte zum verschieben einer Datei prüfen

  Alt 23. Jun 2007, 17:56
Danke ich habe jetzt was gefunden. Ich hatte vorhin scho ähnliche Sachen gesehen gehabt, aber irgendwie nicht das richtige gefunden.


Delphi-Quellcode:

function IsFileOpen(const FileName: string): Boolean;
var Stream: TFileStream;
begin
  Result := false;
  if not FileExists(FileName) then exit;
  try
    Stream := TFileStream.Create(FileName,fmOpenRead or fmShareExclusive);
  except
    Result := true;
    exit;
  end;
  Stream.Free;
end;
Mit diesem geht das jetzt, aber das funktioniert ja über eine Exeption. Kann ich dem Debugger sagen, dass er nur genau an dieser Stelle keine Exception bringen soll, also nur nicht anzeigen ?
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: Rechte zum verschieben einer Datei prüfen

  Alt 23. Jun 2007, 18:08
Durch das "except" wird die Exception nicht angezeigt. Starte das Programm aus dem Explorer heraus und du wirst nichts sehen. In Delphi kannst du in den Debugger-Optionen einstellen, dass Delphi bei Sprachexceptions nicht stoppen soll, dann geht's auch aus der IDE heraus.
  Mit Zitat antworten Zitat
ebber

Registriert seit: 31. Okt 2006
243 Beiträge
 
#9

Re: Rechte zum verschieben einer Datei prüfen

  Alt 23. Jun 2007, 18:15
Durch das except wird kein Fehler angezeigt, nur eine Exception ? Also wenn ich das Programm ohne Debugger starte eben nichts ?

Wenn ich in Delphi einstelle das er die Exception nicht anzeigen soll dann zeigt es ja gar keine Exception mehr an. Ich möchte aber nur genau in dieser Stelle dass der Debugger hier nicht anhält oder was anzeigt. Das geht nicht ?
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: Rechte zum verschieben einer Datei prüfen

  Alt 23. Jun 2007, 18:25
Also durch try - except kann man die Exception unterdrücken, die im try-Abschnitt auftritt. Mit Compilerschaltern kannst das vielleicht auch für bestimmte Abschnitte ausblenden lassen, aber da bin ich überfragt, sorry.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 05:56 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