Programming

DLL 'SQLite.Interop.dll'을로드 할 수 없습니다

procodes 2020. 5. 20. 22:05
반응형

DLL 'SQLite.Interop.dll'을로드 할 수 없습니다


주기적으로 다음과 같은 예외가 발생합니다.

Unable to load DLL 'SQLite.Interop.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)

1.0.82.0을 사용하고 있습니다. 버전, VS2010, OS Win7 64에서 nuget으로 설치.

예외가 나타나기 시작하면 디버그 및 릴리스 및 VS 내부 또는 외부의 응용 프로그램에서 지속적으로 나타납니다.

이를 중지하는 유일한 방법은 로그 오프 및 로그온입니다. 예외가 발생하지 않고 dll이로드됩니다. 그것은 며칠 동안 작동 할 수 있지만 다시 깨질 수 있습니다.

누구든지 이와 같은 것을 보았고 그에 대한 해결책이 있습니까?


나는 파티에 늦었다는 것을 알고 있지만 오늘 최신 x86 / x64 (버전 1.0.88.0)를 철회 한 직후이 문제가 발생했습니다. VS2012의 로컬 IIS는 기본적으로 32 비트를 실행하며 x64로 쉽게 전환 할 수있는 방법이 없습니다. 내 프로덕션 서버는 64 비트를 실행합니다.

어쨌든 NuGet 패키지를 DLL 프로젝트에 설치 했는데이 오류가 발생했습니다. 작동시키기 위해해야 ​​할 일은 메인 사이트 프로젝트에도 설치해야했습니다 . SQLite 클래스에 전혀 영향을 미치지 않더라도.

내 생각에 SQLite는 엔트리 어셈블리를 사용하여로드 할 Interop 버전을 감지합니다.


내가 사용하고있는 dll이 Sqlite를 종속성으로 가지고 있기 때문에이 문제가 발생했습니다 (Sqlite 코어 패키지 만 사용하여 NuGet에서 구성됨). 이 프로젝트는 'SQLite.Interop.dll'(x86 및 x64 폴더 모두)을 제외한 모든 Sqlite dll을 컴파일하고 복사합니다.

해결책은 매우 간단합니다. Sqlite.Core 패키지를 빌드 / 실행중인 프로젝트에 종속성 (NuGet 사용)으로 추가하면 dll-s가 복사됩니다.


플랫폼 대상이 WPF 인 프로젝트에서 SQLite를 사용할 때도 동일한 문제가 발생했습니다 Any CPU. 다음 단계에 따라 수정했습니다.

  1. Visual Studio에서 프로젝트 디자이너를 엽니 다. 이를 수행하는 방법에 대한 자세한 내용은 여기를 참조하십시오 .
  2. 빌드 탭을 클릭하십시오.
  3. prefer 32-bit옵션을 비활성화하십시오 .

또는 플랫폼 대상을 x86또는로 설정할 수 있습니다 x64. 이 문제는 System.Data.SQLite플랫폼 대상을 사용하여 'SQLite.Interop.dll'파일의 위치를 ​​가져 오는 라이브러리 로 인해 발생한다고 생각 합니다.

최신 정보:

프로젝트 디자이너에게 연락 할 수없는 경우 *.csproj텍스트 편집기에서 프로젝트 ( ) 파일을 열고  <Prefer32Bit>false</Prefer32Bit>을 <PropertyGroup>...</PropertyGroup>태그에 추가하십시오 .

예제 코드

<PropertyGroup> <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> <ProjectGuid>[Set by Visual Studio]</ProjectGuid> <OutputType>Exe</OutputType> <AppDesignerFolder>Properties</AppDesignerFolder> <RootNamespace>[Set by Visual Studio]</RootNamespace> <AssemblyName>[Set by Visual Studio]</AssemblyName> <TargetFrameworkVersion>v4.5</TargetFrameworkVersion> <FileAlignment>[Set by Visual Studio]</FileAlignment> <!--Add the line below to your project file. Leave everything else untouched--> <Prefer32Bit>false</Prefer32Bit> </PropertyGroup>


이것이 내가 프로젝트에서 수정 한 방법입니다.

작동 중이었고 동료가 변경 사항을 제출했을 때 "DLL 'SQLite.Interop.dll'을 (를)로드 할 수 없습니다"예외가 발생했습니다.

