Casse tête de .dll [Résolu] - VB/VBA/VBS - Programmation
Marsh Posté le 12-09-2006 à 10:40:57
Normalement, tu dois la signer avec un nom fort, puis la placer dans le GAC
Marsh Posté le 12-09-2006 à 11:09:52
C'est bien ce que je dis ^^. Lorsque je signe ma .dll avec un nom fort il m'envoie chier car l'objet COM que j'ajoute en référence à ma .dll n'a pas elle-même de nom fort T.T
Marsh Posté le 12-09-2006 à 11:18:21
ben créé un nom fort pour ta dll
Marsh Posté le 12-09-2006 à 15:02:33
C'est bon vous creusez pas la tête j'ai encore trouvé tout seul ;p
Marsh Posté le 16-10-2006 à 10:40:44
Et tu as fais comment ??
j'ai le même probleme que toi
merci
Marsh Posté le 16-10-2006 à 14:14:13
Alors tu fais un "New Project" dans VisualStudio, sélectionne l'onglet "Class Library". Ensuite tu met ton code comme tu veux, comme on l'a dit au dessus tu signe ta .dll dans les propriétés du projet. Tu build et tu place ta .dll à un endroit où elle bougera pas.
Ensuite tu exécute un GAC (C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin) dans une invite de commande =>
C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin\gacutil.exe -i C:\Program Files\MaDLL.dll
,ce qui va installer ta .dll dans le cache
Enfin tu relance un cmd et tu fais un Regasm de ta .dll (C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\regasm.exe) =>
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\regasm.exe
C:\Program Files\MaDLL.dll
Pour register l'assembly créée dans le reg.
Et voilà t'as ta .dll enregistrée.
C'était pas compliqué pourtant xD
Marsh Posté le 02-04-2007 à 17:05:23
Je rebondis sur le sujet
Une fois la dll créée, comment tu fais pour la faire évoluer ?
Parce que moi j'en ai bien fait une, mais elle est fixe, après quand je modifie le code, et que je compile, ca la prend pas en compte. Je dois faire plein de bidouilles dont redémarrer la bécane
Puis finalement la réenregistrer pour tester.
Y a pas plus simple pour désinstaller/reinstaller l'assembly quand on est en cours de dév ?
Marsh Posté le 02-04-2007 à 19:01:44
Hmm pas à ma connaissance... Désolé mais je suis pas assez compétent dans le domaine pour te répondre ^^. Ce que je fesais c'est à chaque build: regasm -u|gacutil -u / build / regasm|gacutil -i
Me rapelle plus si je devais reboot ma machine mais il me semble pas.
Marsh Posté le 03-04-2007 à 09:40:12
les gens roots a écrit : Hmm pas à ma connaissance... Désolé mais je suis pas assez compétent dans le domaine pour te répondre ^^. Ce que je fesais c'est à chaque build: regasm -u|gacutil -u / build / regasm|gacutil -i |
En fait il semble qu'il y ait quelques problèmes dans mon registre, j'obtiens des exceptions quand j'essaie de faire les "-u".
Pour le gacutil -u, il me dit qu'il ne peut pas accéder au fichier car il est utilisé par un autre processus.
Pour le regasm -u, il me sort ceci :
Code :
|
Marsh Posté le 05-04-2007 à 08:35:46
Soit xD. La seule différence que je vois avec ton environnement c'est que moi je travaille en .NET 2.0
Sinon j'ai jamais eu d'exception suite à ces opérations t_t. Désolé de pas pouvoir t'en dire plus... Tu trouvera p-e ton bonheur sur MSDN... Bon courage
Marsh Posté le 12-09-2006 à 10:29:39
Bonjour à tous ceux qui voudrons m'écouter
J'ai besoin de créer une .dll COM objet en VB.NET.
J'ai tout d'abord commencé par créer une librairie "standard" .NET
J'ai réussi à créer un COM objet par la suite après quelques lignes de commande fastidieuses.
Mon problème est le suivant:
après la création de cette .dll de tests je me suis atelé à mes développements proprement dit et là ECHEC:
j'ai besoin d'importer un COM objet provenant d'une autre appli. Le problème est que cette .dll n'a pas de nom fort... (ou Strong Name: madll.snk)
En effet, je fait référence à celle-ci dans la .dll que je créer. Et lorsque j'exécute un petit .vbs pour tester cette .dll HORREUR => le système n'arrive pas à localiser la .dll dont je fais référence...
Quelqu'un aurait-il une idée merveilleuse pour me sortir de cette $%!@ ?
Merci d'avance
Message édité par les gens roots le 12-09-2006 à 15:02:13