Autor
|
Thema: CATIA gezielt starten????? (2054 mal gelesen)
|
Timberwolve Mitglied
Beiträge: 233 Registriert: 21.07.2006
|
erstellt am: 10. Okt. 2006 11:21 <-- editieren / zitieren --> Unities abgeben:
Hi Community, ich hab eine Frage, hat jemand schonmal über VB(6) CATIA gestartet und zwar gezielt??? D.h. mit CreateObject sag ich ja einfach Set CATIA = CreateObject("CATIA.Application") Was ist aber wenn ich 2 verschieden Releasestände installiert habe?? was wird dann geöffnet??? Deswegen würd ich gern auswählenkönnen was ich starte, bzw. auch im Bezug auf ein bestimmtes Environment-File. Vielleicht hat da jemand schon erfahrung. Vielen Dank schonmal im vorraus
------------------ Wenn alle Stricke reissen, nehm ich ein Drahtseil Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mathias.bergundthal Mitglied informatiker
Beiträge: 153 Registriert: 03.08.2005 HP xw6000 - WXP Pro SP2 - CATIA V5 R16 SP9 - Visual Studio 2005
|
erstellt am: 10. Okt. 2006 11:49 <-- editieren / zitieren --> Unities abgeben: Nur für Timberwolve
Hallo Timberwolve, Es wird das CATIA gestartet welchen in der Registry aktiv ist. du kannst unter dem RegKey HKEY_CLASSES_ROOT\.CATPart\CATIA.Part\ShellNew nachschauen welcher Release aktiv ist. musst einfach den wert auslesen und ein bisschen trimmen bist du die info hast welche du brauchst. aber standard mässig wenn du nichts machst, nimmt es den momentan aktiven Release (wie wenn du auf eine datei doppelt klickst, kommt ja auch nicht das selbe je nach aktivierung) viel spass, mathias ------------------ In diesem Zeitalter der Massenkomunikation sind Verrücktheiten ansteckend. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Timberwolve Mitglied
Beiträge: 233 Registriert: 21.07.2006
|
erstellt am: 10. Okt. 2006 13:05 <-- editieren / zitieren --> Unities abgeben:
Naja mit der Registry hab ich dann aber wenn ich das richtig verstanden habe nichts gewonnen. Angenommen ich hab einmal Release 14 und 16 installiert. Zusätzlich habe ich für jede Release 2 Enivornments. Also R14_E1 + R14_E2 R16_E1 + R16_E2 Dies möchte ich gerne in so einer art startcenter selektieren und dann CATIA mit diesen Bezügen starten. Wenn möglich würde ich dann gerne den CATIA Fenstertitel so benennen wie ich selektiert habe also : CATIA V5 R16_E2 .... .... Das wäre super. Habs mit der Shell methode versucht, aber da komm ich nicht an die Fensterbenennung ran :-( ------------------ Wenn alle Stricke reissen, nehm ich ein Drahtseil Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mathias.bergundthal Mitglied informatiker
Beiträge: 153 Registriert: 03.08.2005 HP xw6000 - WXP Pro SP2 - CATIA V5 R16 SP9 - Visual Studio 2005
|
erstellt am: 10. Okt. 2006 13:40 <-- editieren / zitieren --> Unities abgeben: Nur für Timberwolve
okay... was du willst ist schon was komplexer.... wir haben so ein tool "StartCATIA", welches wir selber entwickelt haben... kann es leider nicht rausgeben. aber ich kann dir sagen das es nicht einfach ist. also die registry nützt dir genau um zu wissen ob du nun r14 laden musst oder r16. was meinst du mit environements? etwa die cat_setting? wenn ja. dies managen wir auch über unser tool, wir habe an die 15 cat_setting welche die user auswählen können.
aber all dies ist mit einer komplexen server/client struktur aufgebaut und mit unseren eingen entwicklungen... also dein problem ist etwas komplexer...
gruss, mathias
------------------ In diesem Zeitalter der Massenkomunikation sind Verrücktheiten ansteckend. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
noir333 Mitglied Ingenieur
Beiträge: 148 Registriert: 27.01.2004 Dell Precision 450 Dual Xeon, 2MB RAM, XP SP2, NX3 V5R17SP3
|
erstellt am: 10. Okt. 2006 18:23 <-- editieren / zitieren --> Unities abgeben: Nur für Timberwolve
Hallo Timberwolve, ich habe das gleiche Problem. An die Benennung des Fensters kommt man mit CATIA.Caption (Lesen und Schreiben), das ist nicht das Problem. Ich möchte aus einer vorhandenen Catia-Applikation auslesen mit welchem Release und welchem Environment gestartet wurde, damit ich die Applikation schließen und neu öffnen kann. Dabei ist das Environment nicht dasselbe wie die Catsettings!! Jeder Automobilhersteller hat z.B. sein eigenes Environment, wo bestimmte Tools usw. abgelegt sind. Ein typischer Aufruf von Catia sieht so aus: "D:\Programme\Dassault Systemes\B14\intel_a\code\bin\CATSTART.exe" -run "CNEXT.exe" -env CATIA.V5R14.B14 -direnv "D:\Dokumente und Einstellungen\All Users\Anwendungsdaten\DassaultSystemes\CATEnv" -nowindow An diese Angaben müsste man rankommen. Ich weiß nur noch nicht wie. Hat jemand eine Idee? ------------------ Bernd Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
noir333 Mitglied Ingenieur
Beiträge: 148 Registriert: 27.01.2004 Dell Precision 450 Dual Xeon, 2MB RAM, XP SP2, NX3 V5R17SP3
|
erstellt am: 10. Okt. 2006 18:43 <-- editieren / zitieren --> Unities abgeben: Nur für Timberwolve
Hallo Timberwolve, mit catia.systemconfiguration.Release und .Servicepack kann man den Release-Stand auslesen. Aber für das Environment habe ich noch nichts gefunden.... Suche weiter..... Man müsste wissen, wo das environment-directoty steht, dann kann man dort nach Konfigurationsdateien suchen..... ------------------ Bernd Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
noir333 Mitglied Ingenieur
Beiträge: 148 Registriert: 27.01.2004 Dell Precision 450 Dual Xeon, 2MB RAM, XP SP2, NX3 V5R17SP3
|
erstellt am: 10. Okt. 2006 20:34 <-- editieren / zitieren --> Unities abgeben: Nur für Timberwolve
|
Lusilnie Mitglied
Beiträge: 1486 Registriert: 13.07.2005
|
erstellt am: 10. Okt. 2006 23:59 <-- editieren / zitieren --> Unities abgeben: Nur für Timberwolve
Hallo allerseits, Zitat: Original erstellt von noir333: ... kleine Ergänzungmit CATIA.SystemService.Environ("CATReferenceSettingPath") kommt man an das ENV-directory....
-> kleine Anmerkung: Die Variable "CATReferenceSettingPath" gibt das Verzeichnis für die administrativen (globalen) CATSettings wieder, nicht zwangsläufig den Pfad, der hinter "-direnv" steht! @alle: Weiß einer, ob man den Inhalt von "-env" und "-direnv" nach dem Start von CATIA überhaupt noch bestimmen kann? mfg, Lusilnie
------------------
Alle Aussagen zu DassaultSystemes-Produkten sind sehr optimistisch, selbst diese!!! frei nach größeren Geistern Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mathias.bergundthal Mitglied informatiker
Beiträge: 153 Registriert: 03.08.2005 HP xw6000 - WXP Pro SP2 - CATIA V5 R16 SP9 - Visual Studio 2005
|
erstellt am: 11. Okt. 2006 08:39 <-- editieren / zitieren --> Unities abgeben: Nur für Timberwolve
hallo alle, ich habe da einen kleinen film von unserem start catia tool gemacht. wir managen in dem tool folgende sachen: - schnittstelle(n) starten (plm, ext catia module, etc...) - lizenz aktivierungen - catsettings (mit dem catenv natürlich) - und sonst noch administrative sachen film ist mit dvix codiert falls er nicht geht
grüsse, mathias ------------------ In diesem Zeitalter der Massenkomunikation sind Verrücktheiten ansteckend. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Timberwolve Mitglied
Beiträge: 233 Registriert: 21.07.2006
|
erstellt am: 11. Okt. 2006 11:27 <-- editieren / zitieren --> Unities abgeben:
Hallo nochmal, irgendwie hat sich das problem glaub ich etwas in den Sand verlaufen ;-) Also ich hab jetzt kein Problem mehr mit starten der verschiedenen Environments und Releases. Das einzige Problem das ich noch habe ist. CATIA wird über einen Shell Befehl gestartet, nur habe ich nun kein CATIA-Objekt. Ich komme also nicht an die Caption heran. Habs versucht über GetObject, das geht nur mit einer Do-While Schleife. mit der ich abwarte bis CATIA wirklich gestartet ist. Funktioniert auch soweit, Problem: Startet der Anwender ein zweites CATIA, so wird das erste existierende CATIA-Fenster umbenannt und nicht das soeben gestartete. Den einzigen Ansatz den ich mir vorstellen kann, ist das ich über die Task-ID des CATIA-Prozesses an das Objekt CATIA als Applikation ran komme. Hab da aber leider noch nichts gefunden :-( Vielleicht kenn jemand die Methode: Code:
Dim Task_Id as LongTask_Id = Shell(C:\PRG\DS........,vbnormalFocus_) 'Und jetzt sollte über die Task_ID das Objekt deklariert werden........ 'Nur wie??????????
------------------ Wenn alle Stricke reissen, nehm ich ein Drahtseil Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
noir333 Mitglied Ingenieur
Beiträge: 148 Registriert: 27.01.2004 Dell Precision 450 Dual Xeon, 2MB RAM, XP SP2, NX3 V5R17SP3
|
erstellt am: 11. Okt. 2006 20:07 <-- editieren / zitieren --> Unities abgeben: Nur für Timberwolve
Hallo Timberwolve, ich habe da so eine Idee: Mathias hat ja beschrieben, wie man das "registrierte" Enviroment aus der Registry holt. Das ist ja das, was bei CreateObject("Catia.Application") gestartet wird. Was hälst Du davon, die Umgebung, die Du starten willst zuerst in die Registry zu schreiben, und dann mit CreateObject starten. Dann hast die die neue Sitzung als Objekt. Evtl. musst Du die alte Registry dann wieder herstellen. Probiers mal... ------------------ Bernd Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
clausb Ehrenmitglied V.I.P. h.c.
Beiträge: 2914 Registriert: 20.12.2000
|
erstellt am: 11. Okt. 2006 20:25 <-- editieren / zitieren --> Unities abgeben: Nur für Timberwolve
Nur so eine Idee: Vielleicht schreibt CATIA ja auch versionsabhaengige PROGIDs in die Registry, nicht nur die versionunabhaengige PROGID "Catia.Application". Eine versionsabhaengige PROGID koennte zum Beispiel so aussehen: "Catia.Application.42". Wenn CATIA das tut (und fuer "ordentliche" COM-Server ist das generell eine gute Idee), kann man gezielt eine bestimmte Version starten (CreateObject("Catia.Application.42")). Ob das bei CATIA geht, kann ich mangels CATIA nicht verifizieren - ist also nur eine Anregung. Falls jemand nachforschen will: Die auf dem System installierten PROGIDs findet man in der Registry unter HKEY_CLASSES_ROOT. Claus
------------------ OneSpace Designer Modeling FAQ: http://www.clausbrod.de/Osdm/ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Timberwolve Mitglied
Beiträge: 233 Registriert: 21.07.2006
|
erstellt am: 12. Okt. 2006 08:52 <-- editieren / zitieren --> Unities abgeben:
Hallo, bin deinem Tip mal nachgegangen ===> Negativ Es gibt nur einen Eintrag in der Registry der heisst da CATIA.Application Und bei der CurrentVersion bzw. IndependendProgID CATIA.Application.1 Also auch hier Ende der Fahnenstange. Wie gesagt ich kann jetzt alles so starten wie ich will, ich habe nur noch das eine Problem. Und zwar nach dem Starten soll der Fenstername des gestarteten CATIA umbenannt werden. Mehr möcht ich doch gar nicht mehr. Mir fehlt dazu nur das Objekt CATIA selbst. Und das bekomm ich nirgends her ;-( Ich will doch nur was umbenennen!!!!!!!!! ------------------ Wenn alle Stricke reissen, nehm ich ein Drahtseil Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Steffen Hohmann Mitglied
Beiträge: 446 Registriert: 06.03.2002
|
erstellt am: 12. Okt. 2006 09:09 <-- editieren / zitieren --> Unities abgeben: Nur für Timberwolve
|
wumpel Mitglied
Beiträge: 108 Registriert: 20.10.2006 V5 R20SP7 Win 7 SP1 x64
|
erstellt am: 06. Nov. 2008 11:39 <-- editieren / zitieren --> Unities abgeben: Nur für Timberwolve
Hallo, der Beitrag ist zwar schon etwas älter, scheint aber noch nicht beantwortet zu sein. Mir fällt zu dem Thema das CATTemp Verzeichnis ein. Bei jedem CATIA-Start wird dort eine SessionInfoFile...blablabla abgelegt. Darin befinden sich u.a. sämtliche Parameter, die beim Starten verwendet werden. Darunter auch das -direnv und -env. Kannst Du da etwas mit anfangen? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
V5Playaz Mitglied Dipl.-Ing (BA)
Beiträge: 447 Registriert: 12.07.2005 DELL PRECISION 390 3,25 GB RAM WIN XP PRO SP2 CATIA V5 R16-19 Delmia V5 R19 VB6, VB2008 Adobe Acrobat 9 Pro Extended
|
erstellt am: 07. Nov. 2008 07:57 <-- editieren / zitieren --> Unities abgeben: Nur für Timberwolve
also öffnen kann man CATIA mit: Dim ID As Long ID = Shell(Chr(34) & "C:\Programme\Dassault Systemes\B16\intel_a\code\bin\CATSTART.exe" & Chr(34) & " -run ", vbHide) Man kann ja vorher über Windows ermitteln welche Ordner unter "Dassault Systemes" vorhanden sind (also für die einzelnen Releases) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |