Windows sockets


windows.h is a Windows-specific header file for the C programming language which contains all the function declarations in the API, as well as declarations for all the common macros used by windows programmers, and all the data types used by the various functions and subsystems. It defines a very large amount of windows specific functions that can be used with C. The Win32 API can be added to a C programming project by linking to the appropriate libraries (kernel32.lib, user32.lib and gdi32.lib), and by including the <windows.h> header file.

There are a number of child header files that are automatically included with windows.h. Many of these files cannot simply be included by themselves, because of dependencies.

windows.h may include any of the following header files:

“Lean and mean” includes:

  • excpt.h – Exception handling
  • stdarg.h – variable-argument functions (standard C header)
  • windef.h – various macros and types
  • winnt.h – various macros and types (for Windows NT)
  • basetsd.h – various types
  • guiddef.h – the GUID type
  • ctype.h – character classification (standard C header)
  • string.h – strings and buffers (standard C header)
  • winbase.h – kernel32.dll: kernel services
  • winerror.h – Windows error codes
  • wingdi.h – GDI (Graphics Device Interface)
  • winuser.h – user32.dll: user services
  • winnls.h – NLS (Native Language Support)
  • wincon.h – console services
  • winver.h – version information
  • winreg.h – Windows registry
  • winnetwk.h – WNet (Windows Networking)
  • winsvc.h – Windows services and the SCM (Service Control Manager)
  • imm.h – IME (Input Method Editor)

Extra includes:

  • cderr.h – CommDlgExtendedError function error codes
  • commdlg.h – Common Dialog Boxes
  • dde.h – DDE (Dynamic Data Exchange)
  • ddeml.h – DDE Management Library
  • dlgs.h – various constants for Common Dialog Boxes
  • lzexpand.h – LZ (Lempel-Ziv) compression/decompression
  • mmsystem.h – Windows Multimedia
  • nb30.h – NetBIOS
  • rpc.h – RPC (Remote procedure call)
  • shellapi.h – Windows Shell API
  • wincrypt.h – Cryptographic API
  • winperf.h – Performance monitoring
  • winresrc.h – used in resources
  • winsock.h – Winsock (Windows Sockets), version 1.1
  • winsock2.h – Winsock (Windows Sockets), version 2
  • winspool.h – Print Spooler

OLE and COM:

  • ole2.h – OLE (Object Linking and Embedding)
  • objbase.h – COM (Component Object Model)
  • oleauto.h – OLE Automation
  • olectlid.h – various GUID definitions


Several macros affect the behavior of windows.h.

  • UNICODE – when defined, this causes TCHAR to be a synonym of WCHAR instead of CHAR, and all type-generic API functions and messages that work with text will be defined to the -W versions instead of the -A versions. (It is similar to the standard C library's _UNICODE macro.)
  • RC_INVOKED – defined when the resource compiler (RC.EXE) is in use instead of a C compiler.
  • WINVER – used to enable features only available in newer operating systems. Define it to 0x0501 for Windows XP, and 0x0600 for Windows Vista.
  • WIN32_LEAN_AND_MEAN – used to reduce the size of the header files and speed up compilation. Excludes things like cryptography, DDE, RPC, the Windows Shell and Winsock.

See also

Search another word or see Windows socketson Dictionary | Thesaurus |Spanish
Copyright © 2015, LLC. All rights reserved.
  • Please Login or Sign Up to use the Recent Searches feature