Autor
|
Thema: Catstart per shell (3074 mal gelesen)
|
Raggus1 Mitglied NC-Programmierer
Beiträge: 182 Registriert: 28.03.2003 V4 4.22, V5R16 - V5R19SP6 32+64Bit XP, Unix
|
erstellt am: 20. Sep. 2007 15:58 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, ich habe ein Problem hinsichtlich Catiastart über einen Shellaufruf. Ziel sollte sein, dass ich die verschiedenen Catia-Versionen je nach bedarf über ein "Startcenter" starten kann. Dafür habe ich einfach den Aufruf so genutzt, wie er auch im Desktop-Icon der Version zu finden ist. Jetzt soll aber die jeweilige env-Datei aufs Netzt gelegt werden, so dass jeder User auf ein und die selbe Datei zugreift. Nun das eigentliche Problem: Beim Aufruf von v5r16 wird alles noch so gestartet wie es soll, die v5r17 Variante startet aber nicht.... bei meiner Fehlersuche bin ich jetzt so weit, dass ich sagen kann, dass v5r17 nur Starten, wenn folgender Aufruf gestartet wird. "C:\Programme\Dassault Systemes\B17\intel_a\code\bin\CATSTART.exe -run" hier wird die ENV von "C:\...\All Users\Anwendungsdaten\DassaultSystemes\CATEnv" geladen. Findet catstart.exe die *.txt dort nicht, wird nichts gestartet. Hat jemand eine Idee warum: a) es bei der einen Installation klappt und ich auch die env ins Netz legen kann b) wie ich catstart.exe den "Weg" zur ENV mitteilen kann, sobald er nicht im Installationspfad liegt? Wäre für jeden Tipp dankbar. vg 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 Früher war vieles gut, und das wäre es heute immer noch, wenn man die Finger davon gelassen hätte!
|
erstellt am: 20. Sep. 2007 16:06 <-- editieren / zitieren --> Unities abgeben: Nur für Raggus1
Ich nehme mal an Du meinst doch eine Windows Umgebung, obwohl Du von einer shell redest Du hast zwei Parameter die beim Staretn stimmen müssen: -env CatiaB16 Dies ist der Name der Env Datei und -direnv "C:\Documents and Settings\All Users\Application Data\DassaultSystemes\CATEnv" Dies ist der Pfad an dem die env Datei liegt Vielleicht hast Du da etwas falsch Ansonsten wenn der Inhalt der env Datei nicht stimmt, kann es auch sein dass V5 nicht startet. Axel Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Raggus1 Mitglied NC-Programmierer
Beiträge: 182 Registriert: 28.03.2003 V4 4.22, V5R16 - V5R19SP6 32+64Bit XP, Unix
|
erstellt am: 20. Sep. 2007 16:18 <-- editieren / zitieren --> Unities abgeben:
Hallo, na ja. Shell, da ich es über VB starte und ich es mit shell "C:\Programme\Dassault Systemes..." aufrufe. Hoffe nicht, dass es so verkehrt ist Eigentlich habe ich es so beachtet, wie du es schreibst. Hier mal die beiden Varianten Diese klappt nicht: Shell "C:\Programme\Dassault Systemes\B17\intel_a\code\bin\CATSTART.exe -run CNEXT.exe -env CATIA.V5R17.B17 -direnv C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\DassaultSystemes\CATENV -nowindow " (auch ohne CNEXT.exe nicht) Diese Variante klappt Shell "C:\Programme\Dassault Systemes\B16\intel_a\code\bin\CATSTART.exe Nur bei dieser kann ich den "Weg" zur ENV nicht bestimmen. Es wird nur die angezogen, die in der obige Variante steht. vg
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 Früher war vieles gut, und das wäre es heute immer noch, wenn man die Finger davon gelassen hätte!
|
erstellt am: 20. Sep. 2007 16:39 <-- editieren / zitieren --> Unities abgeben: Nur für Raggus1
Du musst "-run Cnext.exe" mit angeben. CATStart kann auch gebraucht werden um andere Sacehn im V5 Umfeld zu starten. Eigentlich sind die ganzen Startparameter sauber in der Hilfe beschrieben. Ansonsten solltest Du den Direnv Parameter noch in " schreiben und auch Dein CATSTART-befehl. da sie sonst nicht gefunden werden Mal ohne zu testen:
Code: """C:\Programme\Dassault Systemes\B17\intel_a\code\bin\CATSTART.exe"" -run CNEXT.exe -env CATIA.V5R17.B17 -direnv ""C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\DassaultSystemes\CATENV"" -nowindow"
Axel Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Joseph.Metzler Mitglied
Beiträge: 53 Registriert: 16.03.2004
|
erstellt am: 21. Sep. 2007 08:23 <-- editieren / zitieren --> Unities abgeben: Nur für Raggus1
Hallo raggus1, IMHO liegt das Problem im shell-command von VB6. Anscheinend werden die Parameter wie -run -direnv ignoriert. Das macht VB-Shell auch bei anderen Aufrufen, nicht nur bei catstart. Mir ist es bis dato nicht gelungen irgendwelche Parameter mit -xxx -yyy zu übergeben. Im Falle von CATIA setzte ich daher per VB alle notwendigen Environmentvariabeln selber, und starte dann CATIA mit CNEXT Ein andere Möglichkeit wäre folgendes: Mach eine CatiaV5R17Start.bat. Da rein schreibst Du dem Catststart-Befehl mit Batterie und Birne (alle notwendigen Parameter) Über VB rufst du dann nicht catstart auf, sondern startest mit shell die CatiaV5R17Start.bat. Hat den Nachteil das Du für jede CATIA-Start-Variante eine *.bat erstellen mußt. Hat aber den Vorteil, sollte sich irgendwas an den Start-Befehlen ändern (andere Env, anderes Verzeichniss) bleibt dein VB-Prog unverändert, du brauchst nur die *.bat zu ändern Joseph
[Diese Nachricht wurde von Joseph.Metzler am 21. Sep. 2007 editiert.] 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 Früher war vieles gut, und das wäre es heute immer noch, wenn man die Finger davon gelassen hätte!
|
erstellt am: 21. Sep. 2007 09:19 <-- editieren / zitieren --> Unities abgeben: Nur für Raggus1
Das liegt nur daran dass die Parameter nicht in Hochkommas stehen, Ihr könnt den befehl ohne Hochkommas auch nicht in einem Commandfenster absetzen oder durch eine bat Datei starten. Bei uns im VB schaut das so aus: Code: Shell(Chr(34) & "D:\Dassault Systemes\" & myCATIARelease & "\" & mySystem & "\code\bin\CATStart.exe" & Chr(34) & " -run " & Chr(34) & "CNEXT.exe" & Chr(34) & " -env CATIA.V5R" & myCATIANr.Remove(0, 1) & "." & myCATIARelease & " -direnv " & Chr(34) & myCATSettingProfileLocal & "\CATEnv" & Chr(34) & " " & Chr(34) & " -nowindow" & Chr(34))
Jetzt müssen halt noch die entsprechenden Variablen belegt werden Axel Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Raggus1 Mitglied NC-Programmierer
Beiträge: 182 Registriert: 28.03.2003 V4 4.22, V5R16 - V5R19SP6 32+64Bit XP, Unix
|
erstellt am: 21. Sep. 2007 10:15 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, ich kann nicht genau sagen warum, aber mit diesem Code klappt der Aufruf Shell "C:\Programme\Dassault Systemes\B17\intel_a\code\bin\CATSTART.exe -run CNEXT.exe -env CATIA.V5R17.B17 -direnv \\serv\arbeit\catia\env_xxx\B17\xxx -nowindow " Ich habe Gestern mit Unterstützung der Onlinehilfe bisschen getestet und dann klappte es. Abgesehen von der neuen Position der ENV, sehe ich keinen Unterschied zu der Variante, die nicht gestartet ist ....manchmal sitzt man aber auch zu nahe vor einem Berg um ihn zu sehen. Oder es lag wirklich an VB 6.0 Vielen Dank für eure hilfreichen Tipps.... vg Bernd 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 Früher war vieles gut, und das wäre es heute immer noch, wenn man die Finger davon gelassen hätte!
|
erstellt am: 21. Sep. 2007 10:26 <-- editieren / zitieren --> Unities abgeben: Nur für Raggus1
Du hast es noch nicht verstanden, es liegt nicht an VB sondern an Deinem Programmierstil . Versuch mal jetzt eine Verzeichnis mit einem Blank drin, dann geht es wieder nicht mehr. Sauber ist mit Hochkommas, alles andere ist Bastlerei !!! Axel Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Raggus1 Mitglied NC-Programmierer
Beiträge: 182 Registriert: 28.03.2003 V4 4.22, V5R16 - V5R19SP6 32+64Bit XP, Unix
|
erstellt am: 21. Sep. 2007 20:20 <-- editieren / zitieren --> Unities abgeben:
Hallo, du magst ja recht haben ...bin eben neu im VB unterwegs.... Soviel ich noch weiß, konnte man doch Verzeichnise den einen Blank haben doch in /.../ setzen? Du hast sicherlich recht, wenn man mehr Struktur in den Aufruf bringt. Aber wenn man neu am Werk ist, dann muss man seine Struktur erst einmal finden Du schreibst, dass Verzeichnisse mit Blank in einen Hochkomma gesetzt werden müssen ...der nachfolgende Code läuft aber??! Shell "C:\Programme\Dassault Systemes\B16\intel_a\code\bin\CATSTART.exe -run CNEXT.exe -env CATIA.V5R16.B16 -direnv C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\DassaultSystemes\CATEnv -nowindow" Kann es vielleicht sein, dass die erste Installation -wegen Registrie- eher für diesen Aufruf geeignet ist? Wie auch immer. Ich werde am Ball bleiben und mal die von dir vorgeschlagene Variante bei Gelegenheit testen. vg Bernd
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Lusilnie Mitglied
Beiträge: 1486 Registriert: 13.07.2005
|
erstellt am: 21. Sep. 2007 22:02 <-- editieren / zitieren --> Unities abgeben: Nur für Raggus1
Hallo Raggus1, ich denke mal, das der CODE deshalb funktioniert, weil die direnv-Variable hier auf den Standard-Pfad, also den, der in der Installation hinterlegt ist, zeigt. Sie muss also nicht ausgelesen werden (, was hier auch nicht geschieht!), um CATIA starten zu können. Du kannst diesen Start auch ohne direnv-Variable ausführen, ohne Probleme zu haben. Teste es einfach mal! Wenn es funktioniert, wirst Du sicher wieder Axel Recht geben, denn CATIA verhält sich so, wie er es beschreibt! 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 |