Al.exe (Assembly Linker)Al.exe (Assembly Linker)

Assembly Linker génère un fichier doté d'un manifeste d'assembly provenant d'un ou de plusieurs fichiers qui sont soit des modules, soit des fichiers de ressources.The Assembly Linker generates a file that has an assembly manifest from one or more files that are either modules or resource files. Un module est un fichier IL (Intermediate Language) sans manifeste d'assembly.A module is an intermediate language (IL) file that does not have an assembly manifest.

Note

Dans Visual Studio 2008, les deux compilateurs C# et Visual Basic incorporent automatiquement un manifeste Win32 dans l'assembly.Starting with Visual Studio 2008, both the C# and Visual Basic compilers automatically embed a Win32 manifest into the assembly. Pour plus d’informations, consultez /win32manifest (Options du compilateur C#).For more information, see /win32manifest (C# Compiler Options).

Cet outil est installé automatiquement avec Visual Studio.This tool is automatically installed with Visual Studio. Pour exécuter l'outil, utilisez l'invite de commandes développeur (ou l'invite de commandes Visual Studio dans Windows 7).To run the tool, use the Developer Command Prompt (or the Visual Studio Command Prompt in Windows 7). Pour plus d'informations, consultez Invites de commandes.For more information, see Command Prompts.

À l'invite de commandes, tapez le texte suivant :At the command prompt, type the following:

SyntaxeSyntax

al sources options

ParamètresParameters

Vous pouvez spécifier une ou plusieurs des sources suivantes.You can specify one or more of the following sources.

SourceSource DescriptionDescription
file[,target]file[,target] Copie le contenu de file (un module) dans le nom de fichier spécifié par target.Copies the contents of file (a module) to the file name specified by target. Après la copie, Al.exe compile target dans un assembly.After copying, Al.exe compiles target into an assembly.
/embed[resource]: file[,name[,private]]/embed[resource]: file[,name[,private]] Incorpore la ressource spécifiée par file dans l’image qui contient le manifeste d’assembly ; Al.exe copie le contenu de file dans l’image exécutable portable (PE).Embeds the resource specified by file in the image that contains the assembly manifest; Al.exe copies the contents of file into the portable executable (PE) image.

Le paramètre name est un identificateur interne de la ressource.The name parameter is an internal identifier for the resource. Par défaut, les ressources sont publiques dans l'assembly (elles sont donc visibles aux autres assemblys).By default, resources are public in the assembly (visible to other assemblies). Si vous spécifiez private, la ressource n'est pas visible aux autres assemblys.Specifying private makes the resource not visible to other assemblies.

Si file est un fichier de ressources du .NET Framework créé par exemple par l’outil Resource File Generator (Resgen.exe) ou dans l’environnement de développement, il est possible d’y accéder avec des membres de System.Resources.If file is a .NET Framework resource file created, for example, by the Resource File Generator (Resgen.exe) or in the development environment, it can be accessed with members in the System.Resources. Pour plus d'informations, consultez ResourceManager.For more information, see ResourceManager. Pour toutes les autres ressources, utilisez les méthodes GetManifestResource* dans Assembly pour accéder à la ressource au moment de l'exécution.For all other resources, use the GetManifestResource* methods in the Assembly to access the resource at run time.

Si seuls les fichiers de ressources sont passés à Al.exe, le fichier de sortie est un assembly de ressources satellite.If only resource files are passed to Al.exe, the output file is a satellite resource assembly.
/link[resource]: file[,name[,target[,private]]]/link[resource]: file[,name[,target[,private]]] Lie un fichier de ressources à un assembly.Links a resource file to an assembly. La ressource spécifiée par file est intégrée à l'assembly ; le fichier n'est pas copié.The resource specified by file becomes part of the assembly; the file is not copied. Le paramètre file peut être dans n'importe quel format de fichier.The file parameter can be in any file format. Par exemple, vous pouvez spécifier une DLL native en tant que paramètre file.For example, you can specify a native DLL as the file parameter. La DLL native de l'assembly pourra ainsi être installée dans le Global Assembly Cache et atteinte à partir du code managé dans l'assembly.This will make the native DLL part of the assembly so that it can be installed into the global assembly cache and accessed from managed code in the assembly. Vous pouvez faire la même chose en utilisant l’option du compilateur /linkresource.You can also do this by using the /linkresource compiler option. Pour plus d’informations, consultez l’article /linkresource (C# Compiler Options) (/linkresource [Options du compilateur C#]).For more information, see /linkresource (C# Compiler Options).

Le paramètre name est un identificateur interne de la ressource.The name parameter is an internal identifier for the resource. Le paramètre target spécifie un chemin et un nom de fichier dans lequel Al.exe copie file.The target parameter specifies a path and file name into which Al.exe copies the file. Après la copie, Al.exe compile target dans un assembly.After copying, Al.exe compiles target into an assembly. Par défaut, les ressources sont publiques dans l'assembly (elles sont donc visibles aux autres assemblys).By default, resources are public in the assembly (visible to other assemblies). Si vous spécifiez private, la ressource n'est pas visible aux autres assemblys.Specifying private makes the resource not visible to other assemblies.

Si file est un fichier de ressources du .NET Framework créé, par exemple, par l'outil Resource File Generator (Resgen.exe) ou dans l'environnement de développement, il est possible d'y accéder à l'aide des membres de l'espace de noms System.Resources.If file is a .NET Framework resource file created, for example, by the Resource File Generator (Resgen.exe) or in the development environment, it can be accessed with members in the System.Resources namespace. Pour plus d'informations, consultez ResourceManager.For more information, see ResourceManager. Pour toutes les autres ressources, utilisez les méthodes GetManifestResource* dans la classe Assembly pour accéder à la ressource au moment de l'exécution.For all other resources, use the GetManifestResource * methods in the Assembly class to access the resource at run time.

Si seuls les fichiers de ressources sont passés à Al.exe, le fichier de sortie est un assembly de ressources satellite.If only resource files are passed to Al.exe, the output file is a satellite resource assembly.

Vous pouvez spécifier les options ci-dessous. L’option /out est obligatoire.You can specify the following options; you must specify /out.

OptionOption DescriptionDescription
/algid: id/algid: id Spécifie un algorithme de hachage de tous les fichiers dans un assembly multifichier, à l'exception du fichier qui contient le manifeste d'assembly.Specifies an algorithm to hash all files in a multifile assembly except the file that contains the assembly manifest. L'algorithme par défaut est CALG_SHA1.The default algorithm is CALG_SHA1. Pour connaître les autres algorithmes, consultez ALG_ID dans la documentation relative au Kit de développement logiciel (SDK) de la plate-forme.See ALG_ID in the Platform SDK documentation for other algorithms. Dans la première version du .NET Framework, seuls CALG_SHA1 et CALG_MD5 sont valides.For the first release of the .NET Framework, only CALG_SHA1 and CALG_MD5 are valid.

Les valeurs de hachage sont stockées dans la table de fichiers du manifeste d'assembly.The hash values are stored in the file table of the assembly manifest. Lors de l'installation et du chargement, les fichiers de l'assembly sont comparés par rapport à leurs hachages.At installation and load time, the assembly's files are checked against their hashes.

Vous pouvez également spécifier cette option comme attribut personnalisé (AssemblyAlgorithmIdAttribute) dans le code source de n'importe quel module.You can also specify this option as a custom attribute (AssemblyAlgorithmIdAttribute) in the source code for any module.
/base[address]: addr/base[address]: addr Spécifie l'adresse de chargement d'une DLL sur l'ordinateur de l'utilisateur au moment de l'exécution.Specifies the address at which a DLL will be loaded on the user's computer at run time. Le chargement des applications est plus rapide si vous spécifiez l'adresse de base des DLL au lieu de laisser le système d'exploitation déplacer les DLL dans l'espace de processus.Applications load faster if you specify the base address of the DLLs, instead of letting the operating system relocate the DLLs in the process space.
/bugreport: filename/bugreport: filename Crée un fichier (filename) qui contient des informations sur le signalement des bogues.Creates a file (filename) that contains information for reporting bugs.
/comp[any]: text/comp[any]: text Spécifie une chaîne pour le champ Société de l'assembly.Specifies a string for the Company field in the assembly. Placez la chaîne entre guillemets doubles (" ") si text contient un espace.Place the string in double quotation marks (" ") if text contains a space. Cette chaîne est un attribut personnalisé dans l'assembly et elle est disponible pour l'affichage avec réflexion.This string is a custom attribute on the assembly and is available for viewing with reflection.

Si vous ne spécifiez pas /win32res, text s’affiche dans l’Explorateur de fichiers comme la propriété Company du fichier.If you do not specify /win32res, text appears in File Explorer as the Company property for the file. Si vous spécifiez /win32res, les informations sur la société dans le fichier de ressources spécifié s’affichent comme la propriété Company dans l’Explorateur de fichiers.If you specify /win32res, the company information in the specified resource file appears as the Company property in File Explorer.

Si le texte est une chaîne vide (""), la ressource Company Win32 apparaît comme un espace unique.If text is an empty string (""), the Win32 Company resource appears as a single space.

Si vous spécifiez /win32res, /company n’a pas d’effet sur les informations de la ressource Win32.If you specify /win32res, /company will not affect the Win32 resource information.

Vous pouvez également spécifier cette option comme attribut personnalisé (AssemblyCompanyAttribute) dans le code source de n'importe quel module MSIL.You can also specify this option as a custom attribute (AssemblyCompanyAttribute) in the source code for any MSIL module.
/config[uration]: text/config[uration]: text Spécifie une chaîne pour le champ Configuration de l'assembly.Specifies a string for the Configuration field in the assembly. Placez la chaîne entre guillemets doubles (" ") si text contient un espace.Place the string in double quotation marks (" ") if text contains a space. Cette chaîne est un attribut personnalisé dans l'assembly et elle est disponible pour l'affichage avec réflexion.This string is a custom attribute on the assembly and is available for viewing with reflection.

Si le texte est une chaîne vide, la ressource Configuration Win32 apparaît comme un espace unique.If text is an empty string, the Win32 Configuration resource appears as a single space.

Vous pouvez également spécifier cette option comme attribut personnalisé (AssemblyConfigurationAttribute) dans le code source de n'importe quel module MSIL.You can also specify this option as a custom attribute (AssemblyConfigurationAttribute) in the source code for any MSIL module.
/copy[right]: text/copy[right]: text Spécifie une chaîne pour le champ Copyright de l'assembly.Specifies a string for the Copyright field in the assembly. Placez la chaîne entre guillemets doubles (" ") si text contient un espace.Place the string in double quotation marks (" ") if text contains a space. Cette chaîne est un attribut personnalisé dans l'assembly et elle est disponible pour l'affichage avec réflexion.This string is a custom attribute on the assembly and is available for viewing with reflection.

Si vous ne spécifiez pas /win32res, /copyright s’affiche dans l’Explorateur de fichiers comme la ressource Win32 Copyright.If you do not specify /win32res, /copyright appears in File Explorer as the Win32 Copyright resource.

Si le texte est une chaîne vide, la ressource Copyright Win32 apparaît comme un espace unique.If text is an empty string, the Win32 Copyright resource appears as a single space.

Si vous spécifiez /win32res, /copyright n’a pas d’effet sur les informations de la ressource Win32.If you specify /win32res, /copyright will not affect the Win32 resource information.

Vous pouvez également spécifier cette option comme attribut personnalisé (AssemblyCopyrightAttribute) dans le code source de n'importe quel module MSIL.You can also specify this option as a custom attribute (AssemblyCopyrightAttribute) in the source code for any MSIL module.
/c[ulture]: text/c[ulture]: text Spécifie la chaîne de culture à associer à l'assembly.Specifies the culture string to associate with the assembly. Les valeurs valides pour les cultures sont définies dans le document RFC (Internet Requests for Comments) 1766 intitulé "Tags for the Identification of Languages".Valid values for cultures are those defined by the Internet Requests for Comments (RFC) document 1766 titled "Tags for the Identification of Languages."

Placez la chaîne entre guillemets doubles (" ") si text contient un espace.Place the string in double quotation marks (" ") if text contains a space. Il n'y a pas de chaîne de culture par défaut.There is no default culture string. Cette chaîne est disponible pour l'affichage avec réflexion.This string is available for viewing with reflection.

Pour plus d'informations sur les chaînes text valides, consultez CultureInfo.For information about valid text strings, see the CultureInfo.

Vous pouvez également spécifier cette option comme attribut personnalisé (AssemblyCultureAttribute) dans le code source de n'importe quel module MSIL.You can also specify this option as a custom attribute (AssemblyCultureAttribute) in the source code for any MSIL module.
/delay[sign][+|-]/delay[sign][+|-] Spécifie si l'assembly sera complètement ou partiellement signé.Specifies whether the assembly will be fully or partially signed. Utilisez /delaysign- si vous souhaitez obtenir un assembly complètement signé.Use /delaysign- if you want a fully signed assembly. Utilisez /delaysign+ si vous souhaitez uniquement inclure la clé publique dans l’assembly.Use /delaysign+ if you only want to include the public key in the assembly.

Lorsque vous demandez un assembly totalement signé, Al.exe hache le fichier qui contient le manifeste (métadonnées de l’assembly) et signe ce hachage avec la clé privée.When you request a fully signed assembly, Al.exe hashes the file that contains the manifest (assembly metadata) and signs that hash with the private key. La signature numérique obtenue est stockée dans le fichier qui contient le manifeste.The resulting digital signature is stored in the file that contains the manifest. Pour un assembly avec signature différée, Al.exe ne calcule pas, ni ne stocke la signature, mais réserve de l'espace dans le fichier pour que la signature puisse être ajoutée par la suite.When an assembly is delay signed, Al.exe does not compute and store the signature, but just reserves space in the file so the signature can be added later.

/delaysign- est l’option par défaut.The default is /delaysign-.

L’option /delaysign est sans effet sauf si elle est utilisée avec l’option /keyfile ou /keyname.The /delaysign option has no effect unless used with /keyfile or /keyname.

Par exemple, l’utilisation de /delaysign+ permet à un testeur d’insérer l’assembly dans le cache global.For example, using /delaysign+ enables a tester to put the assembly in the global cache. Après le test, vous pouvez signer complètement l'assembly en y incluant la clé privée.After testing, you can fully sign the assembly by including the private key in the assembly.

Remarque : Avant d’utiliser l’outil Gacutil.exe (Global Assembly Cache Tool) pour mettre un assembly à signature différée dans le cache global, utilisez Sn.exe (Strong Name Tool) pour enregistrer l’assembly afin d’ignorer la vérification.Note: Before using the Gacutil.exe (Global Assembly Cache Tool) to put a delay-signed assembly into the global cache, use the Sn.exe (Strong Name Tool) to register the assembly for verification skipping. Par exemple, Sn.exe –Vr delaySignedAssembly.For example, Sn.exe –Vr delaySignedAssembly. Utilisez cela uniquement pour le développement.Use this only for development.

Vous pouvez également spécifier cette option comme attribut personnalisé (AssemblyDelaySignAttribute) dans le code source de n'importe quel module MSIL.You can also specify this option as a custom attribute (AssemblyDelaySignAttribute) in the source code for any MSIL module.
/descr[iption]: text/descr[iption]: text Spécifie une chaîne pour le champ Description de l'assembly.Specifies a string for the Description field in the assembly. Placez la chaîne entre guillemets doubles (" ") si text contient un espace.Place the string in double quotation marks (" ") if text contains a space. Cette chaîne est un attribut personnalisé dans l'assembly et elle est disponible pour l'affichage avec réflexion.This string is a custom attribute on the assembly and is available for viewing with reflection.

Si vous ne spécifiez pas /win32res, /description s’affiche dans l’Explorateur de fichiers comme la ressource Win32 Commentaires.If you do not specify /win32res, /description appears in File Explorer as the Win32 Comments resource.

Si le texte est une chaîne vide, la ressource Commentaires Win32 apparaît comme un espace unique.If text is an empty string, the Win32 Comments resource appears as a single space.

Si vous spécifiez /win32res, /description n’a pas d’effet sur les informations de la ressource Win32.If you specify /win32res, /description will not affect the Win32 resource information.

Vous pouvez également spécifier cette option comme attribut personnalisé (Description) dans le code source de n'importe quel module MSIL.You can also specify this option as a custom attribute (Description) in the source code for any MSIL module.
/e[vidence]: file/e[vidence]: file Incorpore file dans l'assembly avec le nom de ressource Security.Evidence.Embeds file in the assembly with the resource name of Security.Evidence.

Vous ne pouvez pas utiliser Security.Evidence pour les ressources standard.You cannot use Security.Evidence for regular resources.
/fileversion: version/fileversion: version Spécifie une chaîne pour le champ Version de fichier de l'assembly.Specifies a string for the File Version field in the assembly. Cette chaîne est un attribut personnalisé dans l'assembly et elle est disponible pour l'affichage avec réflexion.This string is a custom attribute on the assembly and is available for viewing with reflection.

Si vous ne spécifiez pas /win32res, /fileversion est utilisé comme la ressource Win32 Version de fichier.If you do not specify /win32res, /fileversion will be used as the Win32 File Version resource. Si vous ne spécifiez pas /fileversion, la ressource Win32 Version de fichier est remplie par la ressource Win32 Version de l’assembly.If you do not specify /fileversion, the Win32 File Version resource will be populated by the Win32 Assembly Version resource.

Si /win32res est spécifié, /fileversion n’a pas d’effet sur la ressource Win32.If /win32res is specified, /fileversion does not affect the Win32 resource.

Vous pouvez également spécifier cette option comme attribut personnalisé (AssemblyFileVersionAttribute) dans le code source de n'importe quel module MSIL.You can also specify this option as a custom attribute (AssemblyFileVersionAttribute) in the source code for any MSIL module.
/flags: flags/flags: flags Spécifie une valeur pour le champ Flags de l'assembly.Specifies a value for the Flags field in the assembly. Valeurs possibles pour flags :Possible values for flags:

0x00000x0000
L'assembly est compatible côte-à-côte.The assembly is side-by-side compatible.

0x00100x0010
L'assembly ne peut pas s'exécuter avec d'autres versions si celles-ci s'exécutent dans le même domaine d'application.The assembly cannot execute with other versions if they are executing in the same application domain.

0x00200x0020
L'assembly ne peut pas s'exécuter avec d'autres versions si elles s'exécutent dans le même processus.The assembly cannot execute with other versions if they are executing in the same process.

0x00300x0030
L'assembly ne peut pas s'exécuter avec d'autres versions si celles-ci s'exécutent sur le même ordinateur.The assembly cannot execute with other versions if they are executing on the same computer.

Vous pouvez également spécifier cette option comme attribut personnalisé (AssemblyFlagsAttribute) dans le code source de n'importe quel module MSIL.You can also specify this option as a custom attribute (AssemblyFlagsAttribute) in the source code for any MSIL module.
/fullpaths/fullpaths Force Al.exe à utiliser le chemin absolu de tout fichier signalé dans un message d’erreur.Causes Al.exe to use the absolute path for any files that are reported in an error message.
/help/help Affiche la syntaxe et les options de commande de l'outil.Displays command syntax and options for the tool.
/keyf[ile]: filename/keyf[ile]: filename Spécifie un fichier (filename) qui contient une paire de clés ou juste une clé publique pour signer un assembly.Specifies a file (filename) that contains a key pair or just a public key to sign an assembly. Le compilateur insère la clé publique dans le manifeste d'assembly, puis signe l'assembly final avec la clé privée.The compiler inserts the public key in the assembly manifest and then signs the final assembly with the private key. Consultez Strong Name Tool (Sn.exe) pour plus d’informations sur la génération des fichiers de clés et l’installation des paires de clés dans les conteneurs de clés.See the Strong Name Tool (Sn.exe) for information about generating key files and installing key pairs into key containers.

Si vous utilisez la signature différée, ce fichier aura en général la clé publique, mais pas la clé privée.If you are using delayed signing, this file will usually have the public key but not the private key.

Les informations de la clé publique (ou de la paire de clés) s'affichent dans le champ .publickey de l'assembly.The public key (of the key pair) information appears in the .publickey field of the assembly.

Vous pouvez également spécifier cette option comme attribut personnalisé (AssemblyKeyFileAttribute) dans le code source de n'importe quel module MSIL.You can also specify this option as a custom attribute (AssemblyKeyFileAttribute) in the source code for any MSIL module.

Si /keyfile et /keyname sont spécifiés (par option de ligne de commande ou par attribut personnalisé) dans la même compilation, Al.exe essaie d’abord d’utiliser le conteneur spécifié avec /keyname.If both /keyfile and /keyname are specified (either by command-line option or by custom attribute) in the same compilation, Al.exe will first try the container specified with /keyname. Si cette tentative réussit, l'assembly est signé avec les informations figurant dans le conteneur de clé.If that succeeds, the assembly is signed with the information in the key container. Si Al.exe ne trouve pas le conteneur de clés, il essaie d’utiliser le fichier spécifié avec /keyfile.If Al.exe does not find the key container, it will try the file specified with /keyfile. En cas de réussite, l’assembly est signé avec les informations du fichier de clé et les informations sur la clé sont installées dans le conteneur de clés (comme avec l’option -i de Sn.exe). L’option /keyname peut ainsi être utilisée à la compilation suivante.If that succeeds, the assembly is signed with the information in the key file and the key information will be installed in the key container (similar to the -i option in Sn.exe) so that on the next compilation, the /keyname option will be valid.
/keyn[ame]: text/keyn[ame]: text Spécifie un conteneur qui contient une paire de clés.Specifies a container that holds a key pair. Cela signe l'assembly (lui donne un nom fort) en insérant une clé publique dans le manifeste d'assembly.This will sign the assembly (give it a strong name) by inserting a public key into the assembly manifest. Al.exe signe ensuite l'assembly définitif à l'aide de la clé privée.Al.exe will then sign the final assembly with the private key.

Utilisez Sn.exe pour générer une paire de clés.Use Sn.exe to generate a key pair.

Les informations sur les clés apparaissent dans le champ .publickey de l'assembly.The key information appears in the .publickey field of the assembly.

Met la chaîne entre guillemets doubles (" ") si text contient un espace incorporé.Place text in double quotation marks (" ") if there is an embedded space.

Vous pouvez également spécifier cette option comme attribut personnalisé (AssemblyKeyNameAttribute) dans le code source de n'importe quel module MSIL.You can also specify this option as a custom attribute (AssemblyKeyNameAttribute) in the source code for any MSIL module.
/main: method/main: method Spécifie le nom complet (class.method) de la méthode à utiliser comme point d'entrée lors de la conversion d'un module en fichier exécutable.Specifies the fully qualified name (class.method) of the method to use as an entry point when converting a module to an executable file.
/nologo/nologo Supprime la bannière, ou le logo, affiché sur la ligne de commande lorsque vous appelez Al.exe.Suppresses the banner, or logo, displayed at the command line when you invoke Al.exe.
/out: filename/out: filename Spécifie le nom du fichier produit par Al.exe.Specifies the name of the file produced by Al.exe. C'est une option obligatoire.This is a required option.
/platform: text/platform: text Limite sur quelles plateformes ce code peut s'exécuter. Il doit s'agir des plateformes suivantes : x86, Itanium, x64, anycpu (par défaut) ou anycpu32bitpreferred.Limits which platform this code can run on; must be one of x86, Itanium, x64, anycpu (the default), or anycpu32bitpreferred.
/prod[uct]: text/prod[uct]: text Spécifie une chaîne pour le champ Produit de l'assembly.Specifies a string for the Product field in the assembly. Placez la chaîne entre guillemets doubles (" ") si text contient un espace.Place the string in double quotation marks (" ") if text contains a space. Cette chaîne est un attribut personnalisé dans l'assembly et elle est disponible pour l'affichage avec réflexion.This string is a custom attribute on the assembly and is available for viewing with reflection.

Si vous ne spécifiez pas /win32res, /product s’affiche dans l’Explorateur de fichiers comme la ressource Win32 Nom du produit.If you do not specify /win32res, /product appears in File Explorer as the Win32 Product Name resource.

Si le texte est une chaîne vide, la ressource Win32 Nom du produit apparaît comme un espace unique.If text is an empty string, the Win32 Product Name resource appears as a single space.

Si vous spécifiez /win32res, /product n’a pas d’effet sur les informations de la ressource Win32.If you specify /win32res, /product will not affect the Win32 resource information.

Vous pouvez également spécifier cette option comme attribut personnalisé (AssemblyProductAttribute) dans le code source de n'importe quel module MSIL.You can also specify this option as a custom attribute (AssemblyProductAttribute) in the source code for any MSIL module.
/productv[ersion]: text/productv[ersion]: text Spécifie une chaîne pour le champ Version du produit de l'assembly.Specifies a string for the Product Version field in the assembly. Placez la chaîne entre guillemets doubles (" ") si text contient un espace.Place the string in double quotation marks (" ") if text contains a space. Cette chaîne est un attribut personnalisé dans l'assembly et elle est disponible pour l'affichage avec réflexion.This string is a custom attribute on the assembly and is available for viewing with reflection.

Si vous ne spécifiez pas /win32res, /productversion est utilisé comme la ressource Win32 Version du produit.If you do not specify /win32res, /productversion will be used as the Win32 Product Version resource. Si vous ne spécifiez pas /productversion, la ressource Win32 Version du produit est remplie par la ressource Win32 Version de fichier.If you do not specify /productversion, the Win32 Product Version resource will be populated by the Win32 File Version resource.

Si vous spécifiez /win32res, /productversion n’a pas d’effet sur les informations de la ressource Win32.If you specify /win32res, /productversion will not affect the Win32 resource information.

Vous pouvez également spécifier cette option comme attribut personnalisé (AssemblyInformationalVersionAttribute) dans le code source de n'importe quel module MSIL.You can also specify this option as a custom attribute (AssemblyInformationalVersionAttribute) in the source code for any MSIL module.
/t[arget]: lib[rary] | exe | win[exe]/t[arget]: lib[rary] | exe | win[exe] Spécifie le format du fichier de sortie : lib[rary] (bibliothèque de codes), exe (application console) ou win[exe] (application Windows).Specifies the file format of the output file: lib[rary] (code library), exe (console application), or win[exe] (Windows-based application). La valeur par défaut est lib[rary].The default is lib[rary].
/template: filename/template: filename Spécifie l'assembly, filename, à partir duquel hériter de toutes les métadonnées d'assembly, à l'exception du champ Culture.Specifies the assembly, filename, from which to inherit all assembly metadata, except the culture field.

Un assembly créé avec /template est un assembly satellite.An assembly that you create with /template will be a satellite assembly.
/title: text/title: text Spécifie une chaîne pour le champ Titre de l'assembly.Specifies a string for the Title field in the assembly. Placez la chaîne entre guillemets doubles (" ") si text contient un espace.Place the string in double quotation marks (" ") if text contains a space. Cette chaîne est un attribut personnalisé dans l'assembly et elle est disponible pour l'affichage avec réflexion.This string is a custom attribute on the assembly and is available for viewing with reflection.

Si vous ne spécifiez pas /win32res, /title s’affiche dans l’Explorateur de fichiers comme la ressource Win32 Description, qui est utilisée par l’interpréteur de commandes comme nom convivial d’une application.If you do not specify /win32res, /title appears in File Explorer as the Win32 Description resource, which is used by the shell as the friendly name of an application. Il s'affiche également dans le sous-menu Ouvrir avec du menu contextuel pour un type de fichier pour lequel il existe plusieurs applications de support.It is also displayed on the Open With submenu of the shortcut menu for a file type for which there are multiple supporting applications.

Si le texte est une chaîne vide, la ressource Win32 Description apparaît comme un espace unique.If text is an empty string, the Win32 Description resource appears as a single space.

Si vous spécifiez /win32res, /title n’a pas d’effet sur les informations de la ressource Win32.If you specify /win32res, /title will not affect the Win32 resource information.

Vous pouvez également spécifier cette option comme attribut personnalisé (AssemblyTitleAttribute) dans le code source de n'importe quel module MSIL.You can also specify this option as a custom attribute (AssemblyTitleAttribute) in the source code for any MSIL module.
/trade[mark]: text/trade[mark]: text Spécifie une chaîne pour le champ Marque de l'assembly.Specifies a string for the Trademark field in the assembly. Placez la chaîne entre guillemets doubles (" ") si text contient un espace.Place the string in double quotation marks (" ") if text contains a space. Cette chaîne est un attribut personnalisé dans l'assembly et elle est disponible pour l'affichage avec réflexion.This string is a custom attribute on the assembly and is available for viewing with reflection.

Si vous ne spécifiez pas /win32res, /trademark s’affiche dans l’Explorateur de fichiers comme la ressource Win32 Marque.If you do not specify /win32res, /trademark appears in File Explorer as the Win32 Trademark resource.

Si le texte est une chaîne vide, la ressource Marque Win32 apparaît comme un espace unique.If text is an empty string, the Win32 Trademark resource appears as a single space.

Si vous spécifiez /win32res, /trademark n’a pas d’effet sur les informations de la ressource Win32.If you specify /win32res, /trademark will not affect the Win32 resource information.

Vous pouvez également spécifier cette option comme attribut personnalisé (AssemblyTrademarkAttribute) dans le code source de n'importe quel module MSIL.You can also specify this option as a custom attribute (AssemblyTrademarkAttribute) in the source code for any MSIL module.
/v[ersion]: version/v[ersion]: version Spécifie les informations de version concernant cet assembly.Specifies version information for this assembly. Le format de la chaîne de version est major.minor.build.revision. La valeur par défaut est 0.The format of the version string is major.minor.build.revision. The default value is 0.

Si vous spécifiez /version, vous devez également spécifier major.If you do specify /version, you must specify major. Si vous spécifiez major et minor, vous pouvez indiquer un astérisque (*) pour build.If you specify major and minor, you can specify an asterisk (*)for build. build est alors égal au nombre de jours écoulés depuis le 1er janvier 2000, heure locale, tandis que revision est égal au nombre de secondes écoulées depuis minuit, heure locale, divisé par 2.This causes build to be equal to the number of days since January 1, 2000, local time, and revision to be equal to the number of seconds since midnight of the current day, local time, divided by 2.

Si vous spécifiez major, minor et build, vous pouvez spécifier un astérisque pour revision.If you specify major, minor, and build, you can specify an asterisk for revision. revision est égal au nombre de secondes écoulées depuis minuit (heure locale), divisé par 2.This causes revision to be equal to the number of seconds since midnight of the current day, local time, divided by 2.

En résumé, les chaînes de version valides sont les suivantes :To summarize, the valid version strings are as follows:

XX

X.XX.X

X.X.*X.X.*

X.X.XX.X.X

X.X.X.*X.X.X.*

X.X.X.XX.X.X.X

où X est une constante abrégée non signée, à l'exception de 65 535 (0-65 534).where X is any unsigned short constant except 65535 (0-65534).

Si vous ne spécifiez pas /win32res, /version est utilisé comme la ressource Win32 Version de l’assembly.If you do not specify /win32res, /version will be used as the Win32 Assembly Version resource.

Si vous ne spécifiez pas /win32res, /productversion et /fileversion, /version est utilisé pour les ressources Win32 Version de l’assembly, Version de fichier et Version du produit.If you do not specify /win32res, /productversion, and /fileversion, /version will be used for the Assembly Version, File Version, and Product Version Win32 resources.

Si vous spécifiez /win32res, /version n’a pas d’effet sur les informations de la ressource Win32.If you specify /win32res, /version will not affect the Win32 resource information.

Vous pouvez également spécifier cette option comme attribut personnalisé (AssemblyVersionAttribute) dans le code source de n'importe quel module MSIL.You can also specify this option as a custom attribute (AssemblyVersionAttribute) in the source code for any MSIL module.
/win32icon: filename/win32icon: filename Insère un fichier .ico dans l'assembly.Inserts an .ico file in the assembly. Le fichier .ico donne au fichier de sortie l'aspect souhaité dans l'Explorateur de fichiers.The .ico file gives the output file the desired appearance in File Explorer.
/win32res: filename/win32res: filename Insère une ressource Win32 (fichier .res) dans le fichier de sortie.Inserts a Win32 resource (.res file) in the output file. Un fichier de ressources Win32 peut être créé à l'aide du compilateur de ressources.A Win32 resource file can be created by using the Resource Compiler. Le compilateur de ressources est appelé lorsque vous compilez un programme Visual C++ ; un fichier .res est alors créé à partir du fichier .rc.The Resource Compiler is invoked when you compile a Visual C++ program; a .res file is created from the .rc file.
@filename Spécifie un fichier réponse qui contient les commandes Al.exe.Specifies a response file that contains Al.exe commands.

Les commandes du fichier réponse peuvent apparaître chacune sur une ligne ou sur la même ligne, séparées par un ou plusieurs espaces.Commands in the response file can appear one per line or on the same line, separated by one or more spaces.
/?/? Affiche la syntaxe et les options de commande de l'outil.Displays command syntax and options for the tool.

NotesRemarks

Tous les compilateurs Visual Studio génèrent des assemblys.All Visual Studio compilers produce assemblies. Si, toutefois, vous disposez d'un ou de plusieurs modules (métadonnées sans manifeste), vous pouvez utiliser Al.exe pour créer un assembly avec le manifeste dans un fichier séparé.However, if you have one or more modules (metadata without a manifest), you can use Al.exe to create an assembly with the manifest in a separate file.

Pour installer des assemblys dans le cache, supprimer des assemblys du cache ou répertorier le contenu du cache, utilisez l’outil Global Assembly Cache Tool (Gacutil.exe).To install assemblies in the cache, remove assemblies from the cache, or list the contents of the cache, use the Global Assembly Cache Tool (Gacutil.exe).

Erreurs et avertissementsErrors and Warnings

Le tableau suivant liste les erreurs générées par Al.exe.The following table lists the errors generated by Al.exe.

ErrorError DescriptionDescription
al1001al1001 Erreur interne du compilateurInternal compiler error

Essayez de déterminer si Al.exe échoue en raison de l’impossibilité d’analyser une syntaxe inattendue.Try to determine whether Al.exe is failing because of its inability to parse unexpected syntax. Ensuite, contactez les services de support technique Microsoft.Then, contact Microsoft Product Support Services.
al1002al1002 Mémoire insuffisanteOut of memory

Al.exe a manqué de mémoire et s'est arrêté.Al.exe ran out of memory and stopped. Augmentez la quantité de mémoire disponible.Increase the amount of available memory.
al1003al1003 L'option du compilateur 'option' doit être suivie d'un argument.Compiler option 'option' must be followed by an argument

Al.exe attendait un argument à passer à une option de ligne de commande.Al.exe expected an argument to be passed to a command-line option. Par exemple, si vous spécifiez /algid:, vous devez passer un identificateur d’algorithme.For example, if you specify /algid:, you must pass an algorithm identifier.
al1004al1004 Erreur d'initialisation du Common Language Runtime inattendue — 'raison'Unexpected common language runtime initialization error — 'reason'

Al.exe a signalé une erreur dans l'installation de Visual Studio ou le Common Language Runtime pour la raison spécifiée.Al.exe reported an error with the installation of Visual Studio or the common language runtime for the specified reason.
al1005al1005 Fichier 'fichier' trop grand pour être ouvertFile 'file' too big to open

La taille des fichiers ouverts par Al.exe doit être inférieure à 4 gigaoctets (Go).All files opened by Al.exe must be smaller than 4 gigabytes (GB).
al1006al1006 Le fichier réponse 'fichier' était déjà inclusResponse file 'file' was already included

Le même fichier réponse a été spécifié (@file) plusieurs fois sur la ligne de commande.The same response file was specified (@file) more than once on the command line. Le fichier réponse peut être inclus une seule fois.The response file can only be included once.
al1007al1007 Erreur lors de l'ouverture du fichier réponse 'fichier' — 'raison'Error opening response file 'file' — 'reason'

Al.exe ne peut pas ouvrir le fichier réponse spécifié pour la raison spécifiée.Al.exe cannot open the specified response file for the specified reason.
al1008al1008 Spécification de fichier manquante pour l'option de ligne de commande 'option'Missing file specification for 'option' command-line option

Al.exe attendait un fichier à passer à une option de ligne de commande.Al.exe expected a file to be passed to a command-line option. Par exemple, si vous spécifiez l’option /out, vous devez spécifier un fichier.For example, if you specify the /out option, you must specify a file.
al1009al1009 Impossible d'ouvrir 'fichier' en écritureCan't open 'file' for writing

Al.exe n’a pas pu écrire dans un fichier, comme le fichier d’assembly de sortie.Al.exe was unable to write to a file, such as the output assembly file. Le disque est peut-être plein, le fichier peut être en lecture seule ou vous ne disposiez pas des autorisations d'accès au fichier.The disk might be full, the file might be read-only, or you might not have permissions to the file.
al1010al1010 Erreur de syntaxe de ligne de commande : ':texte' manquant pour l'option 'option'Command-line syntax error: Missing ':text' for 'option' option

Al.exe attendait un argument à passer à une option de ligne de commande.Al.exe expected an argument to be passed to a command-line option. Par exemple, si vous spécifiez l’option /title, vous devez passer une chaîne.For example, if you specify the /title option, you must pass a string.
al1011al1011 Le fichier 'fichier' est un fichier exécutable et ne peut pas être ouvert dans un fichier texteFile 'file' is an executable file and cannot be opened as a text file

Un fichier binaire a été spécifié alors qu'un fichier texte était attendu.A binary file was specified where a text file was expected. Par exemple, cette erreur se produit si un fichier binaire est passé sur la ligne de commande en tant que fichier réponse.For example, this error occurs if a binary file is passed on the command line as a response file.
al1012al1012 'valeur' n'est pas un paramètre valide pour l'option 'option''value' is not a valid setting for option 'option'

Une valeur inattendue a été passée à une option de ligne de commande.An unexpected value was passed to a command-line option. Par exemple, cette erreur se produit si vous spécifiez une valeur non valide pour l’option /target.For example, this error occurs if you specify an invalid value to the /target option.
al1013al1013 Option de ligne de commande non reconnue : 'option'Unrecognized command-line option: 'option'

Une option de ligne de commande non valide a été spécifiée.An invalid command-line option was specified.
al1014al1014 Erreur d'initialisation inattendue — 'raison'Unexpected initialization error — 'reason'

Al.exe a détecté un échec de l'initialisation COM.Al.exe detected a COM initialization failure. Cela peut être dû à un manque de mémoire, mais plus vraisemblablement aux fichiers DLL système.This might be caused by a lack of memory, but a more likely cause is the system DLL files. Vous devez voir une erreur similaire si vous exécutez un programme prenant en charge l'automatisation ou COM, comme Microsoft Visual Studio.You should see a similar error if you run any Automation-aware or COM-aware program, such as Microsoft Visual Studio.

Réinstallez le système d'exploitation.Reinstall the operating system.
al1015al1015 Fichier de messages 'alinkui.dll' introuvableUnable to find messages file 'alinkui.dll'

Al.exe nécessite Alinkui.dll.Al.exe requires Alinkui.dll. Assurez-vous que ce fichier se trouve dans votre chemin d'accès.Make sure that this file is on your path. Si nécessaire, copiez-le à partir du CD du produit.If necessary, copy it from the product CD.
al1016al1016 Aucun fichier d'entrée valide n'a été spécifié.No valid input files were specified

Al.exe nécessite un ou plusieurs fichiers d’entrée qui n’ont pas d’informations sur l’assembly.Al.exe requires one or more input files that do not have assembly information.
al1017al1017 Aucun nom de fichier cible n'a été spécifié.No target file name was specified

L’option obligatoire /out spécifiant le nom du fichier cible est manquante.The required /out option specifying the target file name was missing.
al1018al1018 Impossible de charger le fichier requis 'fichier'Required file 'file' could not be loaded

Certains fichiers DLL ne peuvent pas être chargés.Certain DLL files cannot be loaded. Réinstallez Visual Studio ou le Kit de développement logiciel WindowsWindows Software Development Kit (SDK).Reinstall Visual Studio or the Kit de développement logiciel WindowsWindows Software Development Kit (SDK).
AL1019al1019 Échec des métadonnées pendant la création de l'assembly — raisonMetadata failure while creating assembly — reason

La génération de l'assembly a été interrompue pour la raison spécifiée.Generation of the assembly was interrupted for the specified reason. Par exemple, cette erreur se produit si un fichier que vous spécifiez avec l’option /win32res est introuvable.For example, this error occurs if a file that you specify with the /win32res option is not found.
al1020al1020 L'assembly inclus 'fichier' est ignoréIgnoring included assembly 'file'

Un fichier d'entrée qui contenait un assembly a été spécifié.An input file that contained an assembly was specified. Les fichiers d’entrée Al.exe ne peuvent pas contenir d’assemblys.Al.exe input files cannot contain assemblies.
al1021al1021 'paramètre' : substitution du paramètre précédent'setting' : overriding previous setting

Pour un paramètre particulier, un module avait une valeur, sans doute assignée par des attributs personnalisés, qui a été remplacée par une valeur passée à l’aide d’une option de ligne de commande Al.exe.A module had a value for a particular setting, possibly assigned through custom attributes, which was overridden with a value passed using an Al.exe command-line option.
al1022al1022 Erreur lors de la lecture de la ressource incorporée 'fichier' — raisonError reading embedded resource 'file' — reason

Al.exe ne peut pas lire le fichier passé à l’option /embedresource pour la raison spécifiée.Al.exe cannot read the file passed to the /embedresource option for the specified reason.
al1023al1023 Erreur lors de l'incorporation de la ressource 'fichier' — raisonError embedding resource 'file' — reason

Le système d'exploitation ne peut pas incorporer le fichier de ressource dans l'assembly pour la raison spécifiée.The operating system cannot embed the resource file in the assembly for the specified reason.
al1025al1025 L'enregistrement ComType 'enregistrement' pointe vers un enregistrement de fichier non valide 'enregistrement'ComType record 'record' points to an invalid file record 'record'

Les métadonnées incluses dans le module d'entrée ne sont pas valides.Metadata in the input module is invalid. L'outil qui a produit le module doit être corrigé.The tool that produced the module must be fixed.
al1026al1026 La version spécifiée 'version' n'est pas valideThe version specified 'version' is invalid

Consultez les informations sur l’option /version pour connaître les formats valides.See information about the /version option for valid formats.
al1028al1028 Le fichier de clé 'fichier' ne comprend pas la clé privée nécessaire à la signatureKey file 'file' is missing the private key needed for signing

Un fichier de clé contenant uniquement la clé publique a été passé à l’option /keyfile.A key file that contains only the public key was passed to the /keyfile option. Utilisez l’outil Strong Name Tool (Sn.exe) pour générer un fichier qui a une clé publique et une clé privée, comme illustré dans la commande suivante.Use the Strong Name Tool (Sn.exe) to generate a file that has both a public and private key, as shown in the following command.

sn -k keypair.snk.
al1029al1029 Le nom de conteneur de clé 'container' n'existe pasThe key container name 'container' does not exist

La valeur passée à l’option /keyname n’est pas un conteneur valide.The value passed to the /keyname option is not a valid container. Utilisez l’outil Strong Name Tool (Sn.exe) pour créer un conteneur.Use the Strong Name Tool (Sn.exe) to create a container.
al1030al1030 Le service de chiffrement n'est pas installé correctement ou n'a pas de fournisseur de clé appropriéThe cryptographic service is not installed properly or does not have a suitable key provider

Vous devrez peut-être réinstaller le système d’exploitation ou installer l’utilitaire de chiffrement qui a été utilisé pour créer la clé.You might have to either reinstall the operating system or install some cryptographic utility that was that is used to create the key.
al1031al1031 Erreur lors de la lecture de l'icône 'fichier' — raisonError reading icon 'file' — reason

Al.exe ne peut pas lire le fichier passé à l’option /win32icon pour la raison spécifiéeAl.exe cannot read the file that was passed to the /win32icon option for the specified reason
al1032al1032 Erreur lors de la génération de ressources pour 'fichier' — raisonError generating resources for 'file' — reason

Al.exe ne peut pas créer un fichier en raison d’un espace disque insuffisant ou d’une autre erreur.Al.exe cannot create a file because of insufficient disk space or some other error. Cette erreur se produit quand vous spécifiez l’option /win32icon (qui génère un fichier .ico) ou ne spécifiez pas l’option /win32res (qui génère un fichier contenant des informations sur les ressources).This error occurs when you specify the /win32icon option (which generates an .ico file) or do not specify the /win32res option (which generates a file that has resource information).

Si vous ne pouvez pas résoudre le problème de génération de fichier, utilisez l’option /win32res, qui spécifie un fichier pouvant contenir des informations sur la version ou les bitmaps (icônes).If you cannot resolve the file generation problem, use /win32res, which specifies a file that can contain version or bitmap (icon) information.
al1033al1033 L'attribut personnalisé d'assembly 'attribut' a été spécifié plusieurs fois avec des valeurs différentesAssembly custom attribute 'attribute' was specified multiple times with different values

Des valeurs différentes ont été passées à deux occurrences du même attribut personnalisé dans des modules sources spécifiés en tant qu’entrées dans Al.exe.Different values were passed to two occurrences of the same custom attribute in source modules that are specified as input to Al.exe.
al1034al1034 Impossible de copier ou renommer l'assembly 'fichier'Assembly 'file' cannot be copied or renamed

Quand vous avez utilisé la syntaxe Al.exe permettant de spécifier un fichier d’entrée et de le copier, un conflit de noms s’est produit et a arrêté le compilateur.While using the Al.exe syntax that enables you to both specify an input file and copy it, a name conflict arose that stopped the compiler. Par exemple, cette erreur se produit si vous spécifiez input.dll,somename.dll /out:somename.dll.For example, this error occurs if you specify input.dll,somename.dll /out:somename.dll.
al1035al1035 Les bibliothèques ne peuvent pas avoir un point d'entréeLibraries cannot have an entry point

Vous ne pouvez pas spécifier l’option /target:lib (option par défaut) avec l’option /main.You cannot specify both the /target:lib option (the default) and the /main option.
al1036al1036 Point d'entrée requis pour les applications exécutablesEntry point required for executable applications

Quand vous utilisez l’option /target:exe ou /target:win, vous devez également spécifier l’option /main.When using the /target:exe or /target:win option, you must also specify the /main option.
al1037al1037 Impossible de trouver la méthode de point d'entrée 'main'Unable to find the entry point method 'main'

Al.exe n’a pas trouvé de méthode Main à l’emplacement spécifié par l’option /main.Al.exe cannot find a Main method at the location specified by the /main option.
al1039al1039 Échec de l'initialisation du gestionnaire du Global Assembly Cache — raisonInitialization of global assembly cache manager failed — reason

Réinstallez Visual Studio ou le Kit de développement logiciel WindowsWindows SDK.Reinstall Visual Studio or the Kit de développement logiciel WindowsWindows SDK.
al1040al1040 Impossible d'installer l'assembly dans le cache — raisonFailed to install assembly into cache — reason

Seuls les assemblys signés peuvent être installés dans le cache.Only signed assemblies can be installed into the cache. Consultez Global Assembly Cache pour plus d'informations.See Global Assembly Cache for more information.
al1041al1041 'méthode' : ne peut pas être le point d'entrée car la signature ou la visibilité est incorrecte, ou elle est générique'method': cannot be the entry point because the signature or visibility is incorrect, or it is generic

Une méthode a été spécifiée avec l’option /main, mais cette méthode n’est pas statique, ne retourne pas int ou void, était générique ou contient des arguments non valides.A method was specified with the /main option, but that method is not static, does not return int or void, was generic, or has invalid arguments.
al1042al1042 'exe' : les fichiers exe ne peuvent pas être des modules ajoutés'exe': EXEs cannot be added modules

Un fichier .exe qui n’a pas d’assembly a été spécifié comme fichier d’entrée dans Al.exe.An .exe file that does not have an assembly was specified as an input file to Al.exe. Al.exe accepte uniquement les fichiers dll sans assemblys en tant que fichiers d’entrée.Al.exe can only take dll files without assemblies as input files.
al1043al1043 Le nom de fichier manifeste 'nom' ne peut pas être le même que ceux des modulesManifest file name 'name' cannot be the same as any modules

Le nom spécifié avec l’option /out ne peut pas être identique à l’un des noms de fichier spécifiés en entrée dans Al.exe.The name specified with the /out option cannot be the same as any one of the file names that are specified as input to Al.exe.
al1044al1044 Erreur lors de la lecture du fichier de clé 'fichier' — raisonError reading key file 'file' — reason

Une erreur s’est produite lors de l’ouverture ou de la lecture d’un fichier spécifié avec /keyfile ou AssemblyKeyFileAttribute.An error occurred while opening or reading from a file specified with /keyfile or the AssemblyKeyFileAttribute.
al1045al1045 Le nom de fichier 'fichier' est trop long ou n'est pas valideFilename 'file' is too long or invalid

Un nom de fichier contenant plus de 260 caractères a été passé à Al.exe.A file name longer than 260 characters was passed to Al.exe. Choisissez un nom de fichier comportant moins de caractères ou un chemin plus court, ou bien renommez le fichier.Choose a file name with fewer characters or a shorter path, or rename the file.
al1046al1046 L'identificateur de ressource 'ID' a déjà été utilisé dans cet assemblyResource identifier 'ID' has already been used in this assembly

Deux ressources, incorporées ou liées, ont le même identificateur ou nom (le deuxième argument).Two resources, embedded or linked, have the same identifier or name (the second argument). Supprimez ou renommez l'une des ressources en conflit.Remove or rename one of the conflicting resources.
al1047al1047 Erreur lors de l'importation du fichier 'fichier' — raisonError importing file 'file' — reason

Impossible d'ouvrir un fichier de module pour la raison spécifiée.A module file cannot be opened for the specified reason.
al1048al1048 Erreur lors de l'importation du module 'module' de l'assembly 'assembly' — raisonError importing module 'module' of assembly 'assembly' — reason

Une erreur s'est produite lors de l'ouverture d'un fichier sans manifeste d'un assembly multifichier.An error occurred when opening a nonmanifest file of a multifile assembly. Cette erreur n'est pas émise directement par Al.exe., mais peut être passée par programmation à un processus utilisant Al.exe.This error is not emitted directly by Al.exe, but can be passed programmatically to a process that uses Al.exe.
al1049al1049 Impossible de générer automatiquement les numéros de version de build et de révision pour les dates antérieures au 1er janvier 2000Cannot auto-generate build and revision version numbers for dates before January 1, 2000

L'horloge système de votre ordinateur est définie à une date antérieure au 1er janvier 2000.The system clock on your computer is set to a date earlier than January 1, 2000.
al1050al1050 La fonctionnalité que vous utilisez 'ancienne fonctionnalité' n'est plus prise en charge ; utilisez plutôt 'nouvelle fonctionnalité'The feature you are using 'old feature' is no longer supported; please use 'new feature' instead

Une fonctionnalité qui était prise en charge par Al.exe est désormais obsolète.A feature previously supported by Al.exe is now obsolete. Utilisez plutôt la fonctionnalité recommandée.Use the recommended feature instead.
al1051al1051 Erreur lors de l'émission de l'attribut 'attribut' — 'raison'Error emitting 'attribute' attribute —'reason'

Un attribut personnalisé d’assembly n’a pas été traité par Al.exe pour la raison spécifiée.An assembly custom attribute was not processed by Al.exe for the specified reason.
al1052al1052 Le nom de fichier 'nom de fichier' n'est pas un assemblyFile 'filename' is not an assembly

Le fichier spécifié avec /template doit contenir des métadonnées d’assembly.The file specified with /template must contain assembly metadata. Cette erreur indique que le fichier spécifié par /template ne contenait pas d’assembly.This error indicates that the file specified by /template did not contain an assembly.
al1053al1053 La version 'version' spécifiée pour 'option' n'est pas au format normal 'major.minor.build.revision'The version 'version' specified for the 'option' is not in the normal 'major.minor.build.revision' format

Al.exe a détecté que des informations de version spécifiées avec les options /fileversion ou /productversion ont un format incorrect.Al.exe detected ill-formed version information specified with the /fileversion or /productversion options.
al1054al1054 La version 'version' spécifiée pour 'option' n'est pas au format normal 'major.minor.build.revision'The version 'version' specified for the 'option' is not in the normal 'major.minor.build.revision' format

Al.exe a détecté des informations de version incorrectes spécifiées avec SatelliteContractVersionAttribute.Al.exe detected ill-formed version information specified with the SatelliteContractVersionAttribute.
al1055al1055 L'assembly référencé 'nom de fichier' n'a pas de nom fortReferenced assembly 'filename' does not have a strong name

Cette erreur est émise quand vous générez un assembly avec un nom fort et référencez un assembly qui n'a pas de nom fort.This error is issued when you are building an assembly with a strong name and reference an assembly that does not have a strong name. Pour résoudre ce problème, vous devez regénérer votre assembly avec un nom fort ou joindre un nom fort à l’assembly en utilisant Sn.exe (consultez la documentation de Sn.exe).To fix this, you must either regenerate your assembly with a strong name, or attach a strong name to the assembly by using Sn.exe (see the documentation for Sn.exe).

Une occurrence courante de cette erreur se produit quand vous utilisez des objets COM au moyen d'assemblys de wrappers, par exemple quand vous ajoutez une référence à un module COM à un projet C# au moyen de l'IDE de Visual Studio.A common occurrence of this error is when you are using COM objects by way of wrapper assemblies, such as when you add a reference to a COM module to a C# project by way of the Visual Studio IDE. Pour éviter cette erreur, vous pouvez spécifier le fichier de clé de nom fort pour les assemblys de wrappers COM dans la propriété de projet "Fichier de clé de l'assembly de wrappers/Nom de clé d'assembly de wrappers"To avoid the error, you can specify the strong name key file for COM wrapper assemblies in the Project Property "Wrapper Assembly Key File/Name"

Si vous créez l'assembly de wrappers par le biais de tlbimp, consultez la documentation tlbimp pour plus d'informations sur l’attribution d’un nom fort à l'assembly de wrappers.If you are creating the wrapper assembly through tlbimp, see the tlbimp documentation for information about how to assign a strong name to the wrapper assembly.

Si un assembly porte un nom fort, il peut être installé dans le Global Assembly Cache.If an assembly has a strong name, it can be installed in the global assembly cache. Par conséquent, les assemblys référencés sont également placés dans le Global Assembly Cache.Consequently, referenced assemblies would also go into the global assembly cache. Seuls les assemblys portant des noms forts peuvent être placés dans le Global Assembly Cache.Only assemblies with strong names can go into the global assembly cache.
al1056al1056 L'assembly référencé 'nom de fichier' est un assembly satellite localiséReferenced assembly 'filename' is a localized satellite assembly

Un assembly créé à l'aide de l'attribut AssemblyCultureAttribute a été référencé lors de la création de l'assembly actuel.An assembly created by using the AssemblyCultureAttribute attribute was referenced in creating the current assembly. L'attribut AssemblyCultureAttribute indique que le fichier est un assembly satellite localisé et qu'il n'est pas approprié de référencer un assembly satellite.The AssemblyCultureAttribute attribute indicates the file is a localized satellite assembly and it is not appropriate to reference a satellite assembly. Vous devriez probablement référencer l'assembly parent principal à la place.You should probably reference the main parent assembly instead.
al1057al1057 Les exécutables ne peuvent pas être localisés, le champ Culture doit toujours être videExecutables cannot be localized, Culture should always be empty

Un assembly est créé avec /target:exe, mais /culture a été spécifié.An assembly is being created by using /target:exe but /culture was specified. Les assemblys inclus dans le fichier .exe ne peuvent pas contenir d’informations dans le champ Culture.Assemblies in the .exe cannot have information in the Culture field.
al1058al1058 'fichier' est un assembly et ne peut pas être référencé en tant que module'file' is an assembly and cannot be added as a module

Dans une compilation C++, un fichier contenant un assembly a été passé à /assemblymodule (option de l’éditeur de liens).In a C++ compilation, /assemblymodule (linker option) was passed a file that contained an assembly.
al1059al1059 Erreur inconnue (code)Unknown error (code)

Al.exe a reçu un code d’erreur inconnue code).Al.exe received an unknown error code (code).

