Liebe Gemeinde,
ich möchte Euch um eine Einschätzung einer Lösung bitten:
Ziel ist eine Anwendung zu erstellen, die vollkommen eigenständig neben NX nebenherläuft (mit eigener GUI) und parallel zum interaktiven User auf NX zugreifen kann.
Bei meiner bisherigen Web-recherche bin ich seither immer als einzige Lösung auf den "Remote" Zugriff und das entsprechende Client-Server Beispiel verwiesen worden.
Daher nun mal eine Blöde Frage: Was spräche denn gegen einen eigenen Thread (analog wie es auch die Server-Apllikation aus o.g. Beispiel macht) der nebenher weiterläuft.
Etwa so:
Code:
Option Strict Off
Imports System
Imports NXOpen
Imports System.ThreadingModule Module1
Sub Main() 'hier wird der Thread gestarted, nach Verlassen der Sub hat der User wieder die Kontrolle
MsgBox("enter main")
Dim serverThread As New Thread(New ThreadStart(AddressOf mythread))
serverThread.Start()
MsgBox("exit main")
End Sub
Public Sub mythread() 'Hier laeuft nun parallel die eigene Anwendung
Dim f As New Form1
f.ShowDialog()
MsgBox("Ende paralleler Thread")
End Sub
Public Function GetUnloadOption(ByVal dummy As String) As Integer
GetUnloadOption = NXOpen.Session.LibraryUnloadOption.Explicitly 'wichtig, damit nach ende von main nicht alles wieder rausfliegt
End Function
End Module
Solange ich die .dll nicht wieder explizit entferne läuft mein Programm jetzt parallel zu NX. Wichtig ist nur, daß man die Gui (hier windows.forms) als modalen Dialog startet.
Was ich nun gerne von Euch wissen möchte: hat diese Vorgehensweise denn irgendeinen gravierenden Nachteil gegenüber Remote den ich so auf Anhieb nicht erkenne, oder warum machen das sonst alle über das Client-Server Prinzip?
Vielen Dank & viele Grüße,
r.
Was
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP