PhilBat Posté(e) le 27 novembre 2015 Posté(e) le 27 novembre 2015 Bonjour à tous,je rencontre un problème assez bizarre dans la version autoCAD 2013 et non dans la 2016 :lors de l'insertion d'un bloc, cela me provoque une erreur (pas tous le temps) dans le sens qu'il ne trouve pas lefichier correspondant dans le disque dur et pour cause la variable 'string' contenant son nomchange lors de l'appel de la commande Db.Insert(FileDwg, tmpDb, True)Voici le code : Dim acDoc As Document = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument Dim ed As Editor = acDoc.Editor Dim Db As Database = acDoc.Database Dim FileTampons, FileDwg As String FileTampons = PathGpO & "\FOLIOS\" & MMono & ".DWG" FileDwg = MMono Using Tr As Transaction = Db.TransactionManager.StartTransaction Dim bt As BlockTable = DirectCast(Tr.GetObject(Db.BlockTableId, OpenMode.ForRead), BlockTable) If Not bt.Has(FileDwg) Then If IO.File.Exists(FileTampons) Then Dim tmpDb As New Database(False, True) 'tmpDb.ReadDwgFile(FileTampons, IO.FileShare.Read, True, Nothing) tmpDb.ReadDwgFile(FileTampons, FileOpenMode.OpenForReadAndAllShare, False, Nothing) Db.Insert(FileDwg, tmpDb, True) Else Throw New System.Exception(String.Format("File {0} is not found", FileTampons)) Tr.Abort() Return End If End If Dim currSpace As BlockTableRecord = CType(Tr.GetObject(Db.CurrentSpaceId, OpenMode.ForWrite), BlockTableRecord) Using br As New BlockReference(Point3d.Origin, bt(FileDwg)) br.ScaleFactors = New Scale3d(1.0#, 1.0#, 1.0#) br.Rotation = 0.0# 'br.Layer = "0" br.TransformBy(Matrix3d.Displacement(p3d - Point3d.Origin).PreMultiplyBy(ed.CurrentUserCoordinateSystem)) currSpace.AppendEntity(br) Tr.AddNewlyCreatedDBObject(br, True) br.ExplodeToOwnerSpace() br.Erase() End Using tr.commit() End Using Par exemple si la variable MMono = "FDP-toto" , la variable FileDwg se transforme en "GDP-toto" pour une raison inconnue et d'où le plantage d'autoCAD car ce fichier 'GDP-toto.dwg' n'existe pas. Un 'Try Catch' ne change rien.Sincères SalutationsPhilippe.
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