2009-10-01 21 views
0

si j'ai eu un problème avec une DLL .Net COM sigend et j'essaie d'appeler le ctor de cette classe dans VB6 mais cela ne fonctionne que sur ma machine, mais pas sur l'autre machines de développement. L'erreur est 0x80131534.Erreur appelant ctor de COM .Net DLL signé

La classe ressemble à ceci:

// GUIDs are examples. In my component they're diffrent 
[ComVisible(true)] 
[Guid("AAAAAAAA-AAAA-1111-AAAA-AAAAAAAAAAAA")] 
[ClassInterface(ClassInterfaceType.None)] 
[ComSourceInterfaces(typeof(IServiceEvents))] 
[Transaction(TransactionOption.NotSupported)] 
public class X : Service, IX 
{ 
    public X() : base() { } 
    // some code here. 
} 

[ComVisible(true)] 
[Guid("AAAAAAAA-AAAA-1111-AAAA-AAAAAAAAAAAA")] 
[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] 
public interface IX { } 

[ComVisible(true)] 
[Guid("AAAAAAAA-AAAA-1111-AAAA-AAAAAAAAAAAA")] 
[ClassInterface(ClassInterfaceType.None)] 
[Transaction(TransactionOption.NotSupported)] 
public abstract class Service : System.EnterpriseServices.ServicedComponent, IService { } 

[ComVisible(true)] 
[Guid("AAAAAAAA-AAAA-1111-AAAA-AAAAAAAAAAAA")] 
[InterfaceType(ComInterfaceType.InterfaceIsIDispatch)] 
public interface IServiceEvents { } 

Et est enregistré comme ceci:

gacutil /i MyComp.dll 
regasm MyComp.dll /tlb 
regsvcs /appname:MyApp MyComp.dll 

Les développeurs ont la source, compieled et la chose rgistry est correcte. Si moi ou ils comparent les clés signées avec

sn -vf MyComp.dll 

nous allons obtenir « « MyComp.dll » Assemblée est valide. »

Quelqu'un at-il une idée, ce que je fais mal?

Merci d'avance pour votre aide!

Répondre