Rekisteri

Jos haluat tallentaa vain vähän tietoa pelikertojen välillä, on olemassa myös tiedostoon tallentamista helpompi tapa. Voit käyttää nimittäin rekisteriä. Rekisteri on Windowsin ylläpitämä suuri tietokanta, jossa säilytetään kaikenlaisia ohjelmien asetuksia. Jokaisella rekisteriarvolla (entry) on nimi ja arvo. Voit käyttää sekä merkkijono- että reaalilukuarvoja. Seuraavilla funktioilla voit vaikuttaa rekisteriin:

registry_write_string(name,str) Luo uuden rekisteriarvon nimellä name ja antaa sille merkkijonomuotoisen arvon str.
registry_write_real(name,x) Luo uuden rekisteriarvon nimellä name ja antaa sille reaalilukumuotoisen arvon x.
registry_read_string(name) Palauttaa merkkijonon, joka on tallennettu rekisteriarvoon name. (Arvon täytyy olla olemassa, muuten funktio palauttaa tyhjän merkkijonon.)
registry_read_real(name) Palauttaa reaaliluvun, joka on tallennettu rekisteriarvoon name. (Arvon täytyy olla olemassa, muuten funktio palauttaa lukuarvon 0.)
registry_exists(name) Ilmoittaa, onko kyseinen rekisteriarvo olemassa.

Rekisteriarvot on itse asiassa ryhmitelty avaimiksi. Kaikki yllä olevat keinot toimivat erityisesti peliäsi varten tehdyssä avaimessa. Ohjelmasi voi tällä tavalla saada myös tietoa, millä käyttöjärjestelmällä peliä käytetään. Voit myös lukea arvoja muista avaimista, ja jopa kirjoittaa niihin. Ole kuitenkin varovainen. VOIT HELPOSTI TUHOTA KÄYTTÖJÄRJESTELMÄSI tällä tavalla (Kirjoittaminen ei ole sallittua turvatilassa (secure mode)). Huomaa myös, että avaimet on jaettu ryhmiin. Seuraavat toiminnot toimivat oletusarvoisesti ryhmässä HKEY_CURRENT_USER. Voit kuitenkin myös vaihtaa ryhmän. Joten, jos esimerkiksi haluat tietää nykyisen väliaikaiskansion, käytä koodia

  path = registry_read_string_ext('\Environment','TEMP');

Seuraavat funktiot ovat olemassa:

registry_write_string_ext(key,name,str) Luo rekisteriarvon rekisterin avaimeen key ja antaa sille merkkijonomuotoisen arvon str.
registry_write_real_ext(key,name,x) Luo rekisteriarvon rekisterin avaimeen key ja antaa sille reaalilukumuotoisen arvon str.
registry_read_string_ext(key,name) Palauttaa merkkijonon, joka on tallennettu avaimen key rekisteriarvoon name. (Arvon täytyy olla olemassa, muuten funktio palauttaa tyhjän merkkijonon.)
registry_read_real_ext(key,name) Palauttaa reaaliluvun, joka on tallennettu avaimen key rekisteriarvoon name. (Arvon täytyy olla olemassa, muuten funktio palauttaa lukuarvon 0.)
registry_exists_ext(key,name) Ilmoittaa, onko avaimessa key olemassa rekisteriarvo name.
registry_set_root(root) Vaihtaa muiden funktioiden käyttämän ryhmän. Käytä seuraavia arvoja:
0 = HKEY_CURRENT_USER
1 = HKEY_LOCAL_MACHINE
2 = HKEY_CLASSES_ROOT
3 = HKEY_USERS