2011-09-16 14 views
7

मैं सभी उपयोगकर्ताओं द्वारा एक फ़ाइल लिखने योग्य सेट करना चाहता हूं।मैं सभी उपयोगकर्ताओं द्वारा एक फ़ाइल को लिखने योग्य कैसे सेट कर सकता हूं?

FileSecurity sec = File.GetAccessControl(fileName); 

string users = ?????; 
sec.AddAccessRule(new FileSystemAccessRule(
     users, 
     FileSystemRights.Write, 
     AccessControlType.Allow)); 

File.SetAccessControl(fileName, sec); 

समस्या यह है कि मुझे नहीं पता कि कौन सी स्ट्रिंग का उपयोग करना है। मैंने users = WindowsAccountType.Normal.ToString() को आजमाया है, लेकिन यह केवल "Normal" देता है, जो काम नहीं करता है। मैं उस स्ट्रिंग को कैसे प्राप्त कर सकता हूं जो मशीन पर सभी उपयोगकर्ताओं के समूह को निर्दिष्ट करता है?

उत्तर

7

मुझे लगता है कि आप "सभी" समूह के लिए सभी जो देख रहे हैं लॉग-ऑन उपयोगकर्ता हैं।

SecurityIdentifier everyone = new SecurityIdentifier(WellKnownSidType.WorldSid, null); 

पूर्ण समाधान पहले से ही में वर्णित है: हालांकि स्ट्रिंग का उपयोग "सभी" आप गैर अंग्रेज़ी सिस्टम

एक बहुत बेहतर समाधान SecurityIdentifier WellKnownSidType.WorldSid के माध्यम से इसका इस्तेमाल करने के लिए है पर गंभीर मुसीबत में मिल जाएगा यह उत्तर: Add "Everyone" privilege to folder using C#.NET

4

कोशिश "सभी" जो एक सिस्टम खाते हर मशीन पर या यहाँ तक कि ई डोमेन पर परिभाषित किया गया है, यदि कोई हो (उस मामले में डोमेन \ हर कोई)

+0

"हर कोई" केवल अंग्रेज़ी सिस्टम पर काम करता है। – Robert

संबंधित मुद्दे