Win32 API용 Windows.h 헤더 파일은 수십만 개의 새로운 매크로, 구조체 및 함수를 추가하는 거대한 포함 파일입니다.
이 프로젝트는 필요한 것만 포함하도록 Windows.h 파일을 모듈화하는 것을 목표로 합니다.
모든 기여를 환영합니다 . 크라우드소싱을 통해 이 작업을 수행하면 훨씬 더 빨리 완료할 수 있습니다. 누락된 기능이 있으면 언제든지 추가하고 풀 요청을 제출해 주세요. 최대한 빨리 병합하겠습니다.
관심 있는 유일한 디렉터리는 include
입니다. 해당 디렉터리의 내용을 프로젝트에 복사하고, win32
디렉터리가 포함된 디렉터리를 가리키도록 포함 경로를 설정하세요.
매우 일반적인 이름 지정 및 이름 충돌 위험으로 인해 항상 win32
디렉토리에 유지하고 include 지시문에서 명시적으로 유지하는 것이 좋습니다: #include
.
win32
디렉터리에는 다음이 포함됩니다.
windows_base.h
atomic.h
dbghelp.h
dds.h
file.h
gdi.h
io.h
misc.h
process.h
sysinfo.h
threads.h
window.h
#include
로 지정):windows_modular.h
windows.h
windows_base.h
는 각 모듈식 포함 파일에 포함되어 있으며 여러 모듈에서 사용되는 필수 유형, 매크로 및 구조를 포함합니다.
우리는 합리적인 양의 호환성을 유지하고 기존 코드를 손상시키지 않으면서 Microsoft 자체 헤더에 대한 완전한 대체를 제공하려고 노력합니다.
그러나 알아야 할 몇 가지 주요 변경 사항이 있습니다.
A
또는 W
추가하여 유니코드 또는 ASCII 변형을 호출하려는 경우 수동으로 지정해야 합니다(예: CreateFileA
및 CreateFileW
.MIN
/ MAX
매크로는 제공되지 않으며 #define NOMINMAX
와 동일합니다. test
디렉터리에는 간단한 테스트 사례가 포함되어 있습니다.
테스트 케이스는 전체 경고가 켜진 상태에서 각 모듈 파일을 컴파일하는 것으로 구성됩니다. 이를 통해 모든 종속성이 충족되고 경고가 발생하지 않는지 확인됩니다.
다음을 호출하여 실행할 수 있습니다.
$ nmake
경로에 CL.EXE
및 NMAKE.EXE
가 필요합니다.
이 프로젝트에는 Microsoft Windows SDK의 일부가 포함되어 있습니다. Microsoft의 EULA에 따라 라이선스가 부여됩니다. 이용하시려면 반드시 읽고 동의하셔야 합니다.
나머지는 "MIT" 및 "Unlicense" 라이센스에 따라 이중 라이센스가 부여됩니다.