Запустите исполняемый файл C # из командной строки и укажите путь к необходимым библиотекам - PullRequest
2 голосов
/ 02 августа 2011

Я использую исполняемый файл C #, созданный со ссылкой на библиотеку .Net..NetLibrary - это оболочка для библиотеки C ++, которая находится в другой папке (отдельной папке от .NetLibrary).

Библиотека C ++ находится в / usr / local bin. Библиотека .Net находится в / projects /csharp / NetWrapperProj / bin / Debug Исполняемый файл находится в / projects / csharp / testharness / bin / Debug

Как вы уже догадались по путям, я запускаю .Net, используя mono в Linux (Ubuntu 10.0.4).mono версия 2.10.

Как я могу указать необходимые исполняемые файлы для исполняемого файла - чтобы избежать необработанного исключения: выдается исключение типа System.IO.FileNotFoundException?

1 Ответ

4 голосов
/ 02 августа 2011

Обычно библиотеки DLL / Библиотеки должны находиться в том же каталоге, что и исполняемый файл. С веб-сайта Mono :

Если местоположение библиотеки не было явно указано в DllMap запись в файле приложения или сборки .config, Mono будет искать библиотека в нескольких местах:

  • Каталог, из которого было загружено ссылочное изображение.
  • В любом месте динамический загрузчик системы настроен на для общих библиотек. Например, в Linux это указано в Переменная среды $ LD_LIBRARY_PATH и файл /etc/ld.so.conf. На Windows вместо этого используется переменная окружения $ PATH.

Вы можете прочитать больше на сайте Mono о том, как решить эту проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...