1

Я вызова Dotfuscator задачи с помощью TFS сборки ака Team Build, взятую из -=Dotfuscator Task with Team Build =- и получаю следующее сообщение об ошибке:ошибки при Dotfuscator 4.5 задачи с TFS сборки (Team Build с TFS 2008)

Build FAILED. 


(AfterCompile target) -> 

error MSB4061: The "Dotfuscate" task could not be instantiated from the assembly "C:\Program Files\MSBuild\PreEmptive\Dotfuscator\4.0\PreEmptive.Dotfuscator.Tasks.dll". 

error MSB4061: System.InvalidOperationException: Showing a modal dialog box or form when the application is not running in UserInteractive mode is not a valid operation. Specify the ServiceNotification or DefaultDesktopOnly style to display a notification from a service application. 

error MSB4061: at System.Windows.Forms.Form.ShowDialog(IWin32Window owner) 

error MSB4061: at System.Windows.Forms.Form.ShowDialog() 
error MSB4061: at PreEmptive.Tasks.Dotfuscate.b() 
error MSB4061: at PreEmptive.Tasks.Dotfuscate.a() 
error MSB4061: at PreEmptive.Tasks.Dotfuscate..ctor() 
error MSB4060: The "Dotfuscate" task has been declared or used incorrectly, or failed during construction. Check the spelling of the task name and the assembly name. 

    0 Warning(s) 
    2 Error(s) 

Кодекса, имеющие отношение к Dotfuscator в Dotfuscator выглядит следующим образом:

<!--- 
    All Dotfuscation Stuff here... 
    --> 

    <PropertyGroup> 
    <ConfigPath>$(SolutionRoot)\..\$(BuildDefinitionPath)\BuildType\dotfuscator.xml</ConfigPath> 
    <!--<InputPath>$(OutDir)</InputPath>--> 
    <InputPath>\\Dev-6\TempBuild\Output\</InputPath> 
    </PropertyGroup> 

    <ItemGroup> 
    <InputAssembly Include="$(InputPath)\*.dll;$(InputPath)\*.exe" Exclude="$(InputPath)\*.vshost.exe"/> 
    </ItemGroup> 

    <Target Name="AfterCompile"> 

    <!--Perform obfuscation steps after assemblies are compiled.--> 

    <Dotfuscate InputAssemblies="@(InputAssembly)" Properties="$(DotfuscatorProperties)" ConfigPath="$(ConfigPath)"> 
     <Output TaskParameter="MappingFile" ItemName="DotfuscatorMappingFile"/> 
     <Output TaskParameter="ReportFiles" ItemName="DotfuscatorReportFiles"/> 
     <Output TaskParameter="OutputAssemblies" ItemName="DotfuscatedAssemblies"/> 
     <Output TaskParameter="SatelliteAssemblies" ItemName="DotfuscatedSatelliteAssemblies"/> 
     <Output TaskParameter="DebugSymbols" ItemName="DotfuscatedDebugSymbols"/> 
    </Dotfuscate> 
    </Target> 
    <!-- End of dotfuscation Stuf....--> 

Я использую следующую Dotfuscator задачу:

<Import Project="$(MSBuildExtensionsPath)\PreEmptive\Dotfuscator\4.0\PreEmptive.Dotfuscator.Targets" /> 

Строительная машина оснащена профессиональным точечным устройством. Он полностью функциональен и отлично работает при использовании вручную.

Просьба помочь в решении этой проблемы.

С уважением

ответ

2

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

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

Если вы не можете войти на сервер сборки с учетными данными службы сборки, то техническая поддержка PreEmptive может предоставить вам альтернативный метод для решения этой проблемы. Вы можете обратиться в службу поддержки по адресу [email protected] или подать заявку на поддержку непосредственно по адресу http://preemptive.com/support.

Смежные вопросы