Autor
|
Thema: VB Fenster Programmierung (2928 mal gelesen)
|
walterwerner Mitglied
Beiträge: 21 Registriert: 30.10.2004
|
erstellt am: 01. Mai. 2006 22:07 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich habe Erfahrungen in C/C++ sowie in Assember API Programmierung. In VB besitze ich sogut wie keine Vorkenntnisse. Kann ich mit VB auch Dialogboxen oder Fenster (keine Msgboxen) über Makros in CATIA integrieren oder geht das nur über die CAA Schnittstelle? Gruß
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Lusilnie Mitglied
Beiträge: 1486 Registriert: 13.07.2005
|
erstellt am: 01. Mai. 2006 23:03 <-- editieren / zitieren --> Unities abgeben: Nur für walterwerner
Hallo walterwerner, mit VBA und CATIA unter Windows geht das natürlich! Falls Du aber die Scripte für CATIA auch oder nur unter anderen/(wirklichen ) Betriebssystemen laufen lassen willst, müßtest Du da auf andere Applikationen zur Erstellung von Dialogboxen/Fenstern ausweichen, z.B. die Scriptsprache von CDE unter AIX oder auf TCL. Es gab diesbezüglich vor kurzen auch einen Beitrag im Forum, allerdings finde ich ihn auf die Schnelle nicht! mfg, Lusilnie
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
walterwerner Mitglied
Beiträge: 21 Registriert: 30.10.2004
|
erstellt am: 02. Mai. 2006 17:52 <-- editieren / zitieren --> Unities abgeben:
Hallo, meine Makros sollen nur unter Windows lauffähig sein. Hätte da nochmal 2 Fragen: 1) Ist VB und VBA das gleiche. Macht es für mein Vorgaben Sinn sich VB anzueignen oder bin ich auf dem falschen Weg und muss VBA lernen? 2) Soweit ich bis rausbekommen habe, wird für VB das Microsoft Visual Studio (Visual Basic) benötigt, während VBA innerhalb von Excel programmiert wird. Ist das so richtig? Gruß
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Bobby_Joe2001 Mitglied Konstrukteur
Beiträge: 81 Registriert: 15.01.2006
|
erstellt am: 02. Mai. 2006 21:03 <-- editieren / zitieren --> Unities abgeben: Nur für walterwerner
Zitat: Original erstellt von walterwerner: Hallo,meine Makros sollen nur unter Windows lauffähig sein. Hätte da nochmal 2 Fragen: 1) Ist VB und VBA das gleiche. Macht es für mein Vorgaben Sinn sich VB anzueignen oder bin ich auf dem falschen Weg und muss VBA lernen? 2) Soweit ich bis rausbekommen habe, wird für VB das Microsoft Visual Studio (Visual Basic) benötigt, während VBA innerhalb von Excel programmiert wird. Ist das so richtig? Gruß
Hallo! 1. VB und VBA sind sehr ähnlich. Beides basiert auf Basic. Wenn du eins von beiden kannst wirds kaum Probleme bereiten auch des andere zu benutzen. 2. Glaub für Vb braucht man des Visual Studio. Wenn du allerdings in VB.NET Programmieren willst gibts denk ich den Compiler kostenlost. Außerdem gibts dann noch für VB.Net die Entwicklungsumgebung Visual Basic 2005. Des is denk ich auch ein Jahr lang kostenlos. Wenn du über Vb oder Vb.net gehst erhälst du halt ausführbare Dateien (.EXE). Bei VBA muss nichts kompiliert werden. Einfach Code ändern und starten ohne großen Aufwand. Korrigiert mich wenn ich was falsches schreib!! Glaub mit VBA is man bestens bedient. ------------------ Du musst die Leute einmal richtig ärgern, dann wirst du endlich ernst genommen. Konrad Adenauer Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tomtom1972 Mitglied dipl ing maschinenbau
Beiträge: 605 Registriert: 22.03.2005 NVidia Quadro K4000 Intel Xeon E5-1620, 64GB RAM Windows10 64bit R30 <= CATIA V5 > =R19
|
erstellt am: 03. Mai. 2006 06:59 <-- editieren / zitieren --> Unities abgeben: Nur für walterwerner
Hallo zusammen, einer der Haupt-Unterschiede zwischen VBA (Visual Basic For Applications) und z.B. VB6.0 (oder VB.Net) ist, das ein VBA Script ein Catia-Prozess ist und ein VB Script ein eigenständiger Prozess, d.h. er wird im Task seperat aufgelistet. Ein einfaches Bsp, das die Dassault/IBM-Leute immer in ihren APARs zur Erklärung des Unterschiedes eines Inside/Outside V5 Prozesses anführen ist folgendes (in englisch): Running a Script inside the V5 process and running a VB macro outside the V5 process (from Microsoft Visual Basic for example) is not the same thing and do not have then the same behavior: - when you run a Script inside the V5 process, we know exactly when the script starts and when the script is over - when you run VB macro outside the V5 process, we cannot know when the script is over. The outprocess mechanism is based on the Microsoft COM message mechanism : each VB method call is done via an event fired to the V5 application but once the V5 application has handled this event, it is not considering itself as being under macro running and it then keeps on doing its own stuff (like refreshing its display on idle, waiting for user interactions, ...). You can see this difference when the MsgBox is displayed : - when you run a Script inside the V5 process, the MsgBox is blocking the display of the V5 application - when you run VB macro outside the V5 process, the MsgBox is NOT blocking the display of the V5 application since this is 2 different processes with their own message loop. Der Riesen-Vorteil von VB6.0: Man kann auf Windows APIs zurückgreifen. Das geht mit VBA nicht. Ein Hinweis noch: den VBA Editor gibts auch unter V5. D.h man muss nicht in Excel programmieren. Gruss TomTom ------------------ tomtom1972 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Bobby_Joe2001 Mitglied Konstrukteur
Beiträge: 81 Registriert: 15.01.2006
|
erstellt am: 28. Mai. 2006 19:36 <-- editieren / zitieren --> Unities abgeben: Nur für walterwerner
Zitat: Original erstellt von tomtom1972: Der Riesen-Vorteil von VB6.0: Man kann auf Windows APIs zurückgreifen. Das geht mit VBA nicht.
Soviel ich weiß kann man auch mit VBA (nicht VBS) auf die Windows APIs zugreifen. Gruß Bobby ------------------ Du musst die Leute einmal richtig ärgern, dann wirst du endlich ernst genommen. Konrad Adenauer Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Holger_BW Mitglied CAx Support
Beiträge: 80 Registriert: 23.01.2004 CATIA V5R21SP6 Enovia V4 VPM Enovia V6R2015c Creo 2.0
|
erstellt am: 06. Jun. 2006 11:00 <-- editieren / zitieren --> Unities abgeben: Nur für walterwerner
Noch ein Unterschied zwischen VBA und VBS: bei mir laufen einige CATIA-Funktionen nicht unter VBA (besonders die im Measurement-Bereich) mit zum Teil obskuren Fehlermeldungen. Alle tips aus diesem Forum haben mir da auch nichts geholfen (z. B. Variablen als AnyObject zu deklarieren). Wenn ich das gleiche Script (mit den entsprechenden geringfügigen Anpassungen) als VBS-Programm laufen lasse, funktioniert es problemlos. Ich habe wegen der mühseligen Fehlersuche daher VBA aufgegeben und verwende es nur dann, wenn ich Eingabemasken brauche, weil ich nicht weiß, wie ich die in VBS hinbekomme (hat da vielleicht jemand einen Tip für mich?). Gruß, Holger
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Axel.Strasser Ehrenmitglied V.I.P. h.c. Selbstständig im Bereich PLM/CAx
Beiträge: 4107 Registriert: 12.03.2001
|
erstellt am: 06. Jun. 2006 11:55 <-- editieren / zitieren --> Unities abgeben: Nur für walterwerner
|
Bobby_Joe2001 Mitglied Konstrukteur
Beiträge: 81 Registriert: 15.01.2006
|
erstellt am: 06. Jun. 2006 19:18 <-- editieren / zitieren --> Unities abgeben: Nur für walterwerner
|
Tstone Mitglied Werkzeugkonstrukteur
Beiträge: 163 Registriert: 04.06.2003 Dell Precision 470 Intel Xeon CPU 3,00GHz 2GB Ram Microsoft Windows XP Catia V5 R18 SP6 VB2005
|
erstellt am: 07. Jun. 2006 12:21 <-- editieren / zitieren --> Unities abgeben: Nur für walterwerner
Hallo, wird wirklich mit R17 VB6 nicht mehr unterstützt, ich habe keine Informationen zu dem Thema auf den Dassault-Seiten gefunden. Wenn ja wo bekomme ich mehr infos. ------------------ Grüße TStone "Respektiere die Macht der Worte, wähle sie mit Bedacht!" Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Axel.Strasser Ehrenmitglied V.I.P. h.c. Selbstständig im Bereich PLM/CAx
Beiträge: 4107 Registriert: 12.03.2001
|
erstellt am: 08. Jun. 2006 13:10 <-- editieren / zitieren --> Unities abgeben: Nur für walterwerner
|
walterwerner Mitglied
Beiträge: 21 Registriert: 30.10.2004
|
erstellt am: 15. Sep. 2006 12:41 <-- editieren / zitieren --> Unities abgeben:
Hallo, Ich will nun auch endlich anfangen mit dem programmieren. Meine Programme/Makros sollen auf VB (Windows) aufbauen. Es wurde hier schon erwähnt das ab Release 17 nur noch VB.Net unterstützt wird. Selbst falls VB immernoch in R17 unterstützt wird, was würdet Ihr mir als Anfänger empfehlen. VB odre VB.Net? Für VB wurde ein Download Link für eine kostenlose Entwicklungsumgebung gepostet. Gibt es vergleichbare kostenlose Tools für VB.Net, bzw. was brauch ich dafür? Gruß walterwerner Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
walterwerner Mitglied
Beiträge: 21 Registriert: 30.10.2004
|
erstellt am: 15. Aug. 2008 16:48 <-- editieren / zitieren --> Unities abgeben:
|
denyo_1 Moderator Manager
Beiträge: 2506 Registriert: 10.08.2005 HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3
|
erstellt am: 16. Aug. 2008 09:30 <-- editieren / zitieren --> Unities abgeben: Nur für walterwerner
Hallo, die Frage ab wann nur noch VB.Net unterstützt wird würde mich auch interessieren. VB.Net hat halt ein riesen Problem. Man braucht immer die entsprechende VB.Net Version auf dem Rechnern auf denen das Script ausgeführt werden soll. Das ist für mich immer ein riesen Problem da man nicht unabgängig von Programmversionen programmieren kann. Von dem her ist VBA ein bisschen sinnvoller da man sich bei VBA darüber keine Gedanken machen muss ;-) ------------------ MFG Daniel Die KATJA ist halt doch nur ne zickige Französin 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: 16. Aug. 2008 10:56 <-- editieren / zitieren --> Unities abgeben: Nur für walterwerner
.NET hat noch ne ganze Menge mehr Nachteile. Z.B. die schlechte Verwendung der COM-DLL's die erst gewrappt werden müssen, was über zusätzliche DLL's geschehen muss, die mitgeliefert werden müssen... Ich bleibe somit bei VB6. Übrigens hast du in CATIA auche eine Art VB5-Entwicklungsumgebung mit Formularen und so. Dazu musst du ein CATVBA-Anlegen und kannst dann den CATIA-interen Makro-Editor benutzen, der auch eine nDebuger und so hat, ist fast so komfortabel wie die Visual Basic 98-Umgebung. ------------------ 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 |