version 11.2 (Modifiée)
Dossier 4D ({dossier}{; }{*}) Alpha
Paramètre | Type | Description | |
dossier | Entier long | Type de dossier (si omis=dossier 4D actif) | |
* | * | Retourner le dossier de la base hôte | |
Résultat | Alpha | Chemin d'accès du dossier désigné |
Description
La commande Dossier 4D renvoie le chemin d'accès du dossier 4D actif de l'application courante, ou du dossier de l'environnement 4D spécifié par le paramètre dossier, s'il est passé.
Cette commande vous permet d'obtenir avec certitude le chemin d'accès réel des dossiers utilisés par l'application. En utilisant cette commande, vous êtes certain que votre code fonctionnera correctement sur toute plate-forme, quelles que soient la langue du système et l'application 4D.
Vous pouvez passer dans dossier une des constantes suivantes, placées dans le thème "Environnement 4D" :
Constante | Type | Valeur |
Dossier 4D actif | Entier long | 0 (défaut) |
Dossier Licenses | Entier long | 1 |
Dossier Extras | Entier long | 2 |
Dossier base 4D Client | Entier long | 3 |
Dossier base | Entier long | 4 |
Dossier base syntaxe Unix | Entier long | 5 |
Dossier Resources courant | Entier long | 6 |
Dossier Logs | Entier long | 7 |
Dossier racine HTML | Entier long | 8 |
Voici une description de chacun de ces dossiers :
Notes préalables sur les noms de dossiers :
{Disque} est le disque sur lequel est installé le système.
Le libellé Utilisateur représente le nom de l'utilisateur ayant ouvert la session.
Avec certaines versions de Mac OS, les noms des dossiers sont traduits :
- le dossier Library est nommé Bibliothèque,
- le dossier Application Support est nommé Support aux applications.
Dossier 4D actif
Les applications de l'environnement 4D utilisent le dossier 4D pour stocker les informations suivantes :
Fichiers de préférences utilisés par les applications 4D
Fichier shortcuts.xml (raccourcis clavier personnalisés)
Dossier Macros v2 (macros commandes de l'éditeur de méthodes)
Dossier Favorites v11 (chemins d'accès des bases locales et distantes ayant été ouvertes)
Le dossier 4D actif se trouve par défaut à l'emplacement suivant :
Sous Windows Vista : {Disque}:\Users\Utilisateur\AppData\Roaming\4D
Sous Windows XP : {Disque}:\Documents and Settings\Utilisateur\Application Data\4D
Sous Mac OS : {Disque}:Users:Utilisateur:Library:Preferences:4D
Dossier Licenses
Dossier contenant les fichiers de licence 4D du poste.
Le dossier Licenses est situé à l'emplacement suivant :
Sous Windows Vista : {Disque}:\ProgramData\4D\Licenses
Sous Windows XP : {Disque}:\Documents and Settings\All Users\Application Data\4D\Licenses
Sous Mac OS : {Disque}:Library:Application Support:4D:Licenses
Notes :
Dans le cas d'une application fusionnée avec un 4D Volume Desktop, le dossier des licences est inclus dans le package (progiciel) de l'applicatif.
Si le dossier des licences n'a pu être créé dans le système à cause d'un défaut d'autorisation, il est créé aux emplacements suivants :
- sous Windows Vista : {Disque}:\Users\Utilisateur\AppData\Roaming\4D\Licenses
- sous Windows XP : {Disque}:\Documents and Settings\Utilisateur\Application Data\4D\Licenses
- sous Mac OS : {Disque}:Users:Utilisateur:Library:Application Support:4D:Licenses
Dossier Extras (obsolète)
Dossier au contenu personnalisé téléchargé sur chaque poste client.
Note de compatibilité : A compter de la version 11.2 de 4D v11 SQL, il est déconseillé d'utiliser le dossier Extras pour la communication personnalisée entre le serveur et les postes distants. Il est désormais recommandé d'utiliser pour cela le dossier Resources (cf. description du dossier Resources courant ci-dessous). Le dossier Extras reste toutefois pris en charge par 4D Server afin de préserver la compatibilité des applications existantes.
Note : Si le dossier Extras n'existe pas pour la base, l'exécution de la commande Dossier 4D avec la constante Dossier Extras provoque sa création.
Dossier base 4D Client (postes clients)
Dossier de la base 4D créé en local sur chaque poste client, dans lequel sont téléchargés depuis 4D Server les dossiers et fichiers relatifs à la base (ressources, plug-ins, dossier Resources, etc.).
Le dossier base 4D Client est situé à l'emplacement suivant sur chaque poste client :
Sous Windows Vista : {Disque}:\Users\Utilisateur\AppData\Local\4D\NomDeLaBase_Adresse
Sous Windows XP : {Disque}:\Documents and Settings\Utilisateur\Local Settings\Application Data\NomDeLaBase_Adresse
Sous Mac OS : {Disque}:Users:Utilisateur:Library:Caches:4D:NomDeLaBase_Adresse
Dossier base
Dossier contenant le fichier de structure de la base. Le chemin d'accès est exprimé avec la syntaxe standard de la plate-forme courante.
Avec l'application 4D Client, cette constante équivaut strictement à la constante précédente Dossier base 4D Client : la commande retourne le chemin d'accès du dossier créé en local.
Dossier base syntaxe Unix
Dossier contenant le fichier de structure de la base. Cette constante désigne le même dossier que la précédente, mais le chemin d'accès retourné est exprimé avec la syntaxe Unix (Posix), du type /Users/... Cette syntaxe est principalement utile lorsque vous utilisez la commande LANCER PROCESS EXTERNE sous Mac OS ou la commande FIXER EXECUTABLE CGI.
Dossier Resources courant
Dossier Resources de la base. Ce dossier contient les éléments additionnels (images, textes) utilisés pour l'interface de la base. Un composant peut disposer de son propre dossier Resources. Le dossier Resources est situé à côté du fichier de structure de la base.
En mode client/serveur, ce dossier permet d'organiser le transfert de données personnalisées (images, fichiers, sous-dossiers...) entre le poste serveur et les postes clients. Le contenu de ce dossier est mis à jour automatiquement sur chaque client au moment de sa connexion. Tous les mécanismes de référencement associé au dossier Resources sont pris en charge en mode client/serveur (dossier .lproj, XLIFF, images...) . En outre, 4D v11 SQL fournit divers outils permettant de gérer et de mettre à jour dynamiquement ce dossier, notamment un Explorateur de ressources.
Note : Si le dossier Resources n'existe pas pour la base, l'exécution de la commande Dossier 4D avec la constante Dossier Resources courant provoque sa création.
Dossier Logs
Dossier Logs de la base. Ce dossier centralise les fichiers d'historique de la base courante. Il est créé au même niveau que le fichier de structure. Le dossier Logs contient les fichiers d'historique suivants :
conversion de la base,
requêtes du serveur Web,
vérification et réparation des données,
vérification et réparation de la structure,
journal d'activités sauvegarde/restitution,
débogage des commandes,
requêtes 4D Server (généré sur les clients et sur le serveur)..
Note : Si le dossier Logs n'existe pas pour la base, l'exécution de la commande Dossier 4D avec la constante Dossier Logs provoque sa création.
Dossier racine HTML
Dossier racine HTML courant de la base. Le chemin d'accès retourné est exprimé avec la syntaxe standard de la plate-forme courante. Le dossier racine HTML est le dossier dans lequel le serveur Web de 4D va chercher les pages et fichiers Web demandés. Par défaut, il est nommé DossierWeb et est placé à côté de fichier de structure. Son emplacement peut être défini dans la page Web/Configuration des Préférences ou dynamiquement via la commande FIXER RACINE HTML.
Si la commande Dossier 4D est appelée depuis un 4D distant, le chemin retourné est celui du poste distant, pas celui de 4D Server.
Le paramètre facultatif * est utile dans le cadre d'une architecture utilisant des composants : il permet de déterminer la base (hôte ou composant) dont vous souhaitez obtenir le chemin d'accès d'un dossier. Ce paramètre est valide uniquement pour les dossiers Dossier base, Dossier base syntaxe Unix et Dossier Resources courant. Il est ignoré dans les autres cas.
Lorsque la commande est appelée depuis un composant :
si le paramètre * est passé, la commande retourne le chemin d'accès du dossier de la base hôte,
si le paramètre * n'est pas passé, la commande retourne le chemin d'accès du dossier du composant.
Le dossier de la base (Dossier base et Dossier base syntaxe Unix) retourné diffère en fonction du type d'architecture du composant :
- dans le cas d'un dossier/package .4dbase, la commande retourne le chemin d'accès du dossier/package .4dbase,
- dans le cas d'un fichier .4db ou .4dc, la commande retourne le chemin d'accès du dossier "Components",
- dans le cas d'un alias ou raccourci, la commande retourne le chemin d'accès du dossier contenant la base matrice originale. Le résultat diffère en fonction du format de cette base (dossier/package .4dbase ou fichier .4db/.4dc), comme décrit ci-dessus.
Lorsque la commande est appelée depuis la base hôte, elle retourne toujours le chemin d'accès du dossier de la base hôte, que le paramètre * soit passé ou non.
Exemples
(1) Pendant le démarrage d'une base mono-utilisateur, vous voulez charger (ou créer) vos propres paramètres et les stocker dans un fichier situé dans le dossier 4D. Pour cela, dans la Méthode base Sur ouverture, vous pouvez écrire les lignes suivantes :
ASSOCIER TYPES FICHIER("PREF";"PRF";"Préférences") ` Associer le type de fichier PREF sur Mac OS à l'extension de fichier .PRF sur Windows $vsNomDocPref:=Dossier 4D+"MesPrefs" ` Construire le chemin d'accès au fichier Préférences Si(Tester chemin acces($vsNomDocPref+(".PRF"*Num(Sous Windows)))#Est un document) ` Vérifier si le fichier existe $vtRefDocPref:=Creer document($vsNomDocPref;"PREF") ` Si non, il faut le créer Sinon $vtRefDocPref:=Ouvrir document($vsNomDocPref;"PREF") ` Si oui, il faut l'ouvrir Fin de si Si (OK=1) ` Traiter le contenu du document FERMER DOCUMENT($vtRefDocPref) Sinon ` Gérer l'erreur Fin de si
(2) Cet exemple illustre l'emploi de la constante Dossier base syntaxe Unix sous Mac OS pour lister le contenu du dossier de la base :
$cheminposix:="\""+Dossier 4D(Dossier base syntaxe Unix)+"\"" $mondossier:="ls -l "+$cheminposix $in:="" $out:="" $err:="" LANCER PROCESS EXTERNE($mondossier;$in;$out;$err)
Note : Sous Mac OS, il est nécessaire d'encadrer les chemins d'accès avec des guillemets lorsqu'ils contiennent des noms de fichiers ou de dossiers comportant des espaces. La séquence d'échappement "\" permet d'insérer le caractère guillemets dans la chaîne. Vous pouvez également utiliser l'instruction Caractere(Guillemets).
Référence
Dossier systeme, Dossier temporaire, FIXER RACINE HTML, LISTE COMPOSANTS, Tester chemin acces.