Inputs Property
This parameter is required.
Inputs stores a list of assemblies to protect:
<Target Name = "Protect" AfterTargets="AfterCompile" BeforeTargets="BeforePublish">
<ItemGroup>
<Assemblies Include = "$(ProjectDir)$(IntermediateOutputPath)$(TargetFileName)" / >
</ItemGroup>
<ArmDot.Engine.MSBuildTasks.ObfuscateTask
Inputs = "@(Assemblies)"
ReferencePaths="@(_ResolveAssemblyReferenceResolvedFiles->'%(RootDir)%(Directory)')"
SkipAlreadyObfuscatedAssemblies="true"
/>
</Target>Also, Inputs can contain options for an assembly.
The following options are available:
KeyFile specifies the path to the file containing the key pair, which is used to generate a strong name. If specified, ArmDot signs the assembly after obfuscation using the specified file. Use this option if an assembly is a strong-named one. Obfuscation modifies an assembly making a strong name signature not valid. That is why signing is required:
<Target Name = "Protect" AfterTargets="AfterCompile" BeforeTargets="BeforePublish">
<ItemGroup>
<Assemblies
Include = "$(ProjectDir)$(IntermediateOutputPath)$(TargetFileName)"
KeyFile="key.snk"
/>
</ItemGroup>
<ArmDot.Engine.MSBuildTasks.ObfuscateTask
Inputs = "@(Assemblies)"
ReferencePaths="@(_ResolveAssemblyReferenceResolvedFiles->'%(RootDir)%(Directory)')"
SkipAlreadyObfuscatedAssemblies="true"
/>
</Target>CreatePDB instructs ArmDot whether to create a PDB file or not. The possible values are: true, or false.
Microsoft.Build.Framework.ITaskItem[] Inputs { get; set; }