Windows SDK

Windows SDK(Windows Software Development Kit)는 Microsoft가 Microsoft Windows용 응용 프로그램을 제작하도록 제공하는 헤더·라이브러리와 빌드·서명·검사 도구, 샘플의 모음이다. Windows API·Win32 프로그램은 SDK 헤더...

정식 명칭Windows Software Development Kit
분류Windows 응용 프로그램 개발 도구 모음
개발사Microsoft
내용Windows API 헤더·라이브러리·도구·샘플
주요 대상Win32·COM·DirectX·Windows App SDK 연계
대표 도구Resource Compiler·SignTool 등
개발 언어C·C++·C# 등 플랫폼별
IDEVisual Studio 및 독립 SDK
대상Windows 클라이언트·Server, 아키텍처별
버전OS 릴리스·SDK 버전별 API 차이
라이선스Microsoft SDK 제공·사용 조건
공식 자료Microsoft: Windows SDK
개발 문서Windows App Development

Windows SDK(Windows Software Development Kit)는 Microsoft가 Microsoft Windows용 응용 프로그램을 제작하도록 제공하는 헤더·라이브러리와 빌드·서명·검사 도구, 샘플의 모음이다. Windows API·Win32 프로그램은 SDK 헤더와 가져오기 라이브러리를 사용해 운영체제 함수·상수·구조체 및 ABI 규약을 참조한다. SDK는 컴파일러나 IDE 전체와 같은 제품은 아니며 Visual Studio 등과 조합해 사용한다.[1]

주요 내용에는 Win32·COM 및 보안·네트워크·파일 시스템 API 선언, Direct3D·DXGI와 HLSL 등 그래픽스 기술의 SDK 파일, 앱 패키징·서명과 리소스 처리용 도구가 있다. 개별 SDK 버전에서 제공되는 API는 Windows 릴리스·컴파일러와 아키텍처에 따라 달라질 수 있다. 최신 SDK를 사용해도 대상 Windows 버전이 지원하지 않는 함수를 무조건 호출할 수 있는 것은 아니다.

개발자는 Visual Studio·CMake 등에서 SDK의 포함 디렉터리·링커 라이브러리와 타깃 버전을 설정한다. 프로그램은 코드 컴파일 뒤 PE/COFF 오브젝트·실행 파일을 생성할 수 있고, 앱 매니페스트·리소스 및 서명 정보를 추가할 수 있다. Windows Driver Kit은 커널·장치 드라이버를 제작하는 목적에 특화되어 있어 일반 Windows SDK와 다르다.

Windows SDK는 Windows 10·11의 Win32 프로그램뿐 아니라 WinRT·UWP와 관련 기술의 개발에 사용됐다. Windows App SDK는 앱 프레임워크와 패키지·WinUI 등 새로운 기능을 별도의 버전으로 제공하며 Windows SDK 자체와 동일한 제품은 아니다. SDK 이용 조건과 개발 도구에 포함된 재배포 가능 라이브러리 조건을 구분해야 한다.[2]

역사

개발 배경과 용도

내부 구성과 주요 기능

개발·실행 환경

명령·도구와 설정

OS·버전별 호환성

라이선스·공급 방식

사용 사례

관련 문서

  1. Microsoft: Windows SDK Downloads ↩
  2. Microsoft Learn: Windows app development ↩