Вшить SQLite.Interop в exe с помощью Costura.Fody

289
05 ноября 2017, 15:45

После использования Costura.Fody почти все dll пошли в exe, но пару dll, которые в папках, не могу закинуть в exe.

В чём проблема ? (в папках 2 dll от Sqlite)

Answer 1

Это нативные библиотеки, поэтому нужно указывать явно, что вы их тоже хотите вшить в exe.

1. Нужно указать названия (только названия, включать расширение файлов не нужно) библиотек в файле FodyWeavers.xml.

<Weavers>
   <Costura>
      <Unmanaged32Assemblies>SQLite.Interop</Unmanaged32Assemblies>
      <Unmanaged64Assemblies>SQLite.Interop</Unmanaged64Assemblies>
   </Costura>
</Weavers>

2. Создать в проекте папки costura32 и costura64 и поместить в них соответствующие версии библиотечных файлов.

3. Указать действие при построении (Build Action) - встраиваемый ресурс (Embedded Resource)

Результат должен получиться примерно следующим

Примечание. Картинка взята из статьи Including SQLite.Interop.dll into your C# project

Более подробную информацию можно найти в README на странице проекта на гитхабе

READ ALSO
Отправка сообщения от c# сервера

Отправка сообщения от c# сервера

Есть C# проект с GUIЕсть задача реализовать отправку сообщения по нажатию кнопки с сервера клиенту

259
Замена данных в JSON

Замена данных в JSON

Наконец-то разобрался с wwwnewtonsoft

206
C# цифры после запятой

C# цифры после запятой

Такой вопросДопустим у нас есть значение 25

403
DES возвращает 128 битов вместо 64

DES возвращает 128 битов вместо 64

Взял код для работы с DES с сайта MSDN:

341