2009-11-29 2 views

답변

3

기본적으로 .NET Framework에는 기본 개발에 필요한 대부분의 도구가 포함되어 있습니다 (컴파일러, 프로젝트 용 msbuild 엔진). 그러나 몇 가지 특정 작업 - 암묵적 연결, COM 및 웹 서비스 용 코드 생성, CIL 분석 등 -에는 Windows SDK에 포함 된 추가 도구 세트가 필요합니다.

IMHO .NET Framework 배포판이 이미 크기 때문에이 툴로 인해 더 커지면 좋지 않습니다.

+0

@elder_george : 답변 해 주셔서 감사합니다. 우리는 프레임 워크 라이브러리를 배포 할 필요가 없으며 배포 시스템에 프레임 워크가있을 것으로 기대합니다. SDK에서 무언가를 사용하면 최종 사용자가 자신의 컴퓨터에 Windows SDK를 설치할 것을 기대하지 않기 때문에 배포해야 함을 의미합니까? – Sandbox

+0

일반적으로, 당신은 그것을 필요하지 않습니다. 일반적으로 참조하는 모든 라이브러리는 프레임 워크에 속하므로 종속 관계가 없어야합니다. Windows SDK는 런타임 용이 아닌 컴파일 용입니다 (또한 일부 부분의 재배포가 금지되어 있습니다). 그것으로부터 유일한 도구는'gacutil '빌드 후에 유용하다고 생각하지만, 그것 없이는 살 수 있습니다. –

0

.NET Framework는 관리되는 응용 프로그램 만 다루며 Windows API의 하위 집합입니다. Windows SDK (또는 현재 호출 된 것)는 관리되는 코드로 아직 래핑되지 않은 API를 포함하는 더 큰 API 세트입니다.

+0

@Andrew Keith : VS2008을 사용하여 컴파일 할 때 lc.exe 문제가 발생했습니다 (google .. 알려진 문제). IDE에서 SDK에있는 위치를 가리키는 lc.exe 경로를 설정하도록 지시했습니다. 따라서 SDK를 설치해야했습니다. – Sandbox

0

Visual Studio를 설치할 때 .NET Framework와 함께 설치되는 Windows SDK에 대해 이야기하고 있습니까?

그렇다면 Windows SDK가 관리되지 않는 개발에 (주로) 필요하기 때문입니다.

또한 C : \ Program Files \ Microsoft SDKs \ Windows \ v6.0A \ bin 폴더에는 mt.exe와 같은 도구가있어 extern & dll에 외부 적으로 매니페스트를 포함하는 데 사용할 수 있습니다 (관리되는 앱도 해당)