Autor
|
Thema: Makro 32/64 bit (2937 mal gelesen)
|
leChefe Mitglied
Beiträge: 118 Registriert: 28.05.2010
|
erstellt am: 10. Dez. 2015 08:47 <-- editieren / zitieren --> Unities abgeben:
Guten Morgen zusammen, ich habe gerade ein Projekt bei einem bayrischem OEM und nutze die dort üblichen Makros zur Stücklistenerstellung. Diese sind jedoch alle für 32bit Systeme. Wenn ich Catia in den 32bit modus setze, stürzt dieses jedoch mit unserem allseits beliebten Click ok bei der Datenmenge ab. Im 64bit modus bekomme ich Kompilierungsfehler und das Makro geht gar nicht. Jetzt habe ich die Auskunft, der OEM habe keine 64bit Variante , ich habe keine Ahnung davon und unsere IT mag sich scheinbar auch nicht damit befassen. Ist irgendjemand schlauer diesbezüglich und hat irgendwelche Tips für mich? VG Kevin ------------------ Click OK to terminate Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joehz Moderator Freiberuflicher Konstrukteur
Beiträge: 1057 Registriert: 25.11.2006 Win7 Pro 64 + Ubuntu + Irix6.5.20 Dell Precision M6600 i7-2960XM 2.7GHz 16GB NVidia Quadro M5010 Catia V5R19 VB6Pro.SP6/VBA 6.5.1053
|
erstellt am: 10. Dez. 2015 09:29 <-- editieren / zitieren --> Unities abgeben: Nur für leChefe
|
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: 10. Dez. 2015 10:28 <-- editieren / zitieren --> Unities abgeben: Nur für leChefe
|
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: 10. Dez. 2015 10:39 <-- editieren / zitieren --> Unities abgeben: Nur für leChefe
Ich würde auch sagen, dass sich da die bereitstellende Firma und deren Entwickler mal auf den Hosenboden setzen müssen und die Makros geradeziehen. Das Problem hätte man sicherlich auch schon im Vorfeld vermeiden können, wenn man das Programm entsprechend für beide Bitlevel ausgelegt hätte. Dann hätte es nur kleine bis gar keine Anpassungen gegeben. Ich schätze mal, dass ihr da nicht drumherum kommen werdet etwas IT-Aufwand darin zu investieren. Ich vermute, dass die falschen APIs, veraltete Funktionen und/oder falsche Aufrufe drin sind. Und wenn es VBA's sind, dann sicher von Studenten geschrieben, welche einfach alle Referenzen eingebunden haben, weil das einfacher ist, als sich Gedanken zu machen. Fehlt dann eine Referenz zufällig auf dem Zielsystem, dann geht's nicht mehr. Im Falle der Referenz habt ihr aber Glück: Öffnet das VBA im VBA Editor, macht die Referenzen auf (Tools-->References) und deaktiviert alle, wo ein MISSING davor steht. Reden wir von demselben CATIA-Release und nur unterschiedlichen Bitleveln? Wie sieht der Kompilierungsfehler aus? Was steht in der Meldung, welche CodeZeile ist betroffen? Von welchem Typ sind die Makros? ------------------ 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 |
leChefe Mitglied
Beiträge: 118 Registriert: 28.05.2010
|
erstellt am: 10. Dez. 2015 11:01 <-- editieren / zitieren --> Unities abgeben:
Danke für die Rückmeldungen. Fehler in R24 lediglich verschiedene Bitversionen. @ Joe "CAT_VBAIsOutProc=1" in deiner Env ergänzen, dann startet es im 32bit Modus oder gauckelt es zu mindest vor, denn auf diese Art und weise starten zumindest mal die Makros. Was genau dahinter steckt, keine Ahnung. Makros liegen alle als vba vor. Ich muss mal in Erfahrung bringen, inwieweit die Makros öffentlich sind. Bei anderen OEMs sind diese ja teils im Zuliefererpaket und entsprechend zugänglich. Wo sehe ich denn meine VBA Version? Kompilierungsfehler: Der Code in diesem Projekt muss für die Verwendung auf 64-Bit-Systemen aktualisiert werden. Überarbeiten und aktualisieren Sie Declare-Anweisungen, und markieren Sie sie mit dem PrtSafe-Attribut. Gleich in den ersten Zeilen taucht ein paar mal "public declare" auf aber da wirds kryptisch für mich. ------------------ Click OK to terminate Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joehz Moderator Freiberuflicher Konstrukteur
Beiträge: 1057 Registriert: 25.11.2006 Win7 Pro 64 + Ubuntu + Irix6.5.20 Dell Precision M6600 i7-2960XM 2.7GHz 16GB NVidia Quadro M5010 Catia V5R19 VB6Pro.SP6/VBA 6.5.1053
|
erstellt am: 10. Dez. 2015 13:21 <-- editieren / zitieren --> Unities abgeben: Nur für leChefe
|
leChefe Mitglied
Beiträge: 118 Registriert: 28.05.2010
|
erstellt am: 10. Dez. 2015 13:48 <-- editieren / zitieren --> Unities abgeben:
hi joey, danke für die infos. hatte dann auch entdeckt, dass ich einen vba editor habe ^^ mein berührungspunkt mit makros beschränkt sich in der regel auf den klick auf run :P ich werde mal versuchen jemanden zu finden, der etwas mit deinem letzten link anfangen kann. vielen dank auch noch einmal an alle anderen. ------------------ Click OK to terminate Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joehz Moderator Freiberuflicher Konstrukteur
Beiträge: 1057 Registriert: 25.11.2006 Win7 Pro 64 + Ubuntu + Irix6.5.20 Dell Precision M6600 i7-2960XM 2.7GHz 16GB NVidia Quadro M5010 Catia V5R19 VB6Pro.SP6/VBA 6.5.1053
|
erstellt am: 10. Dez. 2015 14:11 <-- editieren / zitieren --> Unities abgeben: Nur für leChefe
Hi Chef, Zitat:
hi joey
Bitte nicht. Der einzige, der mich so anreden darf, ist mein Bruder. Der kennt mich aber auch schon länger. :-) Nachdem die Makros von 'einem OEM' sind, wär's eigentlich denen ihr Geschäft. Allgemein dazu: Alle Api-Deklarationen müssen geprüft/angepasst werden. Dasselbe gilt für die zugewiesenen Rückgabewerte. So als Vorabinfo. Tschau, Joe ------------------ Inoffizielle Catia Hilfeseite Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
leChefe Mitglied
Beiträge: 118 Registriert: 28.05.2010
|
erstellt am: 10. Dez. 2015 14:22 <-- editieren / zitieren --> Unities abgeben:
Hallo Joe mit ohne y, ;-) sorry war die Macht der Gewohnheit. Ja die Sache der Zuständigkeit ist das eine, der Zeitrahmen die Andere. Kennst ja die OEM Wartezeiten sicherlich :-) Ich suche mir dann mal einen Azubi mit zu viel Freizeit. ------------------ Click OK to terminate 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: 10. Dez. 2015 15:15 <-- editieren / zitieren --> Unities abgeben: Nur für leChefe
Stell doch einfach die Deklarationen hier ein. Das ist ja nichts geheimes, das sind Zugriffe auf DLL's im Windows, also Windows-Funktionen. Diese unterscheiden sich natürlich zwischen 32 und 64bit. Vielleicht haben wir für die entsprechenden Deklarationen schon 64bit-Lösungen ------------------ 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 |