Ścieżka do Application Data w C#

Uwaga! Informacje na tej stronie mają ponad 5 lat. Nadal je udostępniam, ale prawdopodobnie nie odzwierciedlają one mojej aktualnej wiedzy ani przekonań.

# Ścieżka do Application Data w C#

Thu
17
Apr 2008

Żeby program był elegancki i działał dobrze (zwłaszcza pod Vista...), powinien swoje pliki konfiguracyjne i inne dane trzymać w katalogu C:\Dokuments and Settings\Login\Application Data\..., a nie w podkatalogu Program Files, gdzie leży plik wykonywalny. Jak pobrać ścieżkę do tego katalogu w C#?

Microsoft przewidział do tego metodę statyczną Application.UserAppDataPath. Niestety ona działa w ten sposób, że zwraca (a jeśli nie istnieje to także tworzy na dysku) ścieżkę typu Application Data\Nazwa firmy\Nazwa programu\Wersja.Wersja.Wersja.Wersja. Taka zamotana ścieżka to nienajlepszy pomysł. Szczególnie, że konfiguracja powinna działać także w nowych wersjach programu.

Dlatego lepszym rozwiązaniem jest chyba taki kod:

private string GetConfigFileName()
{
  string Dir = System.IO.Path.Combine(
    Environment.GetFolderPath(
      Environment.SpecialFolder.ApplicationData),
      "Nazwa programu");
  if (!System.IO.Directory.Exists(Dir))
    System.IO.Directory.CreateDirectory(Dir);
  return System.IO.Path.Combine(Dir, "Plik.ext");
}

Comments | #.net Share

Comments

STAT NO AD
[Stat] [STAT NO AD] [Download] [Dropbox] [pub] [Mirror] [Privacy policy]
Copyright © 2004-2019