SharpDX 라이브러리를 사용하고 싶습니다. 필자가 직접 소스 코드를 컴파일 할 수 있어야합니다. Net40 구성을 사용하여 GitHub에서 최신 소스 코드를 쉽게 컴파일 할 수 있습니다. SharpDX을소스에서 컴파일 된 SharpDX를 사용 하시겠습니까?
- 다운로드 및 추출 : https://github.com/sharpdx/SharpDX/issues/379
이 다음 단계를 수행 나 결과 : 지금은 내 자신의 프로젝트에서 컴파일 된 프로젝트를 사용하고 싶습니다, 나는 그렇게하려면 다음을 발견했다 소스 코드에 "./SharpDX"
- 파일을 열고 "./SharpDX/SharpDX.sln"
- 구성 관리자에서 구성 Net40와 SharpDX 소스 코드를 작성
다음과 같은 내용으로 파일 "./MyProject/Common.targets"를 만들기 :
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup> <!-- set the location of SharpDX source code --> <SharpDXLocation Condition="'$(SharpDXLocation)' == ''">..\SharpDX</SharpDXLocation> <!-- the new property to include references automatically (as it was in old SharpDX.targets) --> <SharpDXIncludeReferences>true</SharpDXIncludeReferences> <!-- (optional) override DirectX version --> <SharpDXDirectXVersion>DirectX11</SharpDXDirectXVersion> <!-- disable usage of signed assemblies, as you won't have the needed private key to build them --> <SharpDXNoSigned>true</SharpDXNoSigned> </PropertyGroup> <Import Project="$(SharpDXLocation)\Build\SharpDX.targets" /> <Import Project="$(SharpDXLocation)\Build\SharpDX.Toolkit.targets" /> </Project>
다음과 같은 내용으로 파일 "./MyProject/SharpDXHelper.csproj"를 만들기 :
<?xml version="1.0" encoding="utf-8"?> <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="BuildTarget"> <Import Project="Common.targets" /> <Target Name="BuildTarget"> <Message Text="Building command for SharpDXHelper" Importance="high" /> </Target> <Target Name="Rebuild"> <Message Text="Rebuilding command for SharpDXHelper" Importance="high" /> </Target> <Target Name="Clean"> <Message Text="Cleaning command for SharpDXHelper" Importance="high" /> </Target> </Project>
- 엽니 다 파일 "./MyProject/SharpDXHelper.csproj"Visual Studio.
경고 : 나는 "참조"은 "./MyProject/SharpDXHelper.csproj"의 일부를 확장하면
내가 경고 아이콘이 필요한 모든 참조를 참조 경고는 다음과 같다 13 참조 된 구성 요소 'SharpDX'을 (를) 찾을 수 없습니다. SharpDXHelper
내가 잘못한 것을 이해하지 못하고 왜 올바른 구성 요소를 찾지 못합니까? "Toolkit"부분이 사라지고로드가 실패 할 것으로 예상되지만 나머지는 실패 할 것으로 예상하지는 않습니다.
"SharpDXHelper.csproj"를 다른 프로젝트에 대한 종속성으로 추가하면이 프로젝트에서 SharpDX 라이브러리를 사용할 수 있어야합니다.
결과 문제의 이미지는 여기에서 찾을 수 있습니다 : 나는 종속성으로 "SharpDXHelper.csproj"를 추가하면 내 이해에 http://puu.sh/dfmP4/c6ac1165ed.png
나는 당신의 충고를 받아서 를 기존 프로젝트 파일에 추가했고, 내 기대에 반하여 실제로 효과가있었습니다. 물론 Toolkit API가 없으면 언젠가 업데이트해야합니다. 필자가 가져 오기를 추가 한 프로젝트 파일은 NuGet (내가 가져온 것)과 함께 작동하도록 설계되었으므로 그 원인을 도울 수 있습니다. 내가 다시 깨울 때, 나는 그것이 프로젝트 파일과 함께 작동하고 내가 만든 프로젝트 파일이 아니라는 것을 보게 될 것입니다. –
ManIkWeet