Hi
I want to rename and change xref path. I always get unhandled error.
What am I doing wrong????
mojofddxr is array od filenames
Lxref is combobox
Code:
Private Sub datoteke_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles datoteke.Click
Dim myOFD As New OpenFileDialog("Select DWG", "", "dwg", "Select DWG", _
OpenFileDialog.OpenFileDialogFlags.AllowMultiple)
If myOFD.ShowDialog = System.Windows.Forms.DialogResult.OK Then
mojofddxr = myOFD.GetFilenames
For Each myFileName As String In mojofddxr
'Debug.Print("***EXPORT FOR " & myFileName)
Dim myDB As New Database(False, True)
myDB.ReadDwgFile(myFileName, FileOpenMode.OpenForReadAndAllShare, True, "")
Using mytrans As Transaction = myDB.TransactionManager.StartTransaction
For Each myBlockName As String In potrazixref(myDB)
'Debug.WriteLine(myBlockName)
If Lxref.Items.IndexOf(myBlockName) < 0 Then
Lxref.Items.Add(myBlockName)
End If
'If Lblokova.FindString("myBlockName") Then Else Lblokova.Items.Add(myBlockName)
Next
End Using
myDB.Dispose()
Next
End If
End Sub
Private Sub zamxref_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles zamxref.Click
Dim myDB As New Database(False, True)
Dim myOFD As New OpenFileDialog("Select DWG", "", "dwg", "Select DWG", 0)
If myOFD.ShowDialog = System.Windows.Forms.DialogResult.OK Then
mojofdxr = myOFD.Filename
Label1.Text = "Odabrali ste datoteku " & mojofdxr & ".dwg"
End If
End Sub
Private Sub izvrsi_zamjenu(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles zamjeni.Click
For i As Integer = 0 To Lxref.SelectedItem.Count - 1
Dim imexrefa As String = Lxref.SelectedValue.ToString
For Each myFileName As String In mojofddxr
Using myDB As New Database(False, True)
myDB.ReadDwgFile(mojofdxr, FileOpenMode.OpenForReadAndAllShare, True, "")
Using mytrans As Transaction = myDB.TransactionManager.StartTransaction
For Each myBlockName As String In potrazixref(myDB)
Using myBt As BlockTable = mytrans.GetObject(myDB.BlockTableId, OpenMode.ForRead)
If myBt.Has(myBlockName) And imexrefa = myBlockName Then
Dim btrId As ObjectId = myBt(myBlockName)
Using myBtr As BlockTableRecord = mytrans.GetObject(btrId, OpenMode.ForRead)
myBtr.PathName = "./" & mojofdxr & ".dwg"
End Using
End If
End Using
Next
mytrans.Commit()
End Using ' ' transaction
myDB.SaveAs(mojofdxr, DwgVersion.Current) '<-- 2009
End Using ' ' myDB
Next ' ' myFileName
Next
End Sub
Please help