Можно ли запустить Vector CANoe из командной строки и / или с помощью любого другого внешнего скрипта?
Запустите и запустите CANoe из командной строки
Ответы (6)
Да, можно запустить Vector CANoe из внешнего скрипта. Следующий код сценария VBS показывает различные возможности для запуска CANoe и реакции на события внутри CANoe.
' Creates and returns a reference to CANoe Application.
Set App = CreateObject("CANoe.Application")
Set Measurement = App.Measurement
Set Logging = App.Configuration.OnlineSetup.LoggingCollection(1)
Dim TestFunction, IsRunning
Wscript.ConnectObject Measurement, "Measurement_"
For Count = 1 To 5
Logging.FullName = "C:\CANWIN" & Count & ".ASC"
StartMeasurement()
MsgBox "Press [Ok] to start the next
Measurement...", vbSystemModal
Measurement.Stop
Next
MsgBox "Logging script done..."
While IsRunning
On Error Resume Next
TestFunction.Call(CDbl(Second(Time)))
Wscript.Sleep 1000
Wend
Wscript.DisconnectObject Measurement
Set Measurement = Nothing
Set App = Nothing
Sub Measurement_OnInit()
Set TestFunction =
App.CAPL.GetFunction("TestFunction")
End Sub
Sub Measurement_OnStart()
IsRunning = True
End Sub
Sub Measurement_OnStop()
IsRunning = False
End Sub
Sub StartMeasurement()
IsRunning = False
Measurement.Start
Count = 0
While Not IsRunning
Wscript.Sleep 100
Count = Count + 1
If Count = 10 Then
MsgBox "Failed to start measurement!"
Wscript.Quit
End If
Wend
End Sub
CANOE просто загружает файл конфигурации .cfg. Что касается Jenkins, я использую сценарий Visual Basic и использую этот загружаемый конкретный файл конфигурации.
В этом случае он обходит окно Я принимаю и другие окна и загружает желаемую конфигурацию, также используя тот же сценарий VB, который вы можете закрыть.
'ToStart CANoe_Start.vbs
Set App = CreateObject("CANoe.Application")
dim fso: set fso = CreateObject("Scripting.FileSystemObject")
dim CANoe_config
CANoe_config = fso.BuildPath(fso.GetAbsolutePathName("."), "<target.cfg>")
App.Measurement.Start()
После этого вы можете добавить операции в задания Jenkins; чтобы закрыть то же приложение:
'ToStop CANoe_Stop.vbs
Set App = CreateObject("CANoe.Application")
App.Quit()
Это сработало для меня. Вы можете вызвать командную строку vbs over.
В этом документе рассказывается, как управлять CANoe из C ++, C # и т. Д. Для этого можно использовать CANoe в качестве утилит COM-сервера. http://www.vector.com/portal/medien/cmc/application_notes/AN-AND-1-117_CANoe_CANalyzer_as_a_COM_Server.pdf
Это. Вам следует зайти в Help -> Content -> CANoe -> Overview.
Там будет вся необходимая информация о том, как использовать командную строку с CANoe и его модулями.
Для более сложных приложений CANoe реализован как COM-сервер, и с ним можно связываться с помощью этого интерфейса. Разделы помощи, встроенные в CANoe, помогут вам начать работу.
Можно ли запускать Vector CANoe из командной строки
В любом случае, да, это так. Тривиальный способ сделать это - открыть новый экземпляр командной строки (Ctrl + r, ввести «cmd», нажать «Return», чтобы запустить его) и указать полный путь к исполняемый файл CANoe. Например, на CANoe v.10.0, x64 это будет по умолчанию: C:\Program Files\Vector CANoe 10.0\Exec64
, но в вашей системе это может отличаться.
Более элегантным способом было бы добавить этот путь в ваш Путь к переменным среды Windows. Теперь вы можете просто открыть командную строку, ввести имя исполняемого файла и запустить его. Помните, для CANoe x64 это будет canoe64
Можно ли запустить Vector CANoe из командной строки и загрузить определенную конфигурацию?
да. Просто укажите путь к конфигурации в качестве аргумента вашего вызова, например
canoe64 "D:\Documents\SomeProject\myConfig.cfg"
Всплывающие окна обязательного регулирования отображаются в обоих сценариях.