Avatar billede tmouritsen Nybegynder
12. marts 2003 - 08:19 Der er 2 kommentarer og
2 løsninger

Register for COM Interop

Når jeg markere "Register for COM Interop" under project properties bliver der genereret en .tlb fil jeg kan bruge fra VBA som var det et COM objekt. Det fungerer fint på min udviklingsmaskine.

Men når jeg skal få det til at køre på en anden maskine der ikke har VS.NET installeret, hvad skal jeg så gøre?
Avatar billede z42cool Nybegynder
12. marts 2003 - 08:44 #1
Så skal du ligge dit assembly i GAC'en og registrere .tlb filen med regsvr32
Avatar billede tmouritsen Nybegynder
12. marts 2003 - 16:26 #2
Jeg skal bruge en beskrivelse...
Avatar billede brooks Nybegynder
17. marts 2003 - 13:23 #3
Skriv (efter at have tilføjet .NET tools til din path):

gacutil -i <assembly>.dll
regasm <assembly>.dll /nologo /tlb:<assembly>.tlb

Hvad sker der? Først lægges dit .Net assembly ind i gac'en.
Derefter registreres dit assembly, for COM.
Tilsidst får du genereret en .tlb fil, som du kan bruge fra VBA (den er dog ikke nødvendig - det hele står i din registry).
Avatar billede tmouritsen Nybegynder
17. marts 2003 - 13:35 #4
Det I mangler er at dll'en skal have et "strong name" hvilket kan gøres ved at lave et nøglepar med SN.exe og lave den compile med projektet.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester