2011-11-08 3 views
5

J'ai un assembly C++/CLI (compilé pour .NET 3.5 fourni avec Windows 7). L'assemblage est marqué ComVisible(true). Il contient 2 classes et 1 interface. Les deux classes sont marquées ComVisible(false), donc elles ne devraient pas avoir d'importance. L'interface est marquée avec InterfaceType(ComInterfaceType::InterfaceIsIUnknown) et un GUID spécifique. Cette interface doit être enregistrée.regasm RA0000: Aucun type n'a été enregistré

Lorsque je tente d'enregistrer cet ensemble à l'aide RegAsm.exe AssemplyName, je reçois cet avertissement:

RegAsm : warning RA0000 : No types were registered 

Mon assemblage dépend de 3 autres ensembles qui sont dans le même répertoire que mon assemblage principal. 2 d'entre eux s'enregistrent sans problème et le 3ème n'est pas marqué ComVisible.

Des idées pour lesquelles je ne peux pas enregistrer mon assembly?

+1

Oui, l'interface était publique. Merci. –

Répondre

6

Il semble que l'assembly n'ait pas été enregistré car il ne contenait aucune classe disponible pour l'enregistrement, juste une interface. Dès que j'ai ajouté une classe factice à l'assemblée, l'avertissement est parti et l'assemblée s'est enregistrée.

+0

Où je veux ajouter dummy Class? – Sagotharan

+0

Ajoutez simplement une classe factice à votre projet. –

Questions connexes