2011-02-04 16 views
9

Używam ustawienia z mojej aplikacji C# tak:ustawienia użytkownika Przechowuj do folderu aplikacji

String str = Properties.Settings.Default.SETTINGS_NAME; 

Kiedy zapisać te ustawienia, plik ustawień jest tworzony na

C:\Documents and Settings\<user name>\Local Settings\Application Data\<comp name>\Keb.exe_Url_pbs4eg1o2ija22omldrwjxhdam0jxxi5\1.0.0.0\user.config 

Czy istnieje sposób zmienić tę ścieżkę na Application.ExecutablePath\user.config, i użyć go następnym razem, więc moja aplikacja może być bardziej przenośna?

+0

widzę, jak miałoby to aplikacja bardziej „przenośne”, ale to też uczynić go * * pojedynczego użytkownika. Czy to twój zamiar? –

+0

Tak, właśnie to zrobię. – Milos

+0

Jakiś szczególny powód nie używania App.config? – Mayank

Odpowiedz

2

Jeśli ma to być pojedynczy użytkownik lub w inny sposób dokonać konfiguracji aplikacji przenośnych będę używać własnego pliku konfiguracyjnego jak plik .ini i zachować to folder główny mojej aplikacji.

W ten sposób każdy, kto chce mieć te ustawienia może po prostu skopiować go w folderze głównym swojej aplikacji na innym komputerze. Po uruchomieniu aplikacja ładuje ustawienia i zachowuje się odpowiednio.

zapisać dane w ustalonym formacie, jak

[setting_name] = [Setting_value]\n 

lub w pliku XML, z nazwy tagów do ustawiania wartości i dla ... dobrze ... wartość :)

Można również idź z ustawieniami rejestru, ale użytkownik nie uważa, że ​​kopiowanie i scalanie plików .reg jest banalne

W ten sposób widziałem niektóre gry na PC (np. często zmieniałem ustawienia Crysis i MassEffect) i oprogramowanie zapisywało ich konfigurację akta.

+1

Plik XML, który można serializować/deserializować, wydaje się być najprostszym sposobem. – alex

+0

+1 @alex masz rację, dlatego wspominałem o tym .. Ini zostało zasugerowane, ponieważ było używane przez wiele aplikacji już w tym celu .. ale XML jest najlepszym wyborem, wiele nowych aplikacji używa go .. –

Powiązane problemy