<fxcop>

[This is preliminary documentation and subject to change.]

Analyzes managed code assemblies and reports information about the assemblies, such as possible design, localization, performance, and security improvements.

Note: this task relies on fxcopcmd.exe being in your PATH environment variable. You can download the latest FxCop from http://www.gotdotnet.com/team/fxcop/.

Parameters

Attribute Type Description Required
analysisReportFilename string Specifies the file name for the analysis report. False
applyOutXsl bool Applies the XSL transformation specified in /outXsl to the analysis report before saving the file. False
basedir directory The directory in which the command will be executed. False
consoleXsl string Specifies the XSL or XSLT file that contains a transformation to be applied to the analysis output before it is displayed in the console. False
directOutputToConsole bool Directs analysis output to the console or to the Output window in Visual Studio .NET. By default, the XSL file FxCopConsoleOutput.xsl is applied to the output before it is displayed. False
failOnAnalysisError bool Determines if the task should fail when analysis errors occur False
includeSummaryReport bool Includes a summary report with the informational messages returned by FxCopCmd. False
outputXslFilename string Specifies the XSL or XSLT file that is referenced by the xml-stylesheet processing instruction in the analysis report. False
platformDirectory string Specifies the location of the version of Mscorlib.dll that was used when building the target assemblies if this version is not installed on the computer running FxCopCmd. False
projectFile string Specifies the filename of FxCop project file. False
saveResults bool Saves the results of the analysis in the project file. False
typeList string Comma-separated list of type names to analyze. This option disables analysis of assemblies, namespaces, and resources; only the specified types and their members are included in the analysis. Use the wildcard character '*' at the end of the name to select multiple types. False
failonerror bool Determines if task failure stops the build, or is just reported. The default is true. False
if bool If true then the task will be executed; otherwise, skipped. The default is true. False
timeout int The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out. False
unless bool Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false. False
verbose bool Determines whether the task should report detailed build log messages. The default is false. False

Framework-configurable parameters

Attribute Type Description Required
exename string The name of the executable that should be used to launch the external program. False
managed ManagedExecution Specifies whether the external program should be treated as a managed application, possibly forcing it to be executed under the currently targeted version of the CLR. False
useruntimeengine bool Deprecated. Specifies whether the external program is a managed application which should be executed using a runtime engine, if configured. The default is false. False

Nested Elements:

<dependencyDirectories>

Specifies additional directories to search for assembly dependencies. FxCopCmd always searches the target assembly directory and the current working directory.

</dependencyDirectories>

<targets>

Specifies the target assembly to analyze.

</targets>

<imports>

Specifies the name of an analysis report or project file to import. Any messages in the imported file that are marked as excluded are not included in the analysis results.

</imports>

<rules>

Specifies the filename(s) of FxCop project file(s).

</rules>

<arg>

The command-line arguments for the external program.

Represents a command-line argument.

When passed to an external application, the argument will be quoted when appropriate. This does not apply to the line parameter, which is always passed as is.

Parameters

AttributeTypeDescriptionRequired
dirdirectory The value for a directory-based command-line argument; will be replaced with the absolute path of the directory. False
filefile The name of a file as a single command-line argument; will be replaced with the absolute filename of the file. False
ifbool Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true. False
linestring List of command-line arguments; will be passed to the executable as is. False
path<path> The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables. False
unlessbool Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false. False
valuestring A single command-line argument; can contain space characters. False

Nested Elements:

<path>

Sets a single command-line argument and treats it like a PATH - ensures the right separator for the local platform is used.

</path>

Examples

</arg>

Examples

Requirements

Assembly: NAnt.Contrib.Tasks (0.93.4764.0)