Les solutions possibles incluent les suivantes :Possible solutions include the following:

Réinstallez Visual Studio.Reinstall Visual Studio.

Réinstallez le Kit de développement logiciel WindowsWindows SDK.Reinstall the Kit de développement logiciel WindowsWindows SDK.

Vérifiez s'il manque des fichiers.Check for missing files.

Vérifiez que l'espace disque est suffisant.Check for adequate disk space.

Vérifiez que la mémoire est adéquate.Check for adequate memory.

Arrêtez les autres processus susceptibles d'accéder aux fichiers.Stop other processes that might be accessing the files.

Redémarrez votre ordinateur.Reboot your computer.
al1060al1060 Échec de chiffrement pendant la création de hachages — raisonCryptographic failure while creating hashes — reason

Une erreur s'est produite lors de la création les hachages de fichier pour un assembly multifichier.An error occurred while creating the file hashes for a multifile assembly.
al1061al1061 Impossible de définir l'option 'option' car 'raison'Cannot set option 'option' because 'reason'

La valeur spécifiée pour cette option n'est pas valide pour la raison spécifiée.The value specified for this option is invalid for the specified reason.
al1062al1062 Le module 'module' a été spécifié plusieurs fois ; il sera inclus une seule foisModule 'module' was specified multiple times; it will only be included once

