Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Datei kopieren unter NT rechte ?! (https://www.delphipraxis.net/94384-datei-kopieren-unter-nt-rechte.html)

ghost007 20. Jun 2007 18:44


Datei kopieren unter NT rechte ?!
 
Hallo,
ich will mit meinem programm dateien unter NT kopieren.
Ich bin als admin auf dem rechner angemeldet, jedoch gibt es einige ordner, in die nur die user reindürfen.
Nun meine frage:
Kann ich die rechte irgendwie erwerden? (ich will nichts verändern sondern nur was kopieren)
oder
Kann ich irgendwie feststellen ob ich (als admin) für den ordner x genügend rechte hab um ihn kopieren zu können?

MfG - Ghost007

P.S.:
zum kopieren verwende ich folgende funktion:
Delphi-Quellcode:
procedure TForm1.CopyFile(filepath, destination :string);
var
  f,t:file of byte;
  buf:array[1..4096] of byte;
  read:integer;
begin
  assignfile(f,filepath);
  assignfile(t,destination);
  reset(f);
  rewrite(t);
  while not eof(f) do begin
    blockread(f,buf,length(buf),read);
    blockwrite(t,buf,read);
    ProgressBar1.position:=round(100*filesize(t)/filesize(f));
    application.processmessages;
  end;
  closefile(f);
  closefile(t);
end;
//Edit:
Kann ich durch
Delphi-Quellcode:
try
 assignfile(f,filepath);
except
 //keine rechte
end;
oder so des irgendwie testen?

Luckie 20. Jun 2007 21:39

Re: Datei kopieren unter NT rechte ?!
 
Damit kannst du pürfen, ob du genügend Rechte hast in das Verzeichnis zu schreiben:
http://www.michael-puff.de/Developer...ileAccess.html

ghost007 20. Jun 2007 22:51

Re: Datei kopieren unter NT rechte ?!
 
danke, werd das mal ausprobieren ;)

MfG - Ghost007

ghost007 21. Jun 2007 15:08

Re: Datei kopieren unter NT rechte ?!
 
funktioniert wunderbar, danke :)

MfG - Ghost007

ghost007 2. Jul 2007 19:58

Re: Datei kopieren unter NT rechte ?!
 
Hallo nochmal,
luckie ich hab nun deinen code in der praxis (bei meinem dad) ausprobiert. Leider bekomme ich nicht das gewünschte ergebnis.
Folgedes liegt vor:
Eine listbox mit datei pfaden.
Nun will ich die dateipfadeinträge entfernen, zu denen ich keinen access hab.
Das hab ich mir wie folgt vorgestellt:

Delphi-Quellcode:
for i:=ListBox1.Items.Count-1 downto 0 do
 begin
  if CheckAccessToFile(GENERIC_WRITE,ListBox1.Items.Strings[i]) = false then
   begin
    ListBox1.Items.Delete(i);
   end;
 end;
jedoch wird kein eintrag gelöscht. Dementsprechend bekomme ich auch bei dem versuch eine acces denied datei zu kopieren einen "Access denied" error.

Nun meine frage, mach ich beim aufrufen deiner funktion irgend nen fehler?
Oder woran kann es dann liegen.

MfG - Ghost007

P.S.:Betriebssystem: Windows NT User: hat adminrechte (es gibt aber ordner, in die nur leute im netzwerk reindürfen, nichtmal der admin darf da rein, diese order müssen aus der obigen listbox entfert werden)

SirThornberry 2. Jul 2007 20:03

Re: Datei kopieren unter NT rechte ?!
 
Zitat:

Nun will ich die dateipfadeinträge entfernen, zu denen ich keinen access hab.
Du kannst nur etwas entfernen wenn du dazu die rechte hast!

DeddyH 2. Jul 2007 20:21

Re: Datei kopieren unter NT rechte ?!
 
Ich glaube, er meinte mit Entfernen das Löschen aus seiner Listbox.

ghost007 2. Jul 2007 20:32

Re: Datei kopieren unter NT rechte ?!
 
genau,
ich lösche die dateie pfade aus der listbox

MfG - Ghost007

DeddyH 2. Jul 2007 20:40

Re: Datei kopieren unter NT rechte ?!
 
Wie sehen die Einträge denn aus?

ghost007 2. Jul 2007 20:49

Re: Datei kopieren unter NT rechte ?!
 
ja,
z.b. C:/programme/dingens/main.exe

MfG - Ghost007


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:10 Uhr.
Seite 1 von 3  1 23      

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