Autor
|
Thema: .vba in Catia einbinden (2023 mal gelesen)
|
LayKris Mitglied Student
Beiträge: 12 Registriert: 28.03.2012 @home: i5-750 @ 4x2,66GHz 4GB DDR3 Radeon HD5770 @mobile: Amd A8-3520 @ 4x2.5GHz 4GB DDR3 Radeon HD6740G2
|
erstellt am: 28. Mrz. 2012 10:33 <-- editieren / zitieren --> Unities abgeben:
Hallo Leute, bin neu hier, arbeite erst seit kurzer Zeit mit Makros und habe direkt mal eine Frage. Und zwar habe ich eine Eingabemaske mit Windows-Forms unter MS VB2010Express erstellt und möchte diese gern als Makro in CATIA nutzbar machen. Zwischen den Zeilen habe ich hier schon gelesen, dass es dafür wohl mehrere Möglichkeiten gibt, bin aber noch nicht so richtig schlau daraus geworden. Was ist eurer Meinung nach die einfachste/effektivste Möglichkeit, das zu tun? Quellcode kopieren und anpassen? Als .exe oder .dll kompilieren und mit Makro aufrufen? Und, am wichtigsten: wie mache ich das? Zur Verdeutlichung: ich möchte dem Benutzer hinterher die Möglichkeit geben, die berechneten Werte direkt an CATIA zu übergeben, also zum Beispiel als Durchmesser für eine Rib. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
LayKris Mitglied Student
Beiträge: 12 Registriert: 28.03.2012 @home: i5-750 @ 4x2,66GHz 4GB DDR3 Radeon HD5770 @mobile: Amd A8-3520 @ 4x2.5GHz 4GB DDR3 Radeon HD6740G2
|
erstellt am: 28. Mrz. 2012 15:53 <-- editieren / zitieren --> Unities abgeben:
Okay, anscheinend ist das ganze doch etwas zu allgemein formuliert. Ich bin mittlerweile soweit, dass ich ein Makro erstellt habe, das über ExecuteProcessus die .exe meiner Eingabemaske ausführt. Leider schaffe ich es nicht, einen Rückgabewert auszulesen. Habe schon mehrere Varianten durchprobiert, momentan versuche ich es folgendermaßen: Code:
Public Class Form1 Dim Ausgabe As Double Public ReadOnly Property ReturnCode() As Double Get Return Ausgabe End Get End Property ...
Der Variable "Ausgabe" wird im späteren Verlauf ein Wert zugewiesen, den ich von außerhalb der Klasse (mit dem übergeordneten Makro) auslesen möchte. Wie schaffe ich es, von extern auf den Inhalt von "ReturnCode" (oder auch gerne direkt auf "Ausgabe") zuzugreifen? Muß ich bei der Reihenfolge irgendwas beachten, damit auch wirklich der richtige Wert drinsteht? Mache ich irgendwas grundlegend falsch?Wäre für jede Hilfe dankbar! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
HoBLila Mitglied Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx
Beiträge: 1118 Registriert: 29.05.2008 DELL PRECISION T3500 Intel(R) Xeon(R) CPU W3540 @ 2.93GHz 12285 MB RAM NVIDIA Quadro FX 1800 Microsoft Windows 7 Enterprise Service Pack 1 CATIA V5 R19 SP09 HF69 VB6.5 CAA RADE CDC
|
erstellt am: 28. Mrz. 2012 16:43 <-- editieren / zitieren --> Unities abgeben: Nur für LayKris
Ich glaub das mit dem Übergeben von Werten ist nicht so trivial, das würde ich erst einmal lassen. Schreib lieber die Daten in ein TEMP-File, welches sich dann beide Programme teilen können. ------------------ Mit freundlichen Grüßen, Henry Schneider alias Lila Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren: Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen, die Natur versucht, immer bessere Idioten zu bauen Xing Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
LayKris Mitglied Student
Beiträge: 12 Registriert: 28.03.2012 @home: i5-750 @ 4x2,66GHz 4GB DDR3 Radeon HD5770 @mobile: Amd A8-3520 @ 4x2.5GHz 4GB DDR3 Radeon HD6740G2
|
erstellt am: 28. Mrz. 2012 20:19 <-- editieren / zitieren --> Unities abgeben:
|
LayKris Mitglied Student
Beiträge: 12 Registriert: 28.03.2012 @home: i5-750 @ 4x2,66GHz 4GB DDR3 Radeon HD5770 @mobile: Amd A8-3520 @ 4x2.5GHz 4GB DDR3 Radeon HD6740G2
|
erstellt am: 30. Mrz. 2012 13:15 <-- editieren / zitieren --> Unities abgeben:
Nur mal ein kleines Update hier: Habe es jetzt geschafft, über ExitCode einen Integer-Wert zu übergeben, der Aufruf der .exe erfolgt jetzt über Shell. Was mich ein wenig wundert ist, dass trotz vbNormalFocus die Eingabemaske im Hintergrund geöffnet wird, Catia bleibt also im Vordergrund und man muß die Eingabemaske über die Taskleiste in den Vordergrund holen. Liegt das an Catia oder mache ich was falsch? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RSchulz Moderator² Head of CAD, Content & Collaboration / IT-Manager
Beiträge: 5541 Registriert: 12.04.2007 @Work Lenovo P510 Xeon E5-1630v4 64GB DDR4 Quadro P2000 256GB PCIe SSD 512GB SSD SmarTeam V5-6 R2016 Sp04 CATIA V5-6 R2016 Sp05 E3.Series V2019 Altium Designer/Concord 19 Win 10 Pro x64
|
erstellt am: 03. Mai. 2012 16:45 <-- editieren / zitieren --> Unities abgeben: Nur für LayKris
|