프로젝트의 .csproj 파일을 비교하면 NON-WORKING 버전이었습니다.

<ItemGroup> <Content Include="x64\SQLite.Interop.dll" /> <Content Include="x86\SQLite.Interop.dll" /> </ItemGroup>

그리고 이것이 작동하는 버전입니다.

<ItemGroup> <Content Include="x64\SQLite.Interop.dll"> <CopyToOutputDirectory>Always</CopyToOutputDirectory> </Content> <Content Include="x86\SQLite.Interop.dll"> <CopyToOutputDirectory>Always</CopyToOutputDirectory> </Content> </ItemGroup>

되 돌리면 예외를받지 못했습니다. DLL 파일은 적절한 Debug \ x64 (etc) 폴더에 덤프되었습니다.


이 상태가되면 Rebuild-All을 수행하십시오. 이렇게해도 문제가 해결되면 같은 문제가있을 수 있습니다.

일부 배경 (내 이해) :

  • SQLite에는 1 개의 관리되는 어셈블리 (System.Data.SQLite.dll)와 여러 플랫폼 별 어셈블리 (SQLite.Interop.dll)가 있습니다. Nuget과 함께 SQLite를 설치할 때 Nuget은 플랫폼 특정 어셈블리를 프로젝트에 추가하고 (\ x86, \ x64 여러 폴더 내) 이러한 dll을 "Copy Always"로 구성합니다.

  • 로드되면 관리되는 어셈블리는 \ x86 및 \ x64 폴더 내에서 플랫폼 별 어셈블리를 검색합니다. 자세한 내용은 여기를 참조 하십시오 . 이 관리되는 어셈블리는 이러한 폴더 내에서 관련 (SQLite.Interop.dll)을 찾으려고합니다 (실패)는 예외입니다.

내 시나리오 :

내 솔루션에 2 개의 프로젝트가 있습니다. WPF 앱 및 클래스 라이브러리 WPF 앱은 클래스 라이브러리를 참조하고 클래스 라이브러리는 SQLite (Nuget을 통해 설치됨)를 참조합니다.

나를 위해 문제는 WPF 응용 프로그램 만 수정하면 VS가 부분 재구성을 시도합니다 (종속 dll이 변경되지 않았다는 것을 깨닫습니다). 이 프로세스의 어딘가에서 VS는 \ x86 및 \ x64 폴더의 내용을 정리합니다 (SQLite.Interop.dll 제거). 전체 Rebuild-All을 수행하면 VS는 폴더와 해당 내용을 올바르게 복사합니다.

내 해결책 :

이 문제를 해결하기 위해 xcopy를 사용하여 Post-Build 프로세스를 추가하여 \ x86 및 \ x64 폴더를 클래스 라이브러리에서 WPF 프로젝트 \ bin 디렉토리로 강제 복사했습니다.

또는 빌드 구성 / 출력 디렉토리로 더 멋진 작업을 수행 할 수 있습니다.


Visual Studio Express 2013을 실행하는 것과 동일한 문제가 발생했습니다. 여기 및 다른 곳에서 언급하지 않은 여러 가지 솔루션을 사용해 보았습니다. 이 수정 프로그램이 다른 사람에게 도움이되기를 바랍니다.

SQLite 기반 서비스를 테스트하는 테스트 클래스  DeploymentItem속성  사용하여 수정했습니다 .

예:

[TestClass] [DeploymentItem(@"x86\SQLite.Interop.dll", "x86")] // this is the key public class LocalStoreServiceTests { [TestMethod] public void SomeTestThatWasFailing_DueToThisVeryIssue() { // ... test code here } }

이로 인해 필요한 "TestResults"폴더 내의 디렉토리로 SQLite.Interop.dll복사해야 x86합니다.

모두 녹색입니다. 모두 좋은.


Tools -> Extension and updatesNuite를 업데이트 하고 SQLite.Core를 다시 설치하면 명령이 PM> Update-Package -reinstall System.Data.SQLite.Core수정되었습니다.


따라서 NuGet을 추가 한 후 배포시 Interops가 복사되지 않습니다. 이것을 csproj 파일에 추가하면 해당 동작을 수정해야합니다.

