Hallo,
ich habe heute Schulungsunterlagen bekommen, wie ich per VB6/VBA auf AutoCAD bzw. einen Aufsatz zugreifen kann.
In VB6 funktioniert es, aber ich möchte es gerne in VB.NET realisieren, leider bleibe ich dabei hängen.
Folgender Code ist für VBA:
[highlight=vbnet]Sub IsProSteelRunning()
Dim Obj As Object
Dim acadApp As Object
Dim acadDoc As Object
Dim Result As Boolean
On Error Resume Next
‘ Überprüfen ob schon eine AutoCAD Instanz aktiv ist!
Set acadApp = GetObject(, "AutoCAD.Application")
If Err.Number = 0 Then
Result = True
Else
Err.Clear
‘ Wenn keine active AutoCAD Instanz vorhanden ist, dann erzeugen ‘ wir eine neue Instanz.
Set acadApp = CreateObject("AutoCAD.Application")
If Err.Number = 0 Then
Result = True
Else
Result = False
MsgBox Err.Description
End If
End If
If Result Then
Set acadDoc = acadApp.ActiveDocument
acadApp.Visible = True
’ Hier wird das ProSteel Object initialisiert.
Set Obj = acadApp.GetInterfaceObject("PSCOMWRAPPER.Ks_ComApp lication")
If Not Obj Is Nothing Then
MsgBox "Found installed ProSteel with " & Obj.VersionString
MsgBox "Found Datapath = " & Obj.GetGlobalSettings.DataPath
End If
End If
End Sub
[/highlight]
Ich habe die Verweise für die Typenbibliotheken hinzugefügt, mein Code sieht bis jetzt so aus:
[highlight=vbnet]Imports Autodesk
Imports PSCOMWRAPPERLib
Public Class Form1
Dim Obj As Object
Dim acadApp As Object
Dim acadDoc As Object
Dim Result As Boolean
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
acadApp = New AutoCAD.Interop.AcadApplication
acadDoc = new acadApp. ...
End Sub
End Class
[/highlight]
Ich kann schon nicht das AcadDoc=Autocad Document öffnen ...
Hat jemand eine Idee und kann mir den VB6 Code in VB.NET übersetzen oder mir Tipps geben
Gruss Alex
ich habe heute Schulungsunterlagen bekommen, wie ich per VB6/VBA auf AutoCAD bzw. einen Aufsatz zugreifen kann.
In VB6 funktioniert es, aber ich möchte es gerne in VB.NET realisieren, leider bleibe ich dabei hängen.
Folgender Code ist für VBA:
[highlight=vbnet]Sub IsProSteelRunning()
Dim Obj As Object
Dim acadApp As Object
Dim acadDoc As Object
Dim Result As Boolean
On Error Resume Next
‘ Überprüfen ob schon eine AutoCAD Instanz aktiv ist!
Set acadApp = GetObject(, "AutoCAD.Application")
If Err.Number = 0 Then
Result = True
Else
Err.Clear
‘ Wenn keine active AutoCAD Instanz vorhanden ist, dann erzeugen ‘ wir eine neue Instanz.
Set acadApp = CreateObject("AutoCAD.Application")
If Err.Number = 0 Then
Result = True
Else
Result = False
MsgBox Err.Description
End If
End If
If Result Then
Set acadDoc = acadApp.ActiveDocument
acadApp.Visible = True
’ Hier wird das ProSteel Object initialisiert.
Set Obj = acadApp.GetInterfaceObject("PSCOMWRAPPER.Ks_ComApp lication")
If Not Obj Is Nothing Then
MsgBox "Found installed ProSteel with " & Obj.VersionString
MsgBox "Found Datapath = " & Obj.GetGlobalSettings.DataPath
End If
End If
End Sub
[/highlight]
Ich habe die Verweise für die Typenbibliotheken hinzugefügt, mein Code sieht bis jetzt so aus:
[highlight=vbnet]Imports Autodesk
Imports PSCOMWRAPPERLib
Public Class Form1
Dim Obj As Object
Dim acadApp As Object
Dim acadDoc As Object
Dim Result As Boolean
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
acadApp = New AutoCAD.Interop.AcadApplication
acadDoc = new acadApp. ...
End Sub
End Class
[/highlight]
Ich kann schon nicht das AcadDoc=Autocad Document öffnen ...
Hat jemand eine Idee und kann mir den VB6 Code in VB.NET übersetzen oder mir Tipps geben
Gruss Alex