2010-02-02 6 views
4

Я пишу небольшое приложение AOL IM на C#. У меня есть все DLL, которые мне нужны, и я смог скомпилировать и запустить приложение. Тем не менее, когда он работает, я получаю ошибку, которая говоритC# dll не найден

«Не удается загрузить DLL„acccore.dll“:. Указанный модуль не может быть найден (Исключение из HRESULT: 0x8007007e)»

Я понимаю, что это означает, что файл acccore.dll не найден, но я не знаю почему. Я попытался поместить его в C: \ Windows \ System32, и он также находится в каталоге отладки, который создается при создании проекта в Visual Studio. Может ли кто-нибудь сказать мне, как сделать мое приложение известным, где находится эта DLL?

Спасибо!

+0

Получаете ли вы эту ошибку при работе с VS или после ее установки через .msi? –

+1

Кроме того, убедитесь, что при открытии файла accore.dll ошибок нет (http://dependencywalker.com/). –

+0

Я получаю ошибку, когда я бегу от VS – beyerss

ответ

0

Я использовал dependancywalker, чтобы найти dll, которого я отсутствовал, что вызвало его ошибку. Это было предложено Тейлором Лизом в комментарии.

0

это DLL сборка?

Если это так, то fuslogvw покажет вам, где CLR ищет сборки. Поместите это где .net смотрит

0

. NET сборки должны быть в каталоге приложения (или в одном из его подкаталогов, особенно если они представляют собой локализованную версию другой сборки) или в GAC (глобальная сборка cache.) Если DLL не находится в том же каталоге, что и .EXE, тогда это ваша проблема. Если это так, и оно все еще не работает, это означает, что сборка по какой-то причине не соответствует.

4

Я провел некоторое исследование, и похоже, что acccore.dll является COM-DLL-файлом. Это означает, что вам нужно запустить:

regsvr32.exe C:\Windows\System32\acccore.dll 

Это зарегистрировать COM DLL в реестр, вы можете использовать этот DLL в коде .NET. Проверьте ссылку:

http://64.12.130.129/forum?c=showthread&ThreadID=1173

Так что вам нужно будет использовать P/Invoke, чтобы использовать DLL (я предполагаю, что AOL SDK имеет некоторый пример кода, вы можете использовать).

Смежные вопросы