Aller au contenu

Tester si un fichier est ouvert avec OPEN


Fraid

Messages recommandés

Bonjour,

 

Je met à jour mes .csv des communes (y a du taf avec les changements), et teste souvent des lisps qui lit et/ou écrit ces fichiers.

Evidemment quand cela plante, le fichiers reste ouvert, puisque l'on ne va pas jusqu'au close.(ça finis par planter Autocad et Windows..)

 

quand je suis en phase de test j'utilise vl-bt pour avoir une trace du plantage.

Ce que j'aimerais faire c'est une fonction bateau qui "closerais" les fichiers éventuellement ouvert.

du genre:

 


(defun *error* (m) 
  (if (setq listaclore (testopen)) 
     (progn (mapcar 'close listaclore)(vl-bt))
     (vl-bt)
  )
)

 

et je ne vois pas du tout avec quelle fonction on peut récupérer les fichiers ouverts (surtout quand on ne connais pas son nom)

 

merci

Lien vers le commentaire
Partager sur d’autres sites

J'ai continué de chercher dans l'aide, rien vue

 

En attendant, rien ne m’empêche de les clore tout de même,

 

J'ai juste à modifier la fonction

 

(defun testopen (/ listo)
(setq listo (list RTEXT WTEXT))
)

 

en fait ça plante si ce n'est pas ouvert..

 

pas facile...

Modifié par Fraid
Lien vers le commentaire
Partager sur d’autres sites

  • 2 semaines après...

Salut,

un truc que je peux faire :

non pas savoir si les fichiers sont ouverts mais quelles variables sont en cours (de type 'file) dans ton dessin.

(vl-remove-if-not '(lambda(x)(= 'file(type(eval x)))) (atoms-family 0))

Te renvoie la liste des variables en cours du dessin qui concernent des fichiers.

Mais pour autant, j'ignore comment tester l'état du fichier (ouvert ou fermé).

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Lien vers le commentaire
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité