Ошибка доступа запрещена при запуске CANoe из Jenkins - PullRequest
1 голос
/ 04 апреля 2020

Я пытаюсь запустить автоматический c тест в CANoe от Jenkins. Я написал python скрипты, используя интерфейс CANoe COM. Он может нормально работать с командной строкой на локальном компьютере (настроенном как подчиненный Jenkins). Но когда я попытался вызвать сценарии python от Jenkins, я получил сообщение об ошибке, как показано ниже.

Traceback (most recent call last):
  File "automatic_test.py", line 165, in <module>
    app = CanoeSync()
  File "automatic_test.py", line 23, in __init__
    app = win32com.client.gencache.EnsureDispatch("CANoe.Application")
  File "C:\Python27\lib\site-packages\win32com\client\gencache.py", line 527, in EnsureDispatch
    disp = win32com.client.Dispatch(prog_id)
  File "C:\Python27\lib\site-packages\win32com\client\__init__.py", line 95, in Dispatch
    dispatch, userName = dynamic._GetGoodDispatchAndUserName(dispatch,userName,clsctx)
  File "C:\Python27\lib\site-packages\win32com\client\dynamic.py", line 114, in _GetGoodDispatchAndUserName
    return (_GetGoodDispatch(IDispatch, clsctx), userName)
  File "C:\Python27\lib\site-packages\win32com\client\dynamic.py", line 91, in _GetGoodDispatch
    IDispatch = pythoncom.CoCreateInstance(IDispatch, None, clsctx, pythoncom.IID_IDispatch)
pywintypes.com_error: (-2147024891, 'Access is denied.', None, None)

Другая информация: версия CANoe: 11.0SP2; Python версия: 2.7 ;. Учетная запись Jenkins также является учетной записью администратора подчиненного компьютера. Сценарии python нормально работают с учетной записью Jenkins локально.

Большое спасибо за любую помощь.

1 Ответ

0 голосов
/ 07 апреля 2020

Наконец, проблема была решена! Это вопрос разрешения. Попробуйте решение из кодов Win32com, не работающих на IIS , и не забудьте добавить свое имя пользователя Jenkins и установить полное разрешение.

...