DLL не может быть найден, хотя он находится в той же папке - PullRequest
0 голосов
/ 20 июня 2019

мое приложение на c # работает нормально в win10. Я перенес его в другой компьютер, который также win10. но это не работает сейчас. выскакивает ошибка:

xx_win32.dll не может быть загружен.

Я уверен, что все файлы находятся в одной папке.

xx_win32.dll подготовлен в c ++ моим другом, я использую DllImport в своем коде, и он отлично работает на моем компьютере. В чем может быть проблема?

Я также положил xx_win32.dll в папку system32. Я проверил текущий каталог, и он, как и ожидалось (в одной папке со всеми файлами)

public const string DLL_NAME = "xx_Win32.dll"; 

[DllImport(DLL_NAME, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Unicode)]
public static extern int xxDll_GetSize();

system.io.filenotfoundexception: не удалось загрузить файл или сборку

1 Ответ

0 голосов
/ 20 июня 2019

Я решил проблему двумя разными способами (оба способа работали нормально): 1- Я установил vs 2017 на ПК. Приложение работало хорошо, и ошибка исчезла. 2- Я перехожу к проекту файла xx_Win32.dll (c ++), перестраиваю его с опцией «использовать MFC в статической библиотеке». теперь он работает на любом компьютере.

спасибо за ваши ценные комментарии.

...