2008-11-25 11 views
2

Dans .NET, existe-t-il un outil ou une autre méthode permettant de modifier le manifeste d'un assembly sans avoir à modifier AssemblyInfo et à reconstruire l'assembly?Modifier le manifeste d'un assembly sans le reconstruire

+1

Ce commentaire pourrait être clarifié en soulignant qu'il existe deux types de manifestes d'assemblage, le XML utilisé par 'mt.exe', et le manifeste MSIL qui est le plus facile à consulter utilise ildasm.exe – Cameron

Répondre

2

Vous pouvez utiliser un éditeur binaire pour modifier le manifeste. J'ai utilisé UltraEdit pour ouvrir des DLL et modifier le manifeste. Il s'agit d'une section en texte brut du fichier PE, généralement située près de la fin du fichier.

En outre, vous ne pouvez généralement pas utiliser cette méthode pour ajouter à l'assembly. Il est sûr pour changer des octets mais ne pas ajouter ou enlever. L'équivalent de la suppression des octets de l'assembly consiste à remplacer les caractères par le caractère espace, de sorte que le nombre total d'octets reste inchangé.

+1

mais rappelez-vous s'il s'agit d'un Assemblée signée, il devra être re-signé en quelque sorte, ce qui est hors de la portée de cette question. –

2

Vous pouvez utiliser MT.exe. Il est livré avec le SDK. Il y a une bonne explication de la façon de l'utiliser here.