Cet avertissement est généré quand le même fichier source, d'entrée ou de module est spécifié plusieurs fois sur la ligne de commande.This warning is generated when the same source, input, or module file is specified multiple times on the command line. Assurez-vous de spécifier le nom de fichier une seule fois.Make sure that you specify the file name only once.
al1063al1063 Le type public 'type' est défini à plusieurs emplacements dans cet assembly : 'fichier1' et 'fichier2'Public type 'type' is defined in multiple locations in this assembly: 'file1' and 'file2'

Le même type a été trouvé dans plusieurs modules dans l'assembly.The same type was found in more than one module in the assembly. Une seule version de chaque type peut être présente dans un assembly.Only one version of each type may be present in an assembly.
al1064al1064 Impossible de spécifier plusieurs options /bugreport.Cannot specify multiple /bugreport options.

Une seule option /bugreport est autorisée.Only one /bugreport option is allowed.
al1065al1065 Le nom de fichier 'Nom de fichier' est trop long ou non valideFile name 'File Name' is too long or invalid

Le nom de fichier spécifié est plus long que le maximum autorisé.The specified file name is longer than the maximum allowed.
al1066al1066 Le caractère 'caractère' n'est pas autorisé sur la ligne de commande ou dans les fichiers réponseCharacter 'character' is not allowed on the command-line or in response files

