wixtool, установленный при сборке команды, получает light.exe System.UnauthorizedAccessException: доступ к пути - PullRequest
0 голосов
/ 28 августа 2018

У меня есть проект установщика, использующий Wixtoolset 3.8. Этот проект строился в течение 2-3 лет без проблем. В последние 6 месяцев эта ошибка возникает примерно в 70% случаев при сборке TFS Team Build. Учетная запись Build является администратором на компьютере.

UNHANDLED EXCEPTIONS FROM PROCESS 1832:
8/20/2018 7:37:54 AM
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.UnauthorizedAccessException: Access to the path 'C:\Users\svc-TFSBLD-ARGO\AppData\Local\Temp\ssvduzbf\bundle-attached.cab' is denied.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.File.SetAttributes(String path, FileAttributes fileAttributes)
at Microsoft.Tools.WindowsInstallerXml.Common.RecursiveFileAttributes(String path, FileAttributes fileAttribute, Boolean markAttribute)
at Microsoft.Tools.WindowsInstallerXml.Common.DeleteTempFiles(String path, IMessageHandler messageHandler)
at Microsoft.Tools.WindowsInstallerXml.WixBinder.DeleteTempFiles()
at Microsoft.Tools.WindowsInstallerXml.Binder.DeleteTempFiles()
at Microsoft.Tools.WindowsInstallerXml.Binder.Cleanup(Boolean tidy)
at Microsoft.Tools.WindowsInstallerXml.Tools.Light.Run(String[] args)
at Microsoft.Tools.WindowsInstallerXml.Tools.Light.Main(String[] args)
--- End of inner exception stack trace ---
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at Microsoft.Tools.WindowsInstallerXml.Build.Tasks.WixToolTask.ExecuteToolThread(Object parameters)
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart(Object obj)

1 Ответ

0 голосов
/ 30 августа 2018

На основании сообщения об ошибке должна быть проблема с авторизацией.

Проверьте ниже вещи:

  • Убедитесь, что у учетной записи службы сборки есть разрешение на доступ к дорожка. Добавьте учетную запись службы сборки в группу локальных администраторов на построить сервер.
  • Подтвердите файл C:\Users\svc-TFSBLD-ARGO\AppData\Local\Temp\ssvduzbf\bundle-attached.cab существует там.
  • Отключите любое антивирусное или антиспамовое программное обеспечение на сервере сборки. (McAfee: Real Time Scanning)
  • Ссылка на эту статью для устранения других проблем.

Вы также можете попробовать развертывание нового агента с правами администратора в качестве учетной записи службы агента построения, а затем проверить, работает ли это.

...