VB.Net“.DLL 已加载,但未找到 DllRegisterServer 入口点”
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/13108965/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
VB.Net ".DLL was loaded, but the DllRegisterServer entry point was not found"
提问by user1724956
I am finding it difficult to discover the reason for this message. I downloaded PIA services and installed the extracted files, but when I register using regsvr32 path\file name
I get the aforementioned message:
我发现很难找到这条消息的原因。我下载了 PIA 服务并安装了提取的文件,但是当我使用注册时,regsvr32 path\file name
我收到了上述消息:
.dll was loaded, but the DllRegisterServer entry point was not found
.dll 已加载,但未找到 DllRegisterServer 入口点
Again I tried to extract the files in systems32 folder, and the message tells me they were extracted. But when I search in the system32 folder the files aren't there. Please help me.
我再次尝试提取systems32文件夹中的文件,消息告诉我它们已被提取。但是当我在 system32 文件夹中搜索时,文件不存在。请帮我。
回答by Tom Saenen
I was struggling with the same issue today. It's all pretty new to me, but here's what I've found:
我今天也在为同样的问题苦苦挣扎。这对我来说都很新,但这是我发现的:
RegSvr32 will only work on COM libraries designed to be dynamically linkable. And as Hans Passant said: you need to use regasm instead of regsvr32 to register .NET assemblies:
RegSvr32 仅适用于设计为可动态链接的 COM 库。正如 Hans Passant 所说:您需要使用 regasm 而不是 regsvr32 来注册 .NET 程序集:
regasm assemblyFile [options]
(More info on regasm can be found here.)
(可以在此处找到有关 regasm 的更多信息。)
For your second question: the DLL might link to other DLLs which aren't in the path you specified when running regasm. (As answered here.) Try checking all the dependencies.
对于您的第二个问题:DLL 可能会链接到其他 DLL,这些 DLL 不在您在运行 regasm 时指定的路径中。(作为回答这里。)请检查所有的依赖。