SetCurrentDir

La fonction SetCurrentDir définit le répertoire en cours.

Syntaxe

function SetCurrentDir(dir: String): Boolean
dir: chemin du répertoire

Remarques

La fonction SetCurrentDir définit le répertoire en cours pour l'ensemble de l'exécutable.
La valeur renvoyée est True si le répertoire en cours a été correctement modifié, False si une erreur s'est produite.

Mise en garde

Il est recommandé de ne pas utiliser cette fonction !
En effet, il s'agit d'un réglage global de l'exécutable et pas d'un réglage local au script : chaque script ou traitement interne à Qubes peut modifier cette valeur.

Dans un exécutable monothread (un seul traitement peut être exécuté à la fois), rien ne garantit qu'un autre traitement n'a pas modifié le répertoire courant depuis la dernière utilisation de SetCurrentDir.
Ainsi, pour être sûr de la valeur contenue, on est obligé de faire appel à SetCurrentDir avant d'exécuter un script avec des fonctions qui utilisent des chemins relatifs au répertoire en cours.

Dans un exécutable multithread (cas du QubesExpress et du QubesPeon notamment, où plusieurs traitements ou scripts peuvent avoir lieu simultanément), la valeur à un instant t du répertoire courant est non prédictive, car même si on l'a définit dans notre script, peut-être qu'un autre script exécuté en parallèle a changé sa valeur.

Ainsi, quand on utilise LoadStringFromFile, AppendStringToFile, SaveStringToFile, etc., il faut toujours utiliser des chemins absolus et ne pas avoir recours à ChDir, SetCurrentDir, GetCurrentDir.

Classification

Internal Fichier