Un caractère non valide a été trouvé sur la ligne de commande ou dans un fichier.An invalid character was found, either on the command line or in a file.
al1067al1067 'nom de fichier' est un fichier binaire et non un fichier texte'filename' is a binary file instead of a text file

Le fichier est au format binaire plutôt que texte.The file is in binary format instead of text.
al1068al1068 Le module 'nom du module' est déjà défini dans cet assembly.Module 'ModuleName' is already defined in this assembly. Chaque ressource et module liés doivent porter un nom de fichier unique.Each linked resource and module must have a unique file name.

Le module apparaît plusieurs fois dans cet assembly.The module occurs more than once in this assembly.
al1069al1069 Impossible de créer le nom de fichier court 'nom de fichier' quand un nom de fichier long portant le même nom de fichier court existe déjàCannot create short file name 'filename' when a long file name with the same short file name already exists

Le fichier actuel porte un nom qui est la version courte d'un nom de fichier qui existe déjà.The current file has a name that is the short version of a file name that already exists. Par exemple, la compilation de LongFileName.cs suivie de la recompilation du nom LongFi ~ 1.cs entraîne une erreur du compilateur semblable à celle-ci.For example, compiling LongFileName.cs and then recompiling with the name LongFi~1.cs will cause a compiler error similar to this. Si les fichiers de sortie du compilateur qui portent des noms longs ont été supprimés, alors que les fichiers de l'éditeur de liens analogues ont été conservés, cette erreur risque de se produire.If the compiler output files that have long names were deleted, but the analogous linker files remained, this error might occur.
al1070al1070 Un assembly agnostique ne peut pas avoir un module 'Nom du module' propre au processeurAgnostic assembly cannot have a processor specific module 'Module Name'

