2016-08-17 2 views
0

VS2015에 문제가 있습니다.VS2015에서 32 비트 DLL을 시작할 수 없습니다.

.csv 파일을 통해 읽는 DLL을 만들고 싶습니다.이 경우 Jet ADO 공급자를 사용하지만 32 비트에서만 작동합니다.

따라서, 나는 빈 UserControl을에, 나는 클래스 라이브러리 프로젝트를 만든 7

내 64 비트 윈도우에서 32 비트 DLL을 실행하려합니다. 외부 참조도없고 코드도 없습니다.

"모든 CPU"또는 "x64"에서 실행되면 모든 것이 정상적으로 작동합니다. 내가 목표 CPU에 "86"을 설정하면 , 그것은 콘솔에서 오류

An unhandled exception of type 'System.BadImageFormatException' occurred in mscorlib.dll 

으로, 미사일하지 않습니다, 나는 읽을 수

'UserControlTestContainer.exe' (CLR v4.0.30319: DefaultDomain): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_64\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled. 

그가 mscorlib.dll을 표시하는 것 나는 32 비트이지만 64 비트 폴더에서로드되며이 위치를 변경할 위치를 찾지 못했습니다.

해결해 주시겠습니까?

감사합니다, 질문의 의견에 막심

+0

도서관이나 응용 프로그램? 라이브러리라면 다른 프로젝트가 있어야합니다.이 프로젝트는 그에 종속 된 응용 프로그램입니다. 이 프로젝트도 32 비트로 설정되어 있습니까? – slawekwin

+0

그것은 클래스 라이브러리 프로젝트이고, 다른 것은 없습니다. – Maxime

+0

라이브러리를 실행할 수 없습니다. 어떻게 실행합니까? 여러분의 콘솔에서'UserControlTestContainer.exe'라는 이름의 외부 응용 프로그램을 사용하고 있음을 알 수 있습니다. 그것도 32 비트입니까? – slawekwin

답변

1

덕분에, 나는 일하러 가야 관리 : VS2015에서

  • , .EXE 프로젝트가없는 클래스 라이브러리를 실행할 수 있습니다.
  • .exe 프로젝트없이 클래스 라이브러리를 실행하면 표준 구성 : "UserControlTestContainer.exe"로 임시 프로젝트가 만들어집니다. 64 비트 시스템에서는 64 비트 응용 프로그램으로 실행됩니다.
  • 32 비트 DLL을 실행하려면 사용자가 만든 exe ​​프로젝트가 32 비트로 설정되어야합니다.
+0

VS2015의 멋진 새 기능입니다. 이 "컨테이너"ad-hoc 프로젝트가 x86으로 실행되도록 구성 할 수 있는지 다시 한 번 확인하십시오. – slawekwin

관련 문제