This task lets you easily create interop assemblies. By default, it will not reimport if the underlying COM TypeLib or reference has not changed.
See the Microsoft.NET Framework SDK documentation for details.
Parameters
Attribute | Type | Description | Required |
---|---|---|---|
output | file |
Specifies the name of the output file.
|
True |
typelib | file |
Specifies the source type library that gets passed to the type
library importer.
|
True |
asmversion | string |
Specifies the version number of the assembly to produce.
|
False |
delaysign | bool |
Specifies whether the resulting assembly should be signed with a
strong name using delayed signing. The default is
false .
|
False |
keycontainer | string |
Specifies the key container in which the public/private key pair
should be found that should be used to sign the resulting assembly
with a strong name.
|
False |
keyfile | file |
Specifies the publisher's official public/private key pair with which
the resulting assembly should be signed with a strong name.
|
False |
namespace | string |
Specifies the namespace in which to produce the assembly.
|
False |
primary | bool |
Specifies whether a primary interop assembly should be produced for
the specified type library. The default is
false .
|
False |
publickey | file |
Specifies the file containing the public key to use to sign the
resulting assembly.
|
False |
strictref | bool |
Specifies whether a type library should not be imported if all
references within the current assembly or the reference assemblies
cannot be resolved. The default is
false .
|
False |
sysarray | bool |
Specifies whether to import a COM style SafeArray as a managed
System.Array class type. The default is false .
|
False |
transform | string |
Specifies how to transform the metadata [.NET 1.1 or higher].
|
False |
unsafe | bool |
Specifies whether interfaces should be produced without .NET Framework
security checks. The default is
false .
|
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
NAnt.Core.Task.IfDefined . 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
Nested elements
<arg>
The command-line arguments for the external program.
When passed to an external application, the argument will be quoted
when appropriate. This does not apply to the NAnt.Core.Types.Argument.Line
parameter, which is always passed as is.
Parameters
Nested elements
Examples
A single command-line argument containing a space character.
<arg value="-l -a" />
Two separate command-line arguments.
<arg line="-l -a" />
A single command-line argument with the value \dir;\dir2;\dir3
on DOS-based systems and /dir:/dir2:/dir3
on Unix-like systems.
<arg path="/dir;/dir2:\dir3" />
<arg>
<references>
Specifies the assembly files to use to resolve references to types defined outside the current type library.
</references>
Examples
Import LegacyCOM.dll
to DotNetAssembly.dll
.
<tlbimp typelib="LegacyCOM.dll" output="DotNetAssembly.dll" />
Generate an assembly named "Interop.MSVidCtlLib.dll" for the MS Video Control 1.0 Type Library, transforming any [out, retval] parameters of methods on dispinterfaces in the type library into return values in the managed library.
<tlbimp typelib="msvidctl.dll" output="Interop.MSVidCtlLib.dll" transform="dispret">
<references basedir="Interop">
<include name="Interop.TunerLib.dll" />
</references>
</tlbimp>
Requirements
- Assembly
- NAnt
.Win32 .dll - Namespace
-
NAnt
.Win32 .Tasks