<Windows.h>Es un archivo de encabezado de código fuente que Microsoft proporciona para el desarrollo de programas que acceden a la API de Windows (WinAPI) mediante el lenguaje C. Declara las funciones de WinAPI, los tipos de datos asociados y las macros comunes.
El acceso a WinAPI se puede habilitar para un programa C o C++ incluyéndolo en un archivo fuente:
// en C: #include <Windows.h>// en C++: import < Windows . h > ;Además, el ejecutable debe vincularse a cada biblioteca estática que contenga el código de la función o, más comúnmente, que defina la vinculación dinámica en tiempo de ejecución a una biblioteca de vínculos dinámicos (DLL) del sistema. Generalmente, para las funciones en una DLL llamada Abc.dll , el programa debe vincularse a una biblioteca llamada Abc.lib . Para MinGW , el nombre de la biblioteca es libAbc.dll.a .
Archivos de encabezado incluidos
La inclusión de Windows.h conlleva la inclusión de varios otros archivos de cabecera que son incluidos directa o indirectamente por Windows.h . Muchos de estos archivos de cabecera no pueden incluirse por sí solos debido a las dependencias entre los distintos archivos de cabecera.
Archivos de cabecera incluidos destacados:
Estándar C
Básico
Extra
OLE y COM
Macros
Varias macros afectan a las definiciones realizadas por <windows.h>y a los archivos que incluye.
UNICODE; cuando se define, esto hace que el tipo de datos de texto genéricoTCHARsea un sinónimo de WCHAR en lugar de CHAR , [ 1 ] y todas las funciones y mensajes de API genéricos que trabajan con texto se definirán en las versiones -W en lugar de las versiones -A. Es similar a la macro del entorno de ejecución de C de Windows._UNICODERC_INVOKEDSe define cuando se utiliza el compilador de recursos ( RC.EXE ) en lugar de un compilador C.WINVERSe utiliza para habilitar funciones disponibles solo en sistemas operativos más recientes. Defínalo para0x0501Windows XP y0x0600para Windows Vista .WIN32_LEAN_AND_MEANSe utiliza para reducir el tamaño de los archivos de cabecera y acelerar la compilación. Excluye elementos como la criptografía , DDE , RPC , el shell de Windows y Winsock .
Otros idiomas
Microsoft tiene previsto actualizar la API de Windows para su uso en C++ moderno con su win32metadataproyecto. [ 12 ] Actualmente, existen C++/WinRT y la "Biblioteca de Implementación de Windows" (WIL) para realizar esta tarea en C++ moderno. Microsoft también ha creado enlaces para otros lenguajes, como C# y Rust, para llamar a la API de Win32. [ 13 ]
Véase también
Referencias
- 1 2 "Tipos de datos de Windows" . learn.microsoft.com. 7 de noviembre de 2024.
- ↑ "encabezado guiddef.h" . learn.microsoft.com. 23 de enero de 2023.
- ↑ "winerror.h header" . learn.microsoft.com. 23 de enero de 2023.
- ↑ "wingdi.h header" . learn.microsoft.com. 23 de enero de 2023.
- ↑ "winnetwk.h header" . learn.microsoft.com. 23 de enero de 2023.
- ↑ «encabezado winnt.h» . aprender.microsoft.com. 23 de enero de 2023.
- ↑ "winreg.h header" . learn.microsoft.com. 23 de enero de 2023.
- ↑ "Macro MAKEINTRESOURCEA (winuser.h)" . learn.microsoft.com. 19 de noviembre de 2024.
- ↑ "Macro DialogBoxA (winuser.h)" . learn.microsoft.com. 22 de febrero de 2024.
- ↑ "encabezado winuser.h" . learn.microsoft.com. 23 de enero de 2023.
- ↑ "encabezado winver.h" . learn.microsoft.com. 23 de enero de 2023.
- ↑ "Haciendo que las API de Win32 sean más accesibles para más lenguajes" . blogs.windows.com. 21 de enero de 2021.
- ↑ "win32metadata" . Consultado el 4 de septiembre de 2025 .
- Encabezados de C (lenguaje de programación)
- Bibliotecas de C (lenguaje de programación)
- Interfaces de programación de aplicaciones de Microsoft
- API de Windows
- Herramientas de programación para Windows