尝试注册dll但出现错误,提示找不到DllRegisterServer入口点。

3
我有一个.net程序集dll,我试图使用regsvr32注册它,但是出现以下错误:
"dll已加载,但未找到DllRegisterServer入口点"
在注册其他dll时也会出现此错误。
1个回答

6

有一篇微软KB文章关于regsvr32,您应该阅读。DLL必须是COM库才能注册。这会公开在错误消息中指出的入口函数(DllRegisterServer)。如果DLL未设计为注册,或以某种方式“损坏”,则可能不会显示此内容。您可以使用DLL Export Viewer查看导出的函数。

如果您拥有DLL的源代码并且需要注册它们,请提供相关信息,这将非常有帮助。如果您有一个普通的Win32 DLL,则可以通过在本机代码中使用LoadLibrary来加载它并访问函数。您需要从.NET代码中使用P/Invoke。


我在一个已注册并在项目设置为x86 CPU时正常工作的.dll上遇到了问题,但在x86上会出现错误(未注册)。尝试注册时,regsvr32会给我这个错误。有什么想法吗? - ThunderGr

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接