У меня очень странная проблема, и я попробовал несколько решений, найденных на www, но это не решило мою проблему.
Несколько дней назад я решил переключиться с метафайлов на базу данных, потому что метафайлы почти полностью использовали мою оперативную память. Мой выбор пал на SQLite, потому что я не хочу заставлять пользователя запускать весь сервер базы данных только для запуска моей программы.
Поэтому я загрузил SQLite на свой ноутбук, сослался на него в своем проекте и продолжил разработку. Все работало нормально. Придя домой, я включил свой настольный компьютер и захотел продолжить разработку (весь мой проект всегда синхронизирован с моим дропбоксом). Но как только код достигает области, где были сделаны SQLite-вызовы, я получаю исключение BadImageFormatException.
Google сказал мне переключить мое приложение на x86, но затем оно вылетает...
Обе системы x64 Windows 7.
Я переместил dll в /bin/Debug/lib/x86/ и /bin/Debug/lib/x64/ и отредактировал файл .csproj, как указано в этом решении, но это совсем не работает...
Ориентация на 32-разрядную и 64-разрядную версии с помощью Visual Studio в том же решении/проекте
Мой .csproj-файл теперь выглядит так:
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Data" />
<Reference Include="System.Drawing" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup Condition=" '$(Platform)' == 'x86' ">
<Reference Include="System.Data.SQLite">
<SpecificVersion>False</SpecificVersion>
<HintPath>bin\Debug\lib\x86\System.Data.SQLite.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup Condition=" '$(Platform)' == 'AMD64' ">
<Reference Include="System.Data.SQLite">
<SpecificVersion>False</SpecificVersion>
<HintPath>bin\Debug\lib\x64\System.Data.SQLite.dll</HintPath>
</Reference>
</ItemGroup>
заранее спасибо