superzero93
Messages postés7Date d'inscriptionvendredi 28 mars 2008StatutMembreDernière intervention 7 juin 2009
-
31 mars 2008 à 21:26
superzero93
Messages postés7Date d'inscriptionvendredi 28 mars 2008StatutMembreDernière intervention 7 juin 2009
-
3 avril 2008 à 14:33
Bonsoir à vous,
Je suis entrain de coder en PowerShell, qui repose sur du C# pour faire des scripts d'adminsitration
Mais je suis bloqué, je sais plus quoi faire, il y a un problème de noms forts apparemment -_-
Ma question est, comment faire pour charger dans l'assembly cette .dll ?
Miltiades
Messages postés233Date d'inscriptionvendredi 21 mars 2003StatutMembreDernière intervention25 octobre 2010 2 avril 2008 à 11:12
c'est pourtant pas compliqué,
le system de nom fort, est un system de signature, afin d'identifier le createur d'une DLL
une signature se fait en deux etapes,
1) tu crées ton fichier de clé (ton premier tuto), et tu garde le fichier .snk généré
2) tu signes ton/tes assemblies avec cette clé (ton second tuto)
NB: la signature par nom fort peut etre faite lors de la compilation de la dll dans les propriétés du projet
apres relecture de ton premier post, je tiens a te preciser une chose,
tu ne peux installer dans le GAC que des dll en dotnet!
superzero93
Messages postés7Date d'inscriptionvendredi 28 mars 2008StatutMembreDernière intervention 7 juin 2009 2 avril 2008 à 11:23
Merci de ta réponse :)
La .dll en question s'agit de Novell.Directory.Ldap.dll
Justement dans le second tuto je suis bloqué ici :
al /out:MyAssembly.dll MyModule.netmodule /keyfile:sgKey.snk
Je n'ai pas de fichier .netmodule, où le trouver ?
Dans le troisième tuto je suis également bloqué, dans cette étape :
csc /keyfile:MyProject.keys Program.cs
J'obtiens ceci comme résultat sous le Shell de Visual Studio 2005 :
Microsoft (R) Visual C# 2005 Compiler version 7.10.6310.4
for Microsoft (R) Windows (R) 2005 Framework version 2.0.50727
Copyright (C) Microsoft Corporation 2001-2005. All rights reserved.
Miltiades
Messages postés233Date d'inscriptionvendredi 21 mars 2003StatutMembreDernière intervention25 octobre 2010 2 avril 2008 à 11:40
pourtant il suffit de lire ...
<li>À l'invite de commande, tapez la commande suivante :
al/out:<nom de l'assembly> <nom du module>/keyfile:<nom du fichier>
Dans cette commande, nom de l'assembly représente le nom de l'assembly à signer avec un nom fort, nom du module représente le nom du module de code utilisé pour créer l'assembly et nom du fichier représente le nom du conteneur ou du fichier qui contient la paire de clés.
</li>
donc <nom de l'assembly> c'est le nom de la dll
<nom du module> c'est le nom du namespace de ta dll
et <nom du fichier> ... je pense que tu peux deviner par toi meme...
et pour ton tuto 3 ... CSC est le compilateur de Csharp, donc si tu veux juste faire une signature, tu n'en as pas besoin
par contre si tu veux signer une dll que tu developpe, vu que tu utilise visual studio 2005, je te conseil de passer par la propriété signature de ton projet
Nul ne devient grand par la guerre...
Vous n’avez pas trouvé la réponse que vous recherchez ?
C:\Program Files\Microsoft.NET\SDK\v1.1\Bin>al /out:Novell.Directory.Ldap.dll Novell.Directory.Ldap /keyfile:sgKey.snk
Microsoft (R) Assembly Linker Version 7.10.3077
pour Microsoft (R) Windows (R) .NET Framework version 1.1.4322
Copyright (C) Microsoft Corporation 2001-2003. Tous droits réservés.
ALINK: error AL1047: Erreur lors de l'importation du fichier 'c:\Program Files\M
icrosoft.NET\SDK\v1.1\Bin\Novell.Directory.Ldap' -- Le fichier spécifié est introuvable.