Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Betriebssysteme (https://www.delphipraxis.net/27-betriebssysteme/)
-   -   Ersteller einer Datei auslesen (https://www.delphipraxis.net/66550-ersteller-einer-datei-auslesen.html)

Mario 31. Mär 2006 10:38


Ersteller einer Datei auslesen
 
Hallo,

ist es unter Windows möglich, den Ersteller einer Datei auszulesen bzw. gibt es diese Info überhaupt. Sprich unter welchem Benutzerkonto eine Datei angelegt worden ist.

mkinzler 31. Mär 2006 10:47

Re: Ersteller einer Datei auslesen
 
Bei NTFS gibt es den Datei-Owner. Bei FAT nope

Mario 31. Mär 2006 12:05

Re: Ersteller einer Datei auslesen
 
Hat jemand eine Idee, wie ich diesen unter Win32 auslesen kann?

Ich habe gerade mal auf einem Server nachgeschaut. Alle Dateien haben als Owner den Admin, kann das sein, oder habe ich da falsch geschaut?

toms 31. Mär 2006 12:16

Re: Ersteller einer Datei auslesen
 
Hallo,

Unter NT kannst du den Benuzer einer Datei so auslesen:
Delphi-Quellcode:
function GetFileOwner(FileName: string;
  var Domain, Username: string): Boolean;
var
  SecDescr: PSecurityDescriptor;
  SizeNeeded, SizeNeeded2: DWORD;
  OwnerSID: PSID;
  OwnerDefault: BOOL;
  OwnerName, DomainName: PChar;
  OwnerType: SID_NAME_USE;
begin
  GetFileOwner := False;
  GetMem(SecDescr, 1024);
  GetMem(OwnerName, 1024);
  GetMem(DomainName, 1024);
  try
    if not GetFileSecurity(PChar(FileName),
      OWNER_SECURITY_INFORMATION,
      SecDescr, 1024, SizeNeeded) then
      Exit;
    if not GetSecurityDescriptorOwner(SecDescr,
      OwnerSID, OwnerDefault) then
      Exit;
    SizeNeeded := 1024;
    SizeNeeded2 := 1024;
    if not LookupAccountSID(nil, OwnerSID, OwnerName,
      SizeNeeded, DomainName, SizeNeeded2, OwnerType) then
      Exit;
    Domain  := DomainName;
    Username := OwnerName;
  finally
    FreeMem(SecDescr);
    FreeMem(OwnerName);
    FreeMem(DomainName);
  end;
  GetFileOwner := True;
end;

himitsu 31. Mär 2006 12:20

Re: Ersteller einer Datei auslesen
 
Sein kann es, es kommt halt darauf an, wie auf dem server der Owner festgelegt wird. (bei mir wird z.B. alles mir zugeordnet, egal wer/was die Datei erstellt)

Christian Seehase 31. Mär 2006 18:34

Re: Ersteller einer Datei auslesen
 
Moin Zusammen,

Zitat:

Zitat von mkinzler
Bei NTFS gibt es den Datei-Owner.

das schon, aber diesen Wert kann man ändern (Besitz übernehmen).

mkinzler 31. Mär 2006 18:38

Re: Ersteller einer Datei auslesen
 
Zitat:

das schon, aber diesen Wert kann man ändern (Besitz übernehmen).
wenn man das recht dazu hat


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:12 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