2011-11-08 18 views
5

Ho un assembly C++/CLI (compilato per .NET 3.5 fornito con Windows 7). L'assieme è contrassegnato come ComVisible(true). Contiene 2 classi e 1 interfaccia. Entrambe le classi sono contrassegnate come ComVisible(false) quindi non dovrebbero avere importanza. L'interfaccia è contrassegnata con InterfaceType(ComInterfaceType::InterfaceIsIUnknown) e un GUID specifico. Questa interfaccia deve essere registrata.regasm RA0000: Nessun tipo registrato

Quando provo a registrare questo assembly utilizzando RegAsm.exe AssemplyName, ottengo questo avvertimento:

RegAsm : warning RA0000 : No types were registered 

mio assemblaggio dipende da 3 altre assemblee che si trovano nella stessa directory come il mio assemblaggio principale. 2 di loro si registrano senza problemi e il 3 non è contrassegnato come ComVisible.

Qualche idea del perché non riesco a registrare il mio assemblaggio?

+1

Sì, l'interfaccia era pubblica. Grazie. –

risposta

6

Sembra che l'assembly non sia stato registrato perché non conteneva classi disponibili per la registrazione, solo l'interfaccia. Non appena ho aggiunto una classe fittizia all'assemblaggio, l'avviso è andato via e l'assemblea è stata registrata.

+0

Dove voglio aggiungere la classe fittizia? – Sagotharan

+0

Basta aggiungere una lezione fittizia al tuo progetto. –

Problemi correlati