El archivo de encabezado Windows.h para la API Win32 es un gigante de archivos de inclusión, que agrega cientos de miles de nuevas macros, estructuras y funciones.
Este proyecto tiene como objetivo modularizar el archivo Windows.h, para incluir solo lo que necesita.
Todas las contribuciones son bienvenidas . Si hacemos que esto sea un esfuerzo colaborativo, se puede completar mucho más rápido. Si falta alguna función, no dude en agregarla y enviar una solicitud de extracción. Los fusionaré lo antes posible.
El único directorio de interés es include
, copie el contenido del directorio a su proyecto, configure la ruta de inclusión para que apunte al directorio que contiene el directorio win32
.
Debido a los nombres muy genéricos y al peligro de colisiones de nombres, se recomienda mantenerlos siempre en el directorio win32
y mantenerlo explícito en las directivas de inclusión: #include
.
El directorio win32
contiene lo siguiente:
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
'ing los archivos anteriores):windows_modular.h
windows.h
windows_base.h
está incluido en cada uno de los archivos de inclusión modulares y contiene los tipos, macros y estructuras requeridos utilizados por múltiples módulos.
Intentamos proporcionar un reemplazo completo de los propios encabezados de Microsoft, manteniendo al mismo tiempo una cantidad razonable de compatibilidad y sin romper ningún código existente.
Sin embargo, hay algunos cambios importantes que debes tener en cuenta:
A
o W
, por ejemplo CreateFileA
y CreateFileW
.MIN
/ MAX
, lo que equivale a #define NOMINMAX
. El directorio test
contiene un caso de prueba simple.
El caso de prueba consiste en compilar cada archivo de módulo con las advertencias completas activadas, esto garantizará que se cumplan todas las dependencias y no se emitan advertencias.
Se puede ejecutar llamando a:
$ nmake
Requiere CL.EXE
y NMAKE.EXE
en su ruta.
Este proyecto contiene partes del SDK de Microsoft Windows. Tienen licencia según el EULA de Microsoft. Para usarlo debes leerlo y aceptarlo.
El resto tiene doble licencia bajo la licencia "MIT" y "Sin licencia".