Si vous effectuez la génération avec l’option /platform:agnostic (ou que vous ne spécifiez pas /platform), une erreur se produit si vous essayez d’ajouter un module (avec /addmodule) qui n’est pas agnostique.If you are building using /platform:agnostic (or you don’t specify /platform), an error will be generated if you try to add a module (using /addmodule) that is not agnostic. Cela équivaut à essayer de lier un fichier obj i386 à un obj ia64.This is like trying to link an i386 obj file to an ia64 obj.

La source principale de modules non agnostiques est C++.The main source of non-agnostic modules is C++. Si vous utilisez /addmodule avec un module C++, vous pouvez être amené à modifier vos scripts de build pour spécifier le paramètre /platform approprié.If you are using /addmodule with a C++ module, you may have to modify your build scripts to specify the appropriate /platform setting.
al1072al1072 L'assembly et le module 'Nom du module' ne peuvent pas cibler des processeurs différentsAssembly and module 'Module Name' cannot target different processors

Vous ne pouvez pas lier un assembly et un module qui sont ciblés pour des processeurs différents, car le résultat doit s'exécuter sur un seul processeur.You cannot link an assembly and a module that are targeted for different processors, because the result has to run on a single processor.
al1073al1073 L'assembly référencé 'assembly' cible un processeur différentReferenced assembly 'assembly' targets a different processor

