Как прочитать владельца файлаDelphi , Файловая система , ФайлыКак прочитать владельца файлаАвтор: http://www.swissdelphicenter.ch // When you create a file or directory, you become the owner of it. // With GetFileOwner you get the owner of a file. 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(OwnerSID, SizeOf(PSID)); 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; procedure TForm1.Button1Click(Sender: TObject); var Domain, Username: string; begin GetFileOwner('YourFile.xyz', domain, username); ShowMessage(username + '@' + domain); end; // Note: Only works unter NT. Статья Как прочитать владельца файла раздела Файловая система Файлы может быть полезна для разработчиков на delphi & pascal. Комментарии и вопросыМатериалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |