Seite 1 von 1

Python und Vector CANoe

Verfasst: Montag 18. Februar 2019, 14:35
von PythonMan2019
Hallo

ich bin neu hier und auch relativ unerfahren mit Python. Ich möchte eigentlich nur mittels Python 2.5 unter Win10 (COM Interface) eine CANoe Konfiguration starten.
Das it mein Code:

Code: Alles auswählen

# Import modules/libraries --------------------------------

from win32com 		import client


_CANoe_Appl = client.dynamic.Dispatch ('CANoe.Application')
_Vers = _CANoe_Appl.Version
print('Loaded CANoe version ',_Vers.major, '.',_Vers.minor, '.',_Vers.Build, '...')


if 1:
    print("CANoe Start")

    _CANoe_Appl.Open ("C:\Users\Al\Desktop\CANoe\Test.cfg",0,0)
    sleep(5)

Folgendes Problem: Eine letzte gespeicherte CANoe Konfiguration startet zwar, aber dann wird diese ohne die angegebene Konfiguration zu starten wieder geschlossen. Es wird eine Default Konfig angelegt.

Fehlermeldung ist:

Code: Alles auswählen

>>> CANoe Start
Traceback (most recent call last):
  File "C:\Users\user\Documents\lib\site-packages\Pythonwin\pywin\framework\scriptutils.py", line 314, in RunScript
    exec codeObject in __main__.__dict__
  File "C:\Users\user\Desktop\Automation_CANoe\CANoe_Auto.py", line 61, in <module>
    _CANoe_Appl.Open ("C:\Users\user\Desktop\CANoe_3_5\TA1902_RestBUS_Sim.cfg",0,0)
  File "<COMObject CANoe.Application>", line 3, in Open
  ComClass "None"
     Error       : Unbekannter Fehler
     Description : 
 com_error: Ausnahmefehler aufgetreten.
Was mache ich falsch. Ich möchte die Open() Funktion werden um eine spezifische Konfiguration zu starten, mehr nicht. :)

Re: Python und Vector CANoe

Verfasst: Montag 18. Februar 2019, 16:44
von __deets__
Mal abgesehen davon, dass Python2.5 schon Zombie-Status hat und nicht mehr verwandt werden sollte, waere mein erster Verdacht die Frage, ob der Pfad wirklich existiert. Dabei muss dir bewusst sein, dass Python den \ zum Escape von Sonderzeichen benutzt. Also zB

print("\n")

gibt nicht \n aus, sondern *ZWEI* Leerzeilen. Wei \n eben fuer Leerzeile (linefeed, um genau zu sein) steht. \t steht fuer Tabulator, etc...

Darum muss man unter Windows immer aufpassen, und zB Pfade entweder mit \\ trennen (\\ ist dann \ im String), oder "raw-strings" verwendet.

Re: Python und Vector CANoe

Verfasst: Dienstag 19. Februar 2019, 12:12
von PythonMan2019
Hallo

danke, das hat geholfen. Lag an den Backslash.

Gruss

Re: Python und Vector CANoe

Verfasst: Dienstag 19. Februar 2019, 13:06
von __blackjack__
Wobei weder der Pfad im Quelltext noch der im Traceback ein Problem damit gehabt hätte. Zumindest unter Python 2. In Python 3 hätte es einen Syntaxfehler wegen '\u…'/'\U…' gegeben.