Domanda

Ho salvato il mio codice VB-Express come .dll, l'ho registrato con regasm e ho creato un file .tlb.

Ma quando provo a eseguire una funzione da esso in un modulo Excel ottengo: Errore di runtime "453":Impossibile trovare il punto di ingresso DLL RegisterServiceProcess nel kernel32

Quale passaggio mi sono perso?

È stato utile?

Soluzione

Vedere http://richnewman.wordpress.com/2007/04/15/a-beginner's-guide-to-calling-a-net-library-from-excel/ o meglio provare ancora Exceldna ( http://groups.google.com/group/ExcelDna )

Altri suggerimenti

Penso che tu stia creando una .Net dll e provando a chiamarla da un ambiente orientato a COM (VBA), che non funzionerà senza aiuto.Se ho indovinato, è necessario esaminare gli elementi di interoperabilità COM di .Net:Google genera molti collegamenti dall'aspetto promettente, uno dei quali è Questo articolo.

Sembra un po' spiacevole, ma immagino che la cattiveria possa essere nascosta da qualche parte...

Prova questo articolo della Microsoft Knowledge Base: Impossibile eseguire macro che chiamano DLL a 16 bit in MS Excel a 32 bit.

Disponi dei diritti adeguati per accedere alla DLL?

Grazie per il contributo a tutti, mi avete aiutato a fare un grande passo avanti.Dopo aver seguito le guide che hai fornito ho ottenuto: Errore di runtime:'-2147024894' (80070002)':Impossibile trovare il nome del file o dell'assembly AssemblyName o una delle relative dipendenze.

Ma potrei risolvere il problema con questo Soluzione alternativa.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top