2010-04-28 2 views
2

우리는 Sqlite.NET 용 외부 DLL을 사용하는 C# 응용 프로그램을 빌드하고 있습니다. 이것은 .NET dll이지만 내부에 C dll을 포함하므로 x86 및 x64 형식으로 제공됩니다.C# 프로젝트를 빌드 할 때 Visual Studio 사본 x64 DLL 또는 x86 DLL을 가지고 있습니다

우리는 x86 버전에 대한 참조를 프로젝트에 추가하므로 x86에서 빌드하고 실행할 때 괜찮습니다. Visual Studio는 dll을 bin 폴더로 복사하고 실행합니다.

x64에서는 여전히 x86 버전을 복사하고 실행하면로드하지 못합니다. 우리는 일시적으로 프로젝트를 x86만으로 설정함으로써이 문제를 해결하지만 이상적으로는 Visual Studio에 어떤 버전의 컴퓨터인지에 따라 올바른 버전을 복사하라고 말하고 싶습니다.

아이디어는 어떻게됩니까?

+0

의 중복 가능성 http://stackoverflow.com/questions/2583732/conditional-references-in-net-project-possible-to-get-rid-of-warning – Richard

답변

2

MSBuild에서 수행 할 수 있습니다 (즉, 프로젝트를 언로드하고 .csproj 파일을 편집해야합니다).

플랫폼의 조건부 속성 그룹에 속성을 추가하여 해당 어셈블리의 경로를 식별 한 다음 참조 항목 그룹에서 해당 속성을 사용합니다.

답은 여기에 있습니다 : Conditional references in .NET project, possible to get rid of warning?

관련 문제