Hi all,
I am invoking dotfuscator task via TFS Build a.k.a Team Build , taken from -=Dotfuscator Task with Team Build =-and receiving the following error:
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)
THe code relevant to dotfuscator in dotfuscator is as follows:
<!---
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....-->
I am using the following dotfuscator task:
<Import Project="$(MSBuildExtensionsPath)\PreEmptive\Dotfuscator\4.0\PreEmptive.Dotfuscator.Targets" />
The build machine has dotfuscator professional installed. Its fully functional and works fine when used manually.
Kindly help in this problem.
Regards