web-dev-qa-db-fra.com

Comment enregistrer un fichier .NET DLL déposer dans le GAC?

J'ai créé un fichier .NET .DLL que je souhaite enregistrer dans le répertoire GAC .

J'ai utilisé cette commande dans Windows Server 2003 Invite de commande:

C:\"Path of dll"\>  gacutil /i dllname.dll

Il dit que le chemin n'est pas correct.

Dois-je utiliser cela dans une invite de commande .NET cmd? Si c'est le cas, je ne parviens pas à localiser l'invite .NET cmd.

70
Vineet

Vous pouvez le faire en utilisant l’outil gacutil . Dans sa forme la plus simple:

gacutil /i yourdll.dll

Vous trouvez l'invite de commandes Visual Studio dans le menu Démarrer sous Programmes -> Visual Studio -> Outils Visual Studio.

90
Fredrik Mörk

Tu auras besoin:

  • Nom fort de votre assembly (Visual Studio, Propriétés du projet, onglet Signature, signer l'assembly)
  • Modifiez vos événements de construction (Propriétés du projet, onglet Événements de construction, ligne de commande post-génération)
 cd C:\Programmes\Microsoft Visual Studio 8\SDK\v2.0\Bin 
 gacutil.exe/i "$ (TargetPath)"/f /nologo
 gacutil/l "$ (TargetName)" /nologo

Maintenant, chaque fois que vous construisez votre projet, il sera installé sur GAC.

31
Rubens Farias

Il suffit de faire glisser le fichier DLL dans le dossier C:\Windows\Assembly à l’aide de l’explorateur Windows.

17
Ando

Ces réponses ne vous disent pas que gacutil réside dans C:\WINDOWS\Microsoft.NET\Framework\v1.1 * En passant.

Je ne l'avais pas dans mon dossier v2.0. Mais j’ai essayé de glisser-déposer la DLL dans le dossier C:\WINDOWS\Assembly comme cela avait été suggéré ici plus tôt. C’était plus simple et efficace, tant qu’il s’agissait d’une bibliothèque .NET. J'ai également essayé une bibliothèque COM et cela a échoué avec une erreur indiquant qu'elle attendait un manifeste Assembly. Je sais que ce n’était pas la question ici, mais je pensais mentionner que si quelqu'un découvrait qu’il ne pouvait pas l’ajouter, c’était peut-être pour cette raison.

-À M

12
Tom

De Wikipedia :

gacutil.exe est l'utilitaire .NET utilisé avec GAC.

On peut vérifier la disponibilité d'un assemblage partagé dans GAC en utilisant la commande:

gacutil.exe /l "assemblyName"

On peut enregistrer une Assemblée partagée dans le GAC en utilisant la commande:

gacutil.exe /i "assemblyName"

Ou en déposant un fichier d'assemblage à l'emplacement suivant à l'aide de l'interface graphique:

%windir%\Assembly\

D'autres options pour cet utilitaire seront brièvement décrites si vous utilisez l'indicateur /?, à savoir:

gacutil.exe /?
10
tbischel
  • Exécutez l'invite de commande du développeur pour V2012 ou toute version installéedans votre système

  • gacutil/i pathofDll 

  • Entrer

Terminé!!!

4
BelgiumHorse

Essayez GACView si vous craignez les invites de commande.

Vous n'avez pas défini correctement PATH sous DOS.Vous devez indiquer le chemin d'accès où réside gacutil pour pouvoir l'utiliser sous DOS.

3
abmv

Comme ando l'a dit, glissez et déposez l'assembly dans le dossier C:\windows\Assembly. Ça marche.

3
user264138

Dans le cas où Windows 7, gacutil.exe (pour placer Assembly dans GAC) et sn.exe (pour garantir l'unicité de Assembly) réside dans C:\Program Files (x86)\Microsoft SDK\Windows\v7.0A\bin.

Ensuite, allez sur le chemin de gacutil comme indiqué ci-dessous, exécutez la commande ci-dessous après avoir remplacé le chemin de votre assemblage.

C:\Program Files (x86)\SDK Microsoft\Windows\v7.0A\bin> gacutil/i "remplacer par le chemin de votre assembly à placer dans le GAC"

1
Kailash Dhaker

À partir de l'onglet Publier, allez à l'application Fichiers, puis les fichiers inutiles excluent, puis ok. Construire des fichiers de projet. Et exécuter des projets.

1
Prakash Dhar

Les solutions ci-dessus ont l'air merveilleuses. Cependant, pour être simple, je suppose que tout ce dont vous avez besoin est de saisir le nom de l’Assemblée avec son chemin complet, comme suit:

gacutil -i C:\MyDlls\GacDeployedAssemblies\dllname.dll

Faire attention à C:\MyDlls\GacDeployedAssemblies

0
vamsee