Kun sinun on tallennettava sisältöä, joka liittyy Delphi-sovellus käyttäjän kiintolevyllä, sinun tulee huolehtia tuesta käyttäjän tietojen, käyttäjän asetusten ja tietokoneen asetusten erottamiselle.
Esimerkiksi hakemiston "Sovellustiedot" -kansio Windows tulisi tallentaa sovelluskohtaisia asiakirjoja, kuten INI-tiedostot, sovellustila, temp-tiedostot tai vastaavat.
Älä koskaan käytä koodattuja polkuja tiettyihin paikkoihin, kuten "c: \ Program Files", koska tämä ei välttämättä toimi muut Windows-versiot, koska kansioiden ja hakemistojen sijainti voi muuttua Windowsin eri versioiden kanssa Windows.
SHGetFolderPath Windows API -toiminto
SHGetFolderPath on saatavana SHFolder yksikkö. SHGetFolderPath hakee tunnistetun tunnetun kansion koko polun.
Tässä on mukautettu kääretoiminto SHGetFolderPathin ympärillä API auttaa sinua hankkimaan minkä tahansa vakiokansion kaikille tai tällä hetkellä kirjautuneelle Windows-käyttäjälle.
Tässä on esimerkki SHGetFolderPath-toiminnon käytöstä:
- Pudota TRadioButtonGroup (nimi: "RadioGroup1") lomakkeelle
- Pudota TLabel (nimi: "Label1") lomakkeelle
- Lisää 5 kohdetta radioryhmään:
- "[Nykyinen käyttäjä] \ Omat tiedostot"
- "Kaikki käyttäjät \ sovellustiedot"
- "[Käyttäjäkohtainen] \ Sovellustiedot"
- "Ohjelmatiedostoja"
- "Kaikki käyttäjät \ Asiakirjat"
- Käsittele RadioGroupin OnClick-tapahtuma seuraavasti:
Huomaa: "[Nykyinen käyttäjä]" on tällä hetkellä kirjautuneen Windows-käyttäjän nimi.
Huomaa: SHGetFolderPath on SHGetSpecialFolderPath yläosa.
Sinun ei pitäisi tallentaa sovelluskohtaisia tietoja (kuten väliaikaisia tiedostoja, käyttäjän asetuksia, sovellusten määritystiedostoja ja niin edelleen) Omat tiedostot -kansioon. Käytä sen sijaan sovelluskohtaista tiedostoa, joka sijaitsee kelvollisessa sovellustietokansiossa.
Liitä aina alikansio polkuun, jonka SHGetFolderPath palauttaa. Käytä seuraavaa tapaa: "\ Sovellustiedot \ Yrityksen nimi \ Tuotteen nimi \ Tuotteen versio".