2011-12-06 4 views
5

मैं एक WPF अनुप्रयोग है कि एक ही सेटिंग्स के साथ एक मशीन के सभी उपयोगकर्ताओं पर चलाना चाहिए है। सेटिंग्स को पढ़ना/लिखना चाहिए। मैं पहले CommonApplicationData में उपयोगकर्ता विन्यास सेटिंग्स भंडारण किया गया है, उदाहरण केगैर-रोमिंग उपयोगकर्ताओं के लिए मशीन-व्यापी एप्लिकेशन सेटिंग्स कहां रखनी चाहिए?

var settingsFile = Path.Combine(Environment.GetFolderPath(
    Environment.SpecialFolder.CommonApplicationData), 
    "[company]", "[product]", "settings.xml"); 

के लिए हालांकि मैं आज सुबह कि CommonApplicationData प्रोफाइल रोमिंग के लिए प्रयोग किया जाता है, जिसका अर्थ है कि वे मशीन विशिष्ट नहीं कर रहे पढ़ें। से मैं क्या मिल सकता है, हम आवेदन डेटा के लिए निम्न विकल्पों (source) है:

// Store application-specific data for the current roaming user. 
// A roaming user works on more than one computer on a network. 
// A roaming user's profile is kept on a server on the network and is loaded onto a system ' when the user logs on. 
System.Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData); 


// Store in-common application-specific data that is used by all users. 
System.Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData); 


// Store application-specific data that is used by the current, non-roaming user. 
System.Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData); 

संक्षेप में, विकल्प

  • एकल उपयोगकर्ता हैं,
  • सभी उपयोगकर्ताओं को रोमिंग,
  • रोमिंग
  • एकल उपयोगकर्ता, गैर घूम

मैं क्या जरूरत है सभी उपयोगकर्ताओं, गैर घूम रहा है। मेरा प्रारंभिक विचार यह सब इंस्टॉल फ़ोल्डर में चकना है, लेकिन यह थोड़ा पुराना स्कूल लगता है?

विचार?

+1

आप कहाँ पढ़ा था कि 'CommonApplicationData' घूम रहा है? मैं यह थोड़ा अजीब लगता है ... –

+0

मैं में विधेयक वैगनर के पुस्तक प्रभावी सी # इसे पढ़ा। हालांकि, यह एकमात्र जगह है जहां मैं इस बोली को पा सकता हूं, इसलिए यह वाग्नेर के हिस्से पर एक दुर्लभ गलती है, और अगर मैं इसके बारे में गलत हूं तो मुझे सुनने में बहुत दिलचस्पी होगी। –

+0

[एमएसडीएन] से (http://msdn.microsoft.com/en-us/library/system.environment.specialfolder.aspx) दस्तावेज़ीकरण: "वह निर्देशिका जो अनुप्रयोग-विशिष्ट डेटा के लिए एक सामान्य भंडार के रूप में कार्य करती है जिसका उपयोग किया जाता है सभी उपयोगकर्ताओं द्वारा। " –

उत्तर

2

AppData फ़ोल्डर और अन्य उपयोगकर्ता रोमिंग से संबंधित वस्तुओं के Here is a good explanation

के अनुसार

MSDN Documentation:

CommonApplicationData "निर्देशिका है कि कि सभी उपयोगकर्ताओं द्वारा प्रयोग किया जाता है आवेदन विशेष डेटा के लिए एक आम भंडार के रूप में कार्य करता है"

जबकि

LocalApplicationData है "निर्देशिका है जो वर्तमान-गैर-रोमिंग उपयोगकर्ता द्वारा उपयोग किए जाने वाले एप्लिकेशन-विशिष्ट डेटा के लिए एक सामान्य भंडार के रूप में कार्य करता है "।

1

इसके लिए मेरी प्राथमिकता Application Settings है जो प्रति सेटिंग की इच्छा के अनुसार आवेदन या विस्तृत उपयोगकर्ता हो सकती है।

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