簡體   English   中英

Windows中的C#get file owner

[英]C# get file owner in Windows

我想使用下面的代碼獲取文件的所有者

File.GetAccessControl(filename).GetOwner(typeof(SecurityIdentifier)).Translate(typeof(NTAccount))

但是,它給了我BUILTIN \\ Administrators作為所有者,但我可以在文件資源管理器中看到所有者是Domain \\ MyUserName。

為什么會發生這種情況以及如何解決?

編輯: 此鏈接說明發生了什么。 它與管理員組中的用戶創建的文件以及Windows如何處理這些文件的所有者有關。

我能夠通過這個獲得文件的實際所有者...不確定這是否是你需要的。 System.IO.FileInfo Fi = new System.IO.FileInfo(@"path2file");

MessageBox.Show(Fi.GetAccessControl().GetOwner(typeof(System.Security.Principal.SecurityIdentifier)).Translate(typeof(System.Security.Principal.NTAccount)).ToString());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM