banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

#1 Wed 01 December 2010 10:15

Pierre
DesCartesPourUnMondeMeilleur
Date d'inscription: 22 Sep 2005
Messages: 1643

[APIC] Répertoire windows

Aloha

J'ai un asl dans lequel je dois vérifier qu'un répertoire/une arborescence windows existe bien pour permettre la génération de fichier en son sein. Quelqu'un sait-il s'il est possible de vérifier qu'un répertoire existe et comment le créer en asl ? Si besoin, je peux toujours intégrer du code dans un batch.

Cordialement,


art X I. Déclaration des Droits de l’Homme et du Citoyen 1789
La libre communication des pensées et des opinions est un des droits les plus précieux de l’Homme : tout Citoyen peut donc parler, écrire, imprimer librement, sauf à répondre de l’abus de cette liberté, dans les cas déterminés par la Loi.

Hors ligne

 

#2 Wed 01 December 2010 10:55

JC
Membre
Lieu: Les Clayes sous Bois
Date d'inscription: 31 Jul 2007
Messages: 332

Re: [APIC] Répertoire windows

Hello Pierre,

L'opérateur FichierExiste? est là pour ça...             JC


Association GeoRezo.net

Hors ligne

 

#3 Wed 01 December 2010 11:04

Pierre
DesCartesPourUnMondeMeilleur
Date d'inscription: 22 Sep 2005
Messages: 1643

Re: [APIC] Répertoire windows

Bah je suis pas sur justement. FichierExiste? m'a l'air d'être dédié aux fichiers, non aux répertoires. Je suis en train de contourner via du batch...


art X I. Déclaration des Droits de l’Homme et du Citoyen 1789
La libre communication des pensées et des opinions est un des droits les plus précieux de l’Homme : tout Citoyen peut donc parler, écrire, imprimer librement, sauf à répondre de l’abus de cette liberté, dans les cas déterminés par la Loi.

Hors ligne

 

#4 Wed 01 December 2010 11:54

Albert STEPHAN
Juste Inscrit !
Date d'inscription: 6 Dec 2006
Messages: 4

Re: [APIC] Répertoire windows

Essayer une commande du style Ecrire (FichierExiste? "C:\Program Files\Microsoft Office\.") et cela renvoie Vrai
et Ecrire (FichierExiste? "C:\Program Files\KKsoft Office\.") qui renvoie Faux

Hors ligne

 

#5 Wed 01 December 2010 12:01

JC
Membre
Lieu: Les Clayes sous Bois
Date d'inscription: 31 Jul 2007
Messages: 332

Re: [APIC] Répertoire windows

Bah je suis pas sur justement. FichierExiste? m'a l'air d'être dédié aux fichiers, non aux répertoires.


Il fonctionne pour les deux, Pierre... Et c'est quelqu'un qui s'en sert tous les jours qui te le dit. Juste faire attention aux noms longs qui nécessitent d'être encadrés de guillemets comme suggéré par Albert.

Pour ma part, j'utilise la syntaxe suivante avec les répertoires : FichierExiste? "<nom du répertoire>"

Ce qui donne :

Code:

Ecrire FichierExiste? "C:\Program Files\Microsoft Office"

dans l'exemple d'Albert...                            JC


Association GeoRezo.net

Hors ligne

 

#6 Wed 01 December 2010 14:03

Pierre
DesCartesPourUnMondeMeilleur
Date d'inscription: 22 Sep 2005
Messages: 1643

Re: [APIC] Répertoire windows

Dont acte pour la vérif de la condition d'existence. Maintenant, comment je fais pour le créer, parce que :

Code:

Quand (Non FichierExiste? "C:\4390\") [FichierOuvrir "C:\4390\" "a"]

Ca ne crée pas de répertoire 4390...


art X I. Déclaration des Droits de l’Homme et du Citoyen 1789
La libre communication des pensées et des opinions est un des droits les plus précieux de l’Homme : tout Citoyen peut donc parler, écrire, imprimer librement, sauf à répondre de l’abus de cette liberté, dans les cas déterminés par la Loi.

Hors ligne

 

#7 Wed 01 December 2010 14:35

iznogoud83
Participant occasionnel
Date d'inscription: 4 Sep 2006
Messages: 12

Re: [APIC] Répertoire windows

En passant par une commande Ms-Dos si votre environnement le permet

Code:

Donner [rep] "c:\titi\"
Donner [commande] TexteFormat ("if not exist %c%s%c md %c%s%c",Caractere 34,rep,Caractere 34,Caractere 34,rep,Caractere 34)
PourChaque [mes] AppelSystemeFlot commande [Ecrire mes]

Hors ligne

 

#8 Wed 01 December 2010 14:59

Albert STEPHAN
Juste Inscrit !
Date d'inscription: 6 Dec 2006
Messages: 4

Re: [APIC] Répertoire windows

/* là if faut faire un appel système */

Quand (Non FichierExiste? "C:\4390\") [ AppelSystemeFlot ("mkdir C:\4390\") ]

Hors ligne

 

#9 Wed 01 December 2010 16:03

Pierre
DesCartesPourUnMondeMeilleur
Date d'inscription: 22 Sep 2005
Messages: 1643

Re: [APIC] Répertoire windows

Ok.
Donc j'ajoute ceci dans mon code

Code:

        Quand (TxtComparer(TxtFlotChaine (REIMS_CPD_PDF, "\",0),"..") == 0) [TxtCopier Armoire TxtFlotChaine (REIMS_CPD_PDF, "\",2)
                TxtAjouter Armoire "\"
                TxtAjouter Armoire TxtFlotChaine (REIMS_CPD_PDF, "\",3)

                FichierEcrireFormat(DstFile, "CMD /C set rep=%cM:\\%s%c\n", Caractere 34,Armoire,Caractere 34)
                Ecrire "ligne1 ok"
                FichierEcrireFormat(DstFile, "CMD /C IF NOT EXIST %crep%c md %crep%c\n",Caractere 37,Caractere 37,Caractere 37,Caractere 37)
                Ecrire "ligne2 ok"
                    ]

Pour ajouter à DstFile, défini ci dessous, les lignes permettant de créer le répertoire mais seulement si REIMS_CPD_PDF commence par "..\ ", ce qui est le cas où j'ai besoin de vérifier l'arborescence. Mais cela fait planter mon asl brusquement (arrêt du traitement sans plus d'explications).
En fait j'ai 2 cas de figures. Si l'utilisateur souhaite tracé dans son répertoire utilisateur, REIMS_CPD_PDF sera égal au répertoire courant dans lequel est écrit le fichier DstFile. S'il souhaite alimenter une armoire à plan, le fichier DstFile est écrit à la racine de l'arborescence, et le répertoire dans lequel écrire les fichiers est donné par les deux premiers membres de la chaîne REIMS_CPD_PDF.

Code:

Donner [DstFile] FichierOuvrir "APIC2PDF.BAT" "a"

Une idée ?


art X I. Déclaration des Droits de l’Homme et du Citoyen 1789
La libre communication des pensées et des opinions est un des droits les plus précieux de l’Homme : tout Citoyen peut donc parler, écrire, imprimer librement, sauf à répondre de l’abus de cette liberté, dans les cas déterminés par la Loi.

Hors ligne

 

Pied de page des forums

Powered by FluxBB