2012-07-04 4 views
3

У меня есть сборки .NET библиотеки DLL, которые я пытаюсь зарегистрировать с помощью regsvr32, но получаю следующее сообщение об ошибке:Попытка зарегистрировать DLL, но получаю ошибку DllRegisterServer точка входа не найдена

«DLL загружен, но запись DllRegisterServer точка не был найден "

получение этой ошибки при регистрации других DLL.

ответ

6

Существует Microsoft KB article on regsvr32, который вы должны прочитать. DLL должна быть библиотекой COM для ее регистрации. Это предоставляет функцию ввода (DllRegisterServer), отмеченную в сообщении об ошибке. Возможно, это не так, поскольку DLL не предназначена для регистрации или каким-то образом «повреждена». Вы можете узнать, экспортирована ли функция с помощью DLL Export Viewer.

Было бы здорово, если бы вы предоставили информацию о том, есть ли у вас исходный код для библиотек DLL и почему их необходимо зарегистрировать. Если у вас есть простая библиотека Win32 DLL, вы можете получить доступ к функциям, загрузив ее с LoadLibrary из собственного кода. Вам нужно использовать P/Invoke из .NET-кода.

+0

У меня возникла проблема с .dll, которая зарегистрирована и отлично работает, когда проект установлен для процессора x86, но дает ошибку (не зарегистрирован) для x86. При попытке зарегистрировать его regsvr32 дает мне эту ошибку. Есть идеи по этому поводу? – ThunderGr