Articulo de referencia

Windows.h

<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 ...

<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érico TCHARsea 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._UNICODE
  • RC_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 para 0x0501Windows XP y 0x0600para 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. 1 2 "Tipos de datos de Windows" . learn.microsoft.com. 7 de noviembre de 2024.
  2. "encabezado guiddef.h" . learn.microsoft.com. 23 de enero de 2023.
  3. "winerror.h header" . learn.microsoft.com. 23 de enero de 2023.
  4. "wingdi.h header" . learn.microsoft.com. 23 de enero de 2023.
  5. "winnetwk.h header" . learn.microsoft.com. 23 de enero de 2023.
  6. «encabezado winnt.h» . aprender.microsoft.com. 23 de enero de 2023.
  7. "winreg.h header" . learn.microsoft.com. 23 de enero de 2023.
  8. "Macro MAKEINTRESOURCEA (winuser.h)" . learn.microsoft.com. 19 de noviembre de 2024.
  9. "Macro DialogBoxA (winuser.h)" . learn.microsoft.com. 22 de febrero de 2024.
  10. "encabezado winuser.h" . learn.microsoft.com. 23 de enero de 2023.
  11. "encabezado winver.h" . learn.microsoft.com. 23 de enero de 2023.
  12. "Haciendo que las API de Win32 sean más accesibles para más lenguajes" . blogs.windows.com. 21 de enero de 2021.
  13. "win32metadata" . Consultado el 4 de septiembre de 2025 .