嗨,我开始学vb了。net for autocad。我必须全部打开。DWG文件,并列出所有块名称和以“bom”作为名称的块的块属性。
当我尝试获取块引用时,代码停止。
我的sub是从表单按钮调用的
有人能帮我吗。
[size=2][color=#0000ff][size=2][color=#0000ff]Private[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]Sub[/color][/size][/color][/size][size=2] traitement2([/size][size=2][color=#0000ff][size=2][color=#0000ff]ByVal[/color][/size][/color][/size][size=2] CIBLE [/size][size=2][color=#0000ff][size=2][color=#0000ff]As[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]String[/color][/size][/color][/size][size=2])[/size][size=2][color=#0000ff][size=2][color=#0000ff]Dim[/color][/size][/color][/size][size=2] fichiersTrouv = Directory.GetFiles(T_CIBLE.Text, [/size][size=2][color=#a31515][size=2][color=#a31515]"*.dwg"[/color][/size][/color][/size][size=2], SearchOption.AllDirectories)[/size][size=2][color=#0000ff][size=2][color=#0000ff]For[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]Each[/color][/size][/color][/size][size=2] ligneF [/size][size=2][color=#0000ff][size=2][color=#0000ff]In[/color][/size][/color][/size][size=2] fichiersTrouv[/size][size=2]Debug.Print(ligneF)[/size][size=2][color=#0000ff][size=2][color=#0000ff]Dim[/color][/size][/color][/size][size=2] myDB [/size][size=2][color=#0000ff][size=2][color=#0000ff]As[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]New[/color][/size][/color][/size][size=2] Database([/size][size=2][color=#0000ff][size=2][color=#0000ff]False[/color][/size][/color][/size][size=2], [/size][size=2][color=#0000ff][size=2][color=#0000ff]True[/color][/size][/color][/size][size=2])[/size][size=2]myDB.ReadDwgFile(ligneF, IO.FileShare.ReadWrite, [/size][size=2][color=#0000ff][size=2][color=#0000ff]True[/color][/size][/color][/size][size=2], [/size][size=2][color=#a31515][size=2][color=#a31515]""[/color][/size][/color][/size][size=2])[/size][size=2][color=#0000ff][size=2][color=#0000ff]Using[/color][/size][/color][/size][size=2] myTrans [/size][size=2][color=#0000ff][size=2][color=#0000ff]As[/color][/size][/color][/size][size=2] Transaction = myDB.TransactionManager.StartTransaction[/size][size=2][color=#0000ff][size=2][color=#0000ff]Dim[/color][/size][/color][/size][size=2] MYBT [/size][size=2][color=#0000ff][size=2][color=#0000ff]As[/color][/size][/color][/size][size=2] BlockTable = myDB.BlockTableId.GetObject(OpenMode.ForRead)[/size][size=2][color=#0000ff][size=2][color=#0000ff]For[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]Each[/color][/size][/color][/size][size=2] mybtrid [/size][size=2][color=#0000ff][size=2][color=#0000ff]As[/color][/size][/color][/size][size=2] ObjectId [/size][size=2][color=#0000ff][size=2][color=#0000ff]In[/color][/size][/color][/size][size=2] MYBT[/size][size=2][color=#0000ff][size=2][color=#0000ff]Dim[/color][/size][/color][/size][size=2] MYBTR [/size][size=2][color=#0000ff][size=2][color=#0000ff]As[/color][/size][/color][/size][size=2] BlockTableRecord = mybtrid.GetObject(OpenMode.ForRead)[/size][size=2]Debug.WriteLine(MYBTR.Name)[/size][size=2][color=#0000ff][size=2][color=#0000ff]If[/color][/size][/color][/size][size=2] MYBTR.Name = [/size][size=2][color=#a31515][size=2][color=#a31515]"bom"[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]Then[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]Using[/color][/size][/color][/size][size=2] MYTRANS2 [/size][size=2][color=#0000ff][size=2][color=#0000ff]As[/color][/size][/color][/size][size=2] Transaction = mybtrid.Database.TransactionManager.StartTransaction[/size][size=2][color=#008000][size=2][color=#008000]' program stop on next line autocad fatal error : Unhandled e0434f4dh exception at 7c812afdh[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]Dim[/color][/size][/color][/size][size=2] MYBREF [/size][size=2][color=#0000ff][size=2][color=#0000ff]As[/color][/size][/color][/size][size=2] BlockReference = mybtrid.GetObject(OpenMode.ForRead)[/size][size=2][color=#0000ff][size=2][color=#0000ff]Dim[/color][/size][/color][/size][size=2] MYATTCOLLECTION [/size][size=2][color=#0000ff][size=2][color=#0000ff]As[/color][/size][/color][/size][size=2] AttributeCollection = MYBREF.AttributeCollection[/size][size=2][color=#0000ff][size=2][color=#0000ff]For[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]Each[/color][/size][/color][/size][size=2] MYATTREFID [/size][size=2][color=#0000ff][size=2][color=#0000ff]As[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]Object[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]In[/color][/size][/color][/size][size=2] MYATTCOLLECTION[/size][size=2][color=#0000ff][size=2][color=#0000ff]Dim[/color][/size][/color][/size][size=2] myAttRef [/size][size=2][color=#0000ff][size=2][color=#0000ff]As[/color][/size][/color][/size][size=2] AttributeReference = MYATTREFID.GetObject(OpenMode.ForWrite)[/size][size=2]Debug.WriteLine(MYBTR.Name & [/size][size=2][color=#a31515][size=2][color=#a31515]" - "[/color][/size][/color][/size][size=2] & myAttRef.Tag & [/size][size=2][color=#a31515][size=2][color=#a31515]" - "[/color][/size][/color][/size][size=2] & myAttRef.TextString)[/size][size=2][color=#0000ff][size=2][color=#0000ff]Next[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]End[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]Using[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]End[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]If[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]Next[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]End[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]Using[/color][/size][/color][/size][size=2]myDB.Dispose()[/size][size=2][color=#0000ff][size=2][color=#0000ff]Next[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]End[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]Sub[/color][/size][/color][/size]