2013-09-05 2 views
1

System.Data.SQLite 및 "select load_extension ("path/to/zumero.dll ")"을 사용하여 시작했지만 현재 어떻게 생각하니 SQLite Windows 셸을 사용하고 있습니다. 잘못된. C#에서 확장을로드하려고 할 때 쉘에서 동일한 오류가 발생합니다.문제로드 Zumero 모듈 종속성

sqlite> .load "windows\ext\x64\zumero.dll"; 
Error: The specified module could not be found. 

절대 경로를 지정하면 동일한 오류 메시지가 나타납니다.

API-MS-WIN-CORE-COM-L1-1-0.DLL 
API-MS-WIN-CORE-WINRT-ERROR-L1-1-0.DLL 
API-MS-WIN-CORE-WINRT-L1-1-0.DLL 
API-MS-WIN-CORE-WINRT-ROBUFFER-L1-1-0.DLL 
API-MS-WIN-CORE-WINRT-STRING-L1-1-0.DLL 
API-MS-WIN-SHCORE-SCALING-L1-1-0.DLL 
DCOMP.DLL 
IESHIMS.DLL 

내가 여기서 뭔가 잘못하고 있어야합니다 같은 느낌 (WinRT에 대한 종속성이 이상한 것 같다)하지만, 정말 무엇을 볼 수 없습니다 : 내가 종속성 워커를 사용하여 열 때 분명히 다음과 같은 종속성 누락되었습니다. "최종 게임"은 Zumero SQLite 인스턴스에 데이터를 쓰는 Windows Server 2008 R2 컴퓨터에서 C# 웹 응용 프로그램을 사용하고 있습니다.이 인스턴스는 여러 모바일 장치에 동기화됩니다.

건배

답변

1

는 지금 당장 문제를 재현 나는이까지 다시 XP로 시스템에서 테스트되었습니다 알고 있기 때문에, 잠시 동안 "뭔가 잘못하고 있어야합니다"같은 느낌을 가지고 있었다. 문자열에서 백 슬래시 (backslashes) \의 문제가 발생합니다 (ugh). SQLite는이를 이스케이프 처리에 사용합니다. 대신 슬래시 /을 사용하거나 \\을 두 번 사용하십시오. 그것에 대해 README에 명시 적으로 메모를 추가하겠습니다.

나는 WinRT 의존성이 언뜻 보아 이상하게 보임에 동의한다. 모두 궁극적으로 Zumero가 wininet.dll에 의존 한 결과 인 것 같습니다. WinRT DLL은 shell32.dll과 같은 시스템 모듈 아래에 있습니다. 그것이 얼마나 놀라운 지에 대해서는 궁금합니다. 궁극적으로는 그렇게 놀랍지 않습니다.

+0

나는 여전히 슬래시가 서로 다르기 때문에 동일한 오류가 발생하며 앞으로, 두 번 뒤로, 절대 경로로 오류가 발생합니다. sqlite 셸에서 경로를 복사하고 문제없이 디렉터리 목록을 완료했습니다. 올바른 폴더 인 zumero_client_sdk의 루트에서 사용 하시겠습니까? Win7-64 bit를 사용하고 있습니다. – Rob

+1

32 비트 dll을 시도해 보았는데 문제가 없습니다. 64 비트 머신을 사용하고 있습니다 ... 생각하십니까? – Rob

+0

일치해야하는 코드의 비트입니다. 64 비트 Windows는 64 비트 및 32 비트 코드를 모두 실행할 수 있지만 단일 프로세스의 모든 코드가 일치해야합니다. 32 비트 SQLite 셸을 사용해야하므로 Windows는 해당 프로세스에 32 비트 DLL 만로드합니다. 작업 관리자를 사용하여 SQLite 셸 프로세스가 32 비트인지 확인할 수 있어야합니다. 나는 Win7에서 프로세스 이름에'32 * '또는 비슷한 접미어를 넣었다고 생각한다. 32 비트 쉘을 사용하는 것은 전혀 문제가되지 않지만, 정말로 원한다면 64 비트 쉘을 만들 수 있습니다. – Jayonas