i |
Auto-identification d'un chemin d'accès |
Il peut être utile, dans certains cas, qu'un programme puisse identifier
son chemin d'accès. Ce tutorial va vous présenter une technique pour
réaliser cette action.
Quand on lance un programme, le répertoire en cours devient celui
de ce programme. On va donc utiliser la commande MS-DOS "cd", qui
quand elle est utilisée sans argument, renvoie le nom du répertoire en
cours. Ensuite, nous allons inscrire ce nom de répertoire dans un fichier
en utilisant le symbole de MS-DOS de redirection des sorties ">", sur
le fichier (exemple : rep.ini) qui sera donc écrit dans le répertoire
en cours. Ce qui nous donne la ligne de commande :
cd >rep.ini
que nous allons introduire dans notre programme qbasic à l'aide de
l'instruction SHELL, qui envoie une ligne de commande au dos. Cela
nous donne la première ligne du programme :
SHELL "cd > rep.ini"
Une fois le nom du répertoire écrit dans le fichier, on ouvre ce
fichier, on lit sa première ligne qu'on stock dans une variable de texte
(exemple : repapp$ ). Cette variable contiendra le chemin d'accès du
programme. Puis on supprime le fichier où l'on a écrit le nom du
répertoire, en cas de déplacement du programme, ça évite d'avoir
plusieurs fois ce fichier sur le disque.
Pour que cette technique fonctionne vous devez placer les lignes de
code avant toute instruction de changement de répertoire. Je vous
conseille de les placer au début du programme.
Les lignes de code :
SHELL "cd >rep.ini"
OPEN "rep.ini" FOR INPUT AS #1
INPUT #1, repapp$
CLOSE #1
KILL "rep.ini"