<PropertyGroup> <ContentSQLiteInteropFiles>true</ContentSQLiteInteropFiles> <CopySQLiteInteropFiles>false</CopySQLiteInteropFiles> <CleanSQLiteInteropFiles>false</CleanSQLiteInteropFiles> <CollectSQLiteInteropFiles>false</CollectSQLiteInteropFiles> </PropertyGroup>

NuGet for SQLite의 소스를 보면 이들이 구체적으로 무엇을하고 있는지 확인할 수 있습니다. 이를 통해 ASP.Net Core로 작업 할 수 있습니다.


여러 프로젝트 솔루션에서 비슷한 문제가 발생했습니다. ClickOnce를 사용하여 소프트웨어와 함께 배포 된 플러그인 중 하나에 SQLite.Interop.dll이 필요했습니다.

Visual Studio에서 디버깅하는 한 모든 것이 잘 작동했지만 배포 된 버전에는 해당 DLL을 포함하는 x86 / 및 x64 / 폴더가 누락되었습니다.

ClickOnce를 사용하여 배포 한 후이 솔루션을 작동시키는 솔루션은 솔루션의 시작 프로젝트 (이 중 게시 된 것도 하나)에서이 두 하위 폴더를 만들어 DLL에 복사 한 다음 Content Copy Always로 설정하는 것입니다.

이런 식으로 ClickOnce 게시 도구는 이러한 파일과 폴더를 매니페스트에 자동으로 포함하고 소프트웨어와 함께 배포합니다


여기에는 실제로 많은 답변이 있지만 GAC를 재생하지 않고 간단하고 명확 합니다 .

문제는 실행 파일이 SQLite.Interop.dll데이터베이스에 액세스하기 위해 오른쪽 (x86 또는 x64) 의 사본이 필요하다는 것입니다.

대부분 아키텍처에는 레이어가 있으며 필자의 경우 데이터 레이어 에는 SQLite 연결에 필요한 DLL이 있습니다.

그래서 간단하게 포스트 빌드 스크립트를 내 데이터 레이어 솔루션에 넣고 모든 것이 잘 작동했습니다.


TL; DR;

  1. 솔루션의 모든 프로젝트를 빌드 옵션 으로 x86또는 x64빌드 옵션으로 설정하십시오.
  2. 다음 Post-Build-Script을 사용하여 프로젝트에 다음  추가 하십시오 SQLite nuget Package.

    xcopy "$(TargetDir)x64" "$(SolutionDir)bin\Debug\" /y

물론 스크립트를 변경 Release Build하고 x86빌드해야합니다.


STL; DR;

파일 SQLite.Interop.dll옆에 두십시오 *.exe.


NuGet에서 다중 아키텍처 (x86, x64) 버전의 SQLite를 기본 설치하면 설명 된 동작이 나타납니다. .NET 런타임이 컴퓨터에서 응용 프로그램을 실행하도록 선택한 실제 아키텍처에 맞는 올바른 버전을로드하려면 다음과 같이 DLL 로더에 올바른 라이브러리를 찾을 수있는 위치에 대한 힌트를 제공 할 수 있습니다.

Program.Main () 전에 SetDLLDirectory ()에 대한 kernel32.dll 함수 호출에 대한 선언을 추가하십시오.

[System.Runtime.InteropServices.DllImport("kernel32.dll", CharSet = System.Runtime.InteropServices.CharSet.Unicode, SetLastError = true)] [return: System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.Bool)] static extern bool SetDllDirectory(string lpPathName);

그런 다음 올바른 하위 디렉토리를 결정하는 고유 한 방법을 사용하여 'SQLite.Interop.dll'의 아키텍처 별 버전을 찾으십시오. 다음 코드를 사용합니다.

