Форум: "Система";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
ВнизКто положил файл? Найти похожие ветки
← →
Shurik_212 (2004-01-27 13:12) [0]На расшаренsй ресурс юзер положил файл. Как узнать какой юзер это сделал?
← →
Бином Ньютоныч (2004-01-27 17:35) [1]Если NTFS, то попробуй через SID владельца. При создании владельцем назначается создатель.
← →
Shurik_212 (2004-01-27 17:52) [2]Сенкс, но если можно, поподробнее.
← →
Бином Ньютоныч (2004-01-27 18:07) [3]procedure TForm1.Button3Click(Sender: TObject);
var
pSD: PSecurityDescriptor;
Sid: PSID;
s: string;
Owner, RefDomain: string;
cbOwner, cbRefDomain,
cbUse, Res: Cardinal;
begin
if not OpenDialog1.Execute then exit;
s:=OpenDialog1.FileName;
Res:=GetNamedSecurityInfoA(PChar(s), SE_FILE_OBJECT, OWNER_SECURITY_INFORMATION, @SID, nil, nil, nil, Pointer(pSD));
if Res = ERROR_SUCCESS then
try
cbOwner:=1023;
SetLength(Owner, cbOwner);
cbRefDomain:=1023;
SetLength(RefDomain, cbRefDomain);
if LookupAccountSidA(nil, Sid, PChar(Owner), cbOwner, PChar(RefDomain), cbRefDomain, cbUse) then
begin
SetLength(Owner, cbOwner);
SetLength(RefDomain, cbRefDomain);
ShowMessage(Owner);
ShowMessage(RefDomain);
end
else
RaiseLastOSError;
finally
LocalFree(Cardinal(pSD));
end
else
begin
SetLastError(Res);
RaiseLastOSError;
end;
end;
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.046 c