Vous ne pouvez pas lier des assemblys qui sont ciblés pour des processeurs différents, car le résultat doit s'exécuter sur un seul processeur.You cannot link assemblies that are targeted for different processors, because the result has to run on a single processor.
al1074al1074 Le nom de module 'Nom du module' stocké dans 'Nom du fichier' doit correspondre à son nom de fichierModule name 'Module Name' stored in 'File Name' must match its file name

Cette correspondance est requise pour l'éditeur de liens.This is required of the linker. Pour résoudre ce problème, faites correspondre les deux noms.To resolve this problem, make the two names match.
al1075al1075 Une signature différée a été demandée, mais aucune clé n'a été fournieDelay signing was requested, but no key was given

Pour un assembly avec signature différée, le compilateur ne calcule pas, ni ne stocke la signature, mais réserve de l'espace dans le fichier pour que la signature puisse être ajoutée par la suite.When an assembly is delay signed, the compiler does not compute and store the signature, but reserves space in the file so the signature can be added later.

Par exemple, l’utilisation de /delaysign+ permet à un testeur d’insérer l’assembly dans le cache global.For example, using /delaysign+ enables a tester to put the assembly in the global cache. Après un test, vous pouvez signer complètement l’assembly en ajoutant la clé privée à l’assembly à l’aide de l’utilitaire Assembly Linker.After testing, you can fully sign the assembly by adding the private key to the assembly by using the Assembly Linker utility.
al1076al1076 Le type 'type' est transféré à plusieurs assemblys : 'assembly' et 'assembly'.Type 'type' is forwarded to multiple assemblies: 'assembly' and 'assembly'.

Un type peut être transféré à un seul assembly.A type can only be forwarded to one assembly.
al1077al1077 Le type public 'type' est défini dans 'assembly' et transféré à 'assembly'.Public type 'type' is defined in 'assembly' and forwarded to 'assembly'.

Il existe un type public en double dans l'assembly généré.There is a duplicate public type in the assembly being generated. L'un d'eux est une définition de type valide et l'autre est un redirecteur de type.One is a valid type definition and the other is a type forwarder.

ExempleExample

La commande suivante crée un fichier exécutable t2a.exe avec un assembly dans le module t2.netmodule.The following command creates an executable file t2a.exe with an assembly from the t2.netmodule module. Le point d'entrée est la méthode Main dans MyClass.The entry point is the Main method in MyClass.

al t2.netmodule /target:exe /out:t2a.exe /main:MyClass.Main

Voir aussiSee also