Když potřebujete uložit nějaký obsah související s vaším Aplikace Delphi na pevném disku uživatele byste se měli starat o podporu oddělení stavu uživatelských dat, uživatelských nastavení a nastavení počítače.
Například složka "Data aplikací" v systému Windows Okna by měl být použit k ukládání dokumentů specifických pro aplikaci, jako je INI soubory, stav aplikace, dočasné soubory nebo podobné.
Nikdy byste neměli používat pevné cesty k určitým umístěním, například „c: \ Program Files“, protože to nemusí fungovat jiných verzích systému Windows, protože umístění složek a adresářů se může měnit s různými verzemi systému Windows Okna.
Funkce rozhraní API systému Windows SHGetFolderPath
SHGetFolderPath je k dispozici v SHFolder jednotka. SHGetFolderPath načte úplnou cestu k identifikované známé složce.
Zde je vlastní funkce wrapperu kolem SHGetFolderPath API které vám pomohou získat některou ze standardních složek pro všechny nebo aktuálně přihlášeného uživatele systému Windows.
Zde je příklad použití funkce SHGetFolderPath:
- Přetáhněte TRadioButtonGroup (název: "RadioGroup1") do formuláře
- Přetáhněte TLabel (název: "Label1") do formuláře
- Přidejte do rádiové skupiny 5 položek:
- "[Aktuální uživatel] \ Moje dokumenty"
- "Všichni uživatelé \ aplikační data"
- "[Specifické pro uživatele] \ Data aplikací"
- "Programové soubory"
- "Všichni uživatelé \ Dokumenty"
- Událost OnClick společnosti RadioGroup zpracovejte jako:
Poznámka: „[Aktuální uživatel]“ je jméno aktuálně přihlášeného uživatele systému Windows.
Poznámka: SHGetFolderPath je nadmnožinou SHGetSpecialFolderPath.
Ve složce Dokumenty byste neměli ukládat data specifická pro aplikaci (například dočasné soubory, uživatelské předvolby, konfigurační soubory aplikace atd.). Místo toho použijte soubor specifický pro aplikaci, který je umístěn ve platné složce Application Data.
K cestě, kterou se SHGetFolderPath vrací, vždy připojte podsložku. Použijte následující konvence: "\ Data aplikací \ Název společnosti \ Název produktu \ Verze produktu".