Com 带有消息的EOleSysError';类别未注册';
我已经用我创建的.NET DLL创建了一个类型库。然后我将其导入Delphi,并在COM对象的接口中调用一个方法。当它试图创建COM对象时,我得到一个错误,该类没有注册。DLL已向GAC注册,因此不应如此。有人知道还有什么可能导致这种情况吗?您需要向COM公开.NET程序集-使用带有/codebase键的regasm.exe。通过使用COM visible属性并使用/tlb创建类型库,可以向COM公开我的程序集。根据我的记忆/codebase是当您想要指定程序集的路径时。但是我已经把它放进了GAC,所以我不需要这样做。除非我弄错了,否则ComVisible可以通过COM使用该类。但是,除非您使用regasm公开它,以便将类ID添加到注册表,否则使用者将无法检测程序集位置。你混淆了三件完全不同的事情。ComVisible使一个条目可以从COM访问。类型库用作使用者发现程序集可以公开哪些实体的机制。使用regasm向registry公开允许使用者实际查找实现所需类的程序集。Com 带有消息的EOleSysError';类别未注册';,com,dll,types,Com,Dll,Types,我已经用我创建的.NET DLL创建了一个类型库。然后我将其导入Delphi,并在COM对象的接口中调用一个方法。当它试图创建COM对象时,我得到一个错误,该类没有注册。DLL已向GAC注册,因此不应如此。有人知道还有什么可能导致这种情况吗?您需要向COM公开.NET程序集-使用带有/codebase键的regasm.exe。通过使用COM visible属性并使用/tlb创建类型库,可以向COM公开我的程序集。根据我的记忆/codebase是当您想要指定程序集的路径时。但是我已经把它放进了GA