A helyi gép rendszergazdájának engedélye (egyedi vagy házirend formájában) mindenképpen szükséges a rendszergazdai jogokat igénylő műveletek elvégzéséhez!
Ezeket a programmal együtt nem tudod telepíteni, illetve csak akkor ha a program megfelelő hitelesítési információkat visz magával.
Ha a programok csak úgy, az ügyfél gépén, annak rendszergazdája által megadott engedély nélkül elindulhatnának rendszergazdai jogokkal akkor a rosszindulatú kódok készítőinek nem kellene sokat gondolkodniuk, hogy a világot a saját akaratuk szerint kormányozzák.
A windows-os hitelesítésről egyébként itt a fórumon az
ACL API
témában is volt szó.
Az általad említett "
amennyiben az nem elég, akkor dobna egy ablakot" megoldásnak szerintem nem sok értelme van, mivel a végén mégis csak "
meg kell kérjem a kedves felhasználót, hogy majd lesz szíves adminisztrátori jogokkal futtatni". Ha már tudod hogy jogosultsági problémák lehetnek akkor szebb megoldás előre szólni a felhasználónak.
Ha azonban mindenképpen az ablakdobást szeretnéd akkor úgy írd meg a kódot, hogy kivételkezelést (try.. except) alkalmazol azokon a helyeken ahol a problémára számítasz.
Hogyan:
www.freepascal.org/docs-html/ref/refch17.html#x204-21400017
Mivel:
lazarus-ccr.sourceforge.net/docs/rtl/sysutils/exception.html
Példák:
lazarus-ccr.sourceforge.net/docs/rtl/sysutils/index-4.html
A különböző unit-ok további Exception leszármazottakat is tartalmazhatnak. Szükség esetén Te magad is generálhatsz egyedi kivételeket.