在我拔出其餘的頭髮之前,我想就此獲得一些輸入。
我試圖獲得一個文件夾的所有權。我當然是以管理員身份運行該程序,因爲我可以更改資源管理器中的所有者,所以我有權利擁有所有權。取得文件或文件夾的所有權
但是,如果管理員或我的帳戶擁有它,我可以更改所有者,如果我已擁有所有權,則可以更改權限。
如果我試圖讓自己擁有一個文件,讓我們說擁有SYSTEM,那麼我得到一個未授權的指示。
我已經嘗試了一些與accesscontrol方法不同的東西,但沒有任何工作,這個最新的方法我認爲是直接由本書。
private static void makePerm(string file, NTAccount account)
{
FileInfo finfo = new FileInfo(file);
FileSecurity fsecurity = finfo.GetAccessControl();
//also tried it like this //fsecurity.ResetAccessRule(new FileSystemAccessRule(string.Format(@"{0}\{1}", Environment.UserDomainName.ToString(), Environment.UserDomainName.ToString()), FileSystemRights.FullControl, AccessControlType.Allow));
fsecurity.SetOwner(account);
finfo.SetAccessControl(fsecurity);
}
我想在Windows 7 btw上這個。
我在這裏錯過了什麼?
你似乎什麼缺少的是系統級別高於你和管理員。 – 2011-03-20 13:59:52
您確定您可以通過系統擁有的文件獲取資源管理器中的所有權嗎?你似乎這樣說,但太明確。 – 2011-03-20 14:01:46
是啊我知道,但爲什麼我可以在資源管理器中將系統所有者從系統更改爲管理員,但是不能使用代碼? AFAIK管理員可以始終擁有任何東西。 – 2011-03-20 14:02:27