У меня странная проблема при использовании CC.NET с psexec.
По сути, я дублирую сервер сборки, за исключением нескольких изменений имени на каждом. Оба являются виртуальными машинами. Первый сервер работает отлично, но почти идентичный проект на втором не завершает сборку CC.NET. Это происходит после перехода к той части конфигурации сервера CC.NET, которая запускает командный файл с помощью команды psexec.
Команда psexec проста и служит для запуска exe-файла, который представляет собой автоматический тестовый пример Ranorex. Тестовый пример должен выполняться в сеансе текущего пользователя (сеанс 1), чтобы компоненты пользовательского интерфейса были видны (это ограничение Ranorex).
Это команда:
psexec \\<server name> -i 1 cmd /c C:\Users\build\<path to exe>
Операционная система - Windows 7, Ranorex - 3.1, а CC.NET и Psexec являются последней версией на эту дату.
Вывод журнала сборки CC.NET выглядит следующим образом (это только последняя часть):
<buildresults>
<message level="Error">PsExec v1.98 - Execute processes remotely</message>
<message level="Error">Copyright (C) 2001-2010 Mark Russinovich</message>
<message level="Error">Sysinternals - www.sysinternals.com</message>
</buildresults>
Похоже, это вывод из psexec. Единственный способ получить этот журнал - заставить CC.NET прервать сборку в момент зависания. У кого-нибудь есть идеи относительно того, почему сборка зависает на части psexec?