2010-03-25 10 views
11

depolanır .NET kullanıcı ayarları konuma nasıl değiştirileceği: Başvuru dizinine bu yolu nasıl değişebileceği C:\Documents and Settings\\Local Settings\Application Data\<Project Name> varsayılan ayarlara göre

. Ayrıca farklı kullanıcılar için farklı dosyalara sahip olmak istemiyorum. Ayarları nasıl global hale getiriyorsunuz?

Ayarların kapsamını "uygulama" olarak değiştirmeyi denedim, ancak bunları çalışma zamanında değiştiremiyorum.

cevap

13

Using the default built-in behavior you can't!

S: Neden yolu bu kadar belirsiz olduğunu? 'u değiştirmek/özelleştirmek için herhangi bir yolu var mı?

C: yol yapım algoritması güvenlik, izolasyon ve sağlamlık açısından belirli titiz gereksinimlerini karşılamak zorundadır. Biz dost kullanımını yaparak kolayca keşfedilebilir olabildiğince yolunu yapmaya çalışmakla birlikte, uygulama diğer uygulamalar ile çarpışmaları gibi sorunlar yaşamaya devam olmadan tamamen basit yolu tutmak mümkün değildir, dizeleri verilen, sızdırma

LocalFileSettingsProvider, 'u, hangi ayarların saklandığını 'daki dosyaları değiştirmenin bir yolunu sağlamaz. Sağlayıcının kendisi, 'un ilk yerine yapılandırma dosyası konumlarını belirlemediğini unutmayın - yapılandırma sistemidir. ayarlarının için farklı bir konumda saklanması gerekiyorsa, önerilen yol için kendi SettingsProvider'ınızı yazmanızdır. Bu uygulamak için oldukça basittir ve , .NET 2.0 SDK örneğinde, bunun nasıl yapılacağını gösteren örnekleri bulabilir. Bununla birlikte, yukarıda belirtilen yalıtım sorunlarıyla karşılaşabileceğinizi aklınızda bulundurun. . Robert Harvey'in yanıta katılabilir

, o or write a custom settings provider.

+8

inşa kullanmayı tercih ediyorum ... –

1

Her zaman kendi XML configuration files kodunuzu okuyabilir ve yazabilirsiniz.

+4

evet kendin yap ama bu sadece Dude BERBAT mekanizmasını – mack369

0

Tüm kullanıcılar için programsal olarak değişen ayarlarda zorluklar vardır (bunlar genellikle Program Dosyalarında bulunan exe.config dosyasından gelirler ve böylece modern OS'lerde yazma erişiminden korunurlar). Uygulamayı genel olarak ayarlamayı deneyebilir, ancak daha sonra ConfigurationManager'u yapılandırma dosyasına karıştırmak için this question çözümüne benzer şekilde kullanabilirsiniz.