[STAThread] static void Main() { int wsize = IntPtr.Size; string libdir = (wsize == 4)?"x86":"x64"; string appPath = System.IO.Path.GetDirectoryName(Application.ExecutablePath); SetDllDirectory(System.IO.Path.Combine(appPath, libdir));


오래된 게시물이더라도 여기에서 찾은 솔루션을 공유하고 싶습니다 .http : //system.data.sqlite.org/index.html/info/54e52d4c6f

모든 문제를 읽고 싶지 않은 경우 해결 방법은 "msvcr100.dll"(Windows \ System32 디렉터리에 있음) 파일을 SQLite.Interop.dll과 동일한 경로에 복사하는 것입니다.

이유를 이해하기 위해 문제를 읽고 설치에 파일을 포함하되 오류가 발생하는 경우에만 설치하려면 설치 옵션에서 선택 가능한 구성 요소로 만들었습니다.

HTH, Formentz


64 비트 프로젝트에서 32 비트 dll을 실행하려는 경우에도이 오류가 발생할 수 있습니다.

x86 및 x64 폴더에 동일한 파일 (32 비트 버전의 SQLite.Interop.dll)을 배치했을 때 이것을 얻었습니다.


올바른 바이너리  다운로드 한 경우 프로젝트 빌드 옵션에 따라 Release 또는 Debug 폴더에 SQLite복사 SQLite.Interop.dll하십시오 .


왜 이것이 아직 포함되지 않았는지 모르겠지만, 나는 조사를하고 이것을 스스로 찾아야했기 때문에 누군가가이 답을 찾고 문제를 구할 수 있기를 바랍니다. 이것은 WPF 앱용이었습니다. 내 Dev 상자에서는 제대로 작동했지만 복사하는 컴퓨터에서는 작동하지 않아 Unable to load DLL 'SQLite.Interop.dll'오류가 발생했습니다. 내가 실행할 때 OP와 동일한 오류가 발생하면 "Debug"폴더에서이 다른 컴퓨터로 직접 관련된 모든 디렉토리와 파일을 이식했습니다. 내 DLL이 포함 된 내 "bin"폴더는 "Debug \ bin"에 복사되었으며이 경로를 사용하여 다른 컴퓨터에 복사 할 때 내 응용 프로그램 파일과 함께 모두 포함되었으므로 파일이 누락되지 않았습니다.

적용되지 않은 다른 답변에서 내가 본 것 :

  • NuGet 패키지를 사용하지 않았거나 NuGet 패키지가 만드는 것처럼 보이는 x86 또는 x64 폴더를 만들어야합니다. 내 DLL (System.Data.SQLite 및 SQLite.Interop.dll, System.Data.SQLite.config 포함)은 내 프로젝트의 "bin"폴더에 있으며 수동으로 복사했습니다 (솔루션 탐색기에서 "bin"폴더 생성). VS, Windows 탐색기의이 폴더에 DLL을 붙여넣고 추가> 기존 항목을 사용하여 파일을 VS 폴더 / 프로젝트로 가져옵니다. 그런 다음 해당 위치를 사용하여 프로젝트에서 참조 된 어셈블리로 참조합니다 ( "참조"> "참조 추가", 하나를 찾아서 헹구고 나머지에 대해 반복 ). 이렇게하면 내 프로젝트가 정확히 어디에 있는지 알 수 있습니다.
  • 내 app.config에서 SQLite DLL 파일을 참조하거나 MyProject.csproj 파일을 만질 필요도 없었습니다.
  • 특정 프로세서를 지정할 필요조차 없었습니다! 내 프로젝트의 빌드는 "모든 CPU"용이지만 혼합 또는 64 비트 DLL 만 있고 64 비트 OS 인 Windows 7 이상에서만 실행됩니다. (x86 전용 / 32 비트 전용 DLL 없음)
  • OP 오류가 발생했을 때 이미 이러한 DLL에 대해 "Content"및 "Copy if newer"로 지정했습니다.

내가 찾은 것은 https://system.data.sqlite.org/index.html/doc/trunk/www/faq.wiki#q20 에서 찾았습니다 .

(11) 응용 프로그램을 실행하려고 할 때 왜 DllNotFoundException ( "sqlite3.dll"또는 "SQLite.Interop.dll")이 발생합니까?

명명 된 DLL (동적 연결 라이브러리)을 찾을 수 없거나 종속성 누락으로 인해로드 할 수 없습니다. 명명 된 동적 링크 라이브러리가 애플리케이션 디렉토리 또는 시스템 PATH를 따라있는 디렉토리에 있는지 확인하고 다시 시도하십시오. 또한 정적으로 링크 된 동적 링크 라이브러리를 사용하지 않는 한 필요한 Visual C ++ 런타임 재배포 가능 패키지가 설치되었는지 확인하십시오 .

단락 안의 굵은 부분을 강조하십시오. 대상 컴퓨터는 새롭고 .NET 4.0을 제외하고는 프로그램이로드되지 않았습니다. C ++를 설치하면 SQLite에 대한 명령을 완료 할 수있었습니다. 이것은 첫 번째 FAQ 중 하나이자 전제 조건의 일부 였어야했지만 # 11에 묻혔습니다. 내 개발 컴퓨터는 Visual Studio와 함께 제공 되었기 때문에 이미로드되어 있었기 때문에 작동했습니다.

다운로드 :
Visual Studio 2015 용 Visual C ++ 재배포 가능 패키지 :
https://www.microsoft.com/en-us/download/details.aspx?id=48145

업데이트 3 (누적 업데이트) :
https://www.microsoft.com/en-us/download/details.aspx?id=53587


Costura.Fody를 사용하여 어셈블리 (.net)를 패키징하고 네이티브 dll을 포함하고 미리로드하기 시작했습니다. 이것은 또한 하나의 파일을 보낼 수 있으므로 나중에 배포하는 데 도움이됩니다.

  1. Nuget에서 Costura Fody를 설치합니다.

  2. C # 프로젝트에서 costrua32라는 폴더를 만듭니다. 거기에 C #을로드 할 네이티브 dll을 추가하십시오.

  3. 이 폴더에 추가 한 후. 속성 창을 클릭하고 빌드 작업을 "Embedded Resource"로 변경합니다.

  4. 마지막으로 FodyWeavers.xml이라는 XML 파일을 다음과 같이 수정해야합니다. 여기에서는 먼저 sql dll을로드하도록 지정합니다. (.dll을 삭제하십시오)

    Weavers Costura PreloadOrder SQLite.Interop tbb_debug tbb /PreloadOrder> /Costura /Weavers

이것의 장점은 사전 또는 사후 빌드 이벤트를 작성할 필요가 없으며 최종 제품이 하나의 큰 파일로 완전히 캡슐화된다는 것입니다.


는 AS SQLite는 위키는 말한다, 응용 프로그램 배포해야합니다 :

따라서 규칙을 따라야합니다. 대상 플랫폼과 일치하는 dll을 찾아 그림에 설명 된 위치에 넣으십시오. DLL은 YourSolution / packages / System.Data.SQLite.Core. % version % /에서 찾을 수 있습니다.

응용 프로그램 배포에 문제가 있었기 때문에 바로 SQLite.Interop.dll을 내 프로젝트에 추가하고 x86 폴더를 설치 프로젝트의 AppplicationFolder에 추가하고 dll에 파일 참조를 추가했습니다.


나는 같은 문제가 있습니다. 그러나 마침내 고칠 수 있습니다. 현재 저는 Visual Studio 2013 Community Edition을 사용하고 있습니다. Add-> Existing Item ...을 사용 하고 SQLite.Data.SQLite 파일이있는 위치를 찾습니다 (제 경우는 'C : \ Program Files (x86) \ System.Data.SQLite \ 2013 \ bin'). 포함 할 내용의 유형을 Assembly Files (*. dll; * .pdb) 로 변경하는 것을 잊지 마십시오 . 해당 폴더에서 ' SQLite.Interop.dll '을 선택하십시오 . 그때부터 아무 문제없이 계속할 수 있습니다. 모두에게 행운을 빕니다. ^ _ ^ PS 웹 양식 응용 프로그램을 만듭니다. 나는 아직 창 양식 응용 프로그램 또는 다른 사람을 시도하지 않았습니다.


빌드하기 전에 플랫폼 대상을 x86 또는 x64 (모든 CPU가 아님)로 설정하십시오. Visual Studio의 프로젝트-> 속성-> 빌드-> 플랫폼 대상.


프로젝트 디렉터리에 SQLite.Interop.dll을 복사합니다.

src\ project\ bin\ <-- Past in bin x64\ SQLite.Interop.dll <-- Copy this if 64 x86\ SQLite.Interop.dll <-- Copy this if 32


나는 이것으로 오랫동안 어려움을 겪었고 때로는 테스트 설정이 잘못되었음을 발견했습니다. 이 이미지를보십시오 :

테스트 설정을 선택 취소하면 문제가 사라집니다. 그렇지 않으면 예외가 발생합니다. 바라건대 이것은 누군가를 도울 것입니다. 그것이 근본 원인인지 확실하지 않습니다.


또한 Nuget Manager를 통해 테스트 프로젝트에 dll을 추가하고 수정했습니다.


좋은 대답인지는 모르겠지만 "Local System"이라는 ID로 AppDomain에서 응용 프로그램을 실행하여이 문제를 해결할 수있었습니다.


SQLite 데이터베이스에 테스트 데이터를 추가하기 위해 간단한 콘솔 응용 프로그램에서 작업 중이며이 오류가 발생했습니다. 프로젝트의 구성은 "모든 CPU"입니다. SQLite.Interop.dll을 bin \ debug 폴더에 복사하여 수정했습니다. 더 나은 방법은 @Wil의 방법을 사용하는 것이지만 "모든 CPU"구성에 대해 어떻게 지정합니까?


회의에 대한 논쟁이있을 수 있습니까? DLL에 파일 잠금이있는 다른 응용 프로그램이 있는지 확인합니다.

이것이 이유라면 Sysinternal의 Process Explorer 와 같은 도구를 사용 하여 문제가되는 프로그램을 쉽게 찾을 수 있습니다 .

HTH, 클레이


이 질문을보고있는 사람을위한 참고 :

nuget 패키지를 사용하는 경우 복사를 수행하는 빌드 규칙을 설치합니다. (System.Data.SQLite.Core.1.0.94.0 \ build 또는 설치하는 Core 버전 참조).

너겟 설치 프로그램은 프로젝트 파일에 규칙을 자동으로 추가합니다.

그래도 테스트 케이스 문제는 해결되지 않습니다. DeploymentItem ( https://stackoverflow.com/a/24411049/89584 ) 접근 방식은 거기에서 작동하는 유일한 것입니다.


Visual C ++ 2010 재배포 가능 파일이 내 PC에 설치되어 있지 않기 때문에이 문제가 발생했습니다. Visual C ++ 2010 재배포 가능 패키지를 아직 설치하지 않은 경우 다운로드 하여 설치하십시오 (x86 또는 64 dll 확인).


저는 WebAPI / MVC5 웹 프로젝트와 기능 테스트 프로젝트를 사용하는 솔루션에서이 문제를 마주 쳤습니다. 둘 다 동일한 데이터 액세스 (또는 '코어') 프로젝트에서 벗어났습니다. 여기에있는 다른 많은 사람들과 마찬가지로 Visual Studio 2013에서 NuGet을 통해 다운로드 한 복사본을 사용하고 있습니다.

내가 한 일은 Visual Studio에서 기능 테스트 및 웹 프로젝트에 x86 및 x64 솔루션 폴더를 추가 한 것입니다. 그런 다음을 수행하고 각 폴더에 대해 Right Click | Add Existing Item...적절한 SQLite.interop.dll 라이브러리를 추가했습니다 ..\SolutionFolder\packages\System.Data.SQLite.Core.1.0.94.0\build\net451\[appropriate architecture]. 그런 다음을 Right Click | Properties하고로 설정 Copy to Output Directory했습니다 Always Copy. 다음에 기능 테스트를 실행해야 할 때 테스트가 성공적으로 실행되었습니다.


간단히 말해서

NCrunch에서도이 작업을 수행하려면 NuGet 패키지와 함께 제공된 Interop.dll 버전 을 NCrunch 구성의 추가 파일  추가해야했습니다 .

내 경우

SQLite (도우미 라이브러리)에 직접 의존하는 하나의 프로젝트와이 도우미 라이브러리를 사용하는 단위 테스트 프로젝트가있는 C # 솔루션이 있습니다. System.Data.SQLite.Core 버전 1.0.97.0을 NuGet 패키지로 설치했습니다.

필자의 경우 Marin  제공 한 해결 방법 은 Visual Studio와 CI에서도 작동합니다. 그러나 이것은 여전히 ​​NCrunch에서 오류를 제공합니다.

NCrunch 구성에서 단위 테스트 프로젝트 설정의 "포함 할 추가 파일"에 다음 경로를 추가했습니다.

..\packages\System.Data.SQLite.Core.1.0.97.0\build\net45\**.dll


디버그 폴더에서 x86 및 x64에 대한 "SQLite.Interop.dll"파일을 복사합니다. 이러한 파일은 디버그 폴더의 "x86"및 "x64 폴더에 복사되어야합니다.

참고URL : https://stackoverflow.com/questions/13028069/unable-to-load-dll-sqlite-interop-dll

반응형