PhilOctet Posté(e) le 13 juillet 2010 Posté(e) le 13 juillet 2010 Bonsoir à tous, Je suis entrain de traiter près de 15000 fichiers AutoCAD présents sur un serveur. Certains fichiers réclament un "Revover" et bloque la procédure. Ces fichiers sont récupérés manuellement et lors du "contrôle", AutoCAD me dit "erBadHeader". Ce doit être l'entête du fichier. Ce n'est pas là l'important. Est-ce qu'il existe un moyen (via un try catch par exemple) de ne pas afficher cette boite de dialogue bloquante parce qu'elle attend un "Ok"? Je logue certaines erreurs dans un fichier .csv et j'aimerais retrouver les erreur précédentes dans ce même fichier log. Et là, je demanderai l'intervention des utilisateurs de ces dessins afin qu'ils corrigent les problèmes. Là, pour le coup, moi aussi, je suis aussi bloqué. Merci de votre aide.
(gile) Posté(e) le 13 juillet 2010 Posté(e) le 13 juillet 2010 Salut, Comment ouvres-tu ces fichiers ?Avec ReadDwgFile ? Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
PhilOctet Posté(e) le 14 juillet 2010 Auteur Posté(e) le 14 juillet 2010 Bonjour, Oui, j'ouvre la base de données DWG avec : Using dtb = New AcBdd.Database(False, True) dtb.ReadDwgFile(filename, System.IO.FileShare.ReadWrite, True, String.Empty) ... acTrans.Commit()End Using Sans vouloir être influent, je pense qu'il faudrait agir au niveau du commit. Merci de ton aide.
(gile) Posté(e) le 16 juillet 2010 Posté(e) le 16 juillet 2010 Je ne comprends pas bien le problème, avec ReadDwgFile le document n'est pas "vraiment ouvert", seule la base de données est accessible en lecture/écriture donc je ne comprends pas quelle boite de dialogue s'ouvre. Ce que je ferais : un groupe try/catch qui essaye d'ouvrir la base de donnée, et qui récupère dans une liste le nom complet du fichier en cas d'exception : List wrongFiles = new list(); using (dtb = New AcBdd.Database(False, True)) { try { dtb.ReadDwgFile(filename, System.IO.FileShare.ReadWrite, True, String.Empty); ... } catch { wrongFiles.Add(filename); } } Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
PhilOctet Posté(e) le 19 juillet 2010 Auteur Posté(e) le 19 juillet 2010 Bonsoir (gile), Je vais essayer. Je suis sur que cela va fonctionner. Le message affiché coorespond au message classique de demande de récupération lorsque le fichier est abimé. J'ai également d'autres messages de type BDX CASEx. Il me semble qu'ils sont liés aux objets BDX d'applications tierces. Mais lequel correspond à quoi ! Je n'ai pas trouvé de réponse. Je te tiens informer de l'évolution. A bientôt,
PhilOctet Posté(e) le 17 septembre 2012 Auteur Posté(e) le 17 septembre 2012 Bonsoir, Eté et congés terminés, il faut se remettre au boulot. Mes quelques investigations estivales m'ont permis d'avancer quelque peu. L'exercice ci-dessus terminé, il me faut passer au suivant. Dans AutoCAD, il existe une commande "recover" (= recuperer). Peut-on la lancer avec ReadDwgFile ? Quel est cette méthode ? je vous en remercie,
(gile) Posté(e) le 17 septembre 2012 Posté(e) le 17 septembre 2012 Salut, À ma connaissance, ça n'est pas possible.Comme tu le sais certainement, on ne peut lancer une commande AutoCAD dans un dessin qui n'est pas ouvert dans l'éditeur. Il existe bien dans la documentation une méthode Database.Audit() dont on pourrait penser qu'elle correspond à la commande du même nom (CONTROLER en français), mais elle n'est toujours pas implémentée dans A2013... Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant