尝试注册一个DLL,但是收到错误DllRegisterServer入口点未找到 [英] Trying to register a dll but getting error DllRegisterServer entry point was not found

查看:213
本文介绍了尝试注册一个DLL,但是收到错误DllRegisterServer入口点未找到的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个.net程序集dll,我想使用regsvr32注册,但是得到以下错误:

I have a .net assembly dll which i am trying to register using regsvr32, but get the following error:

dll加载,但DllRegisterServer入口点未找到

"dll loaded but DllRegisterServer entry point was not found "

同时注册其他dll也会收到此错误。

getting this error while registering the other dlls also.

推荐答案

您应该阅读有一个Microsoft KB 有关regsvr32的文章。一个DLL必须是一个COM库才能注册。这会暴露输入功能( DllRegisterServer )在错误消息中注明。这可能不是DLL没有被设计为注册,或者以某种方式损坏。您可以使用 DLL导出查看器了解是否导出功能。

There is a Microsoft KB article on regsvr32 that you should read. A DLL must be a COM library for it to be registered. This exposes the entry function (DllRegisterServer) noted in the error message. This might not be there is the DLL is not designed to be registered, or is "corrupt" in some way. You can find out if a function is exported using DLL Export Viewer.

如果您可以提供有关是否具有DLL的源代码以及为什么需要注册它们的信息将会很好。如果您有一个简单的Win32 DLL,您可以通过加载 LoadLibrary 从本地代码。您需要使用.NET代码中的P / Invoke。

It would be great if you could provide information on whether you have the source code for the DLLs and why you need to register them. If you have a plain Win32 DLL you can access functions by loading it with LoadLibrary from native code. You need to use P/Invoke from .NET code.

这篇关于尝试注册一个DLL,但是收到错误DllRegisterServer入口点未找到的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