Hallo,
ich schreibe grad ein kleines Programm das per COM auf eine andere Anwendung (CATIA) zugreift. Leider startet die CAD-Anwendung ziemlich langsam und auch das Laden von Modellen kann einige Zeit dauern. Es treten dabei mehrere Probleme auf:
Ich starte das externe Programm wie folgt:
Wenn ich im Anschluss versuche folgendes auszuführen
schlägt das natürlich Fehl, weil der Prozess noch nicht fertig geladen wurde.
Ich habe mich mit dem Problem vor einer Weile (damals noch mit Option Strict Off) schon einmal beschäftigt und konnte das Problem so lösen:
Mit Option Strict On kriege ich es aber nicht hin. Habt ihr eine schlaue Idee?
ich schreibe grad ein kleines Programm das per COM auf eine andere Anwendung (CATIA) zugreift. Leider startet die CAD-Anwendung ziemlich langsam und auch das Laden von Modellen kann einige Zeit dauern. Es treten dabei mehrere Probleme auf:
Ich starte das externe Programm wie folgt:
Wenn ich im Anschluss versuche folgendes auszuführen
schlägt das natürlich Fehl, weil der Prozess noch nicht fertig geladen wurde.
Ich habe mich mit dem Problem vor einer Weile (damals noch mit Option Strict Off) schon einmal beschäftigt und konnte das Problem so lösen:
VB.NET-Quellcode
- Dim psi As New ProcessStartInfo("C:\Program Files\CATIA\B21\win_b64\code\bin\CNEXT.exe", "-env CATIA.V5R21.B21 -direnv " & Chr(34) & "C:\Program Files\CATIA\CATEnv" & Chr(34) & " -nowindow ")
- Dim p As New Process
- p.StartInfo = psi
- p.Start()
- Do While GetObject(, "CATIA.Application") Is Nothing
- Loop
- CATIA = GetObject(, "CATIA.Application")
Mit Option Strict On kriege ich es aber nicht hin. Habt ihr eine schlaue Idee?