MSDN

Microsoft Developer Network

Windows API Reference: Introduction

Welcome to the Windows API Reference. This comprehensive resource provides detailed information on the functions, structures, enumerations, and other programming elements available in the Windows operating system. Whether you are developing native Windows applications, COM components, or leveraging Windows services, this documentation is your primary guide.

Getting Started

For new developers, we recommend starting with the Windows Programming Concepts section to understand the fundamental principles and architecture.

What is the Windows API?

The Windows API (Application Programming Interface) is a set of routines, protocols, and tools for building software applications. It allows developers to interact directly with the operating system, access hardware, manage processes, and create rich user interfaces. The core of the Windows API is implemented in dynamic-link libraries (DLLs) such as kernel32.dll, user32.dll, and gdi32.dll.

Key Components

Navigating the Reference

The API Reference is organized by subsystem and functional area. You can browse through the categories on the left-hand navigation pane or use the powerful search functionality to find specific topics. Each topic typically includes:

Example Structure

Here's a typical function reference page structure:


<h3>FunctionName</h3>
<p><code>ReturnType FunctionName(<br>
  <span>[in] DataType param1,</span><br>
  <span>[out] DataType* param2</span>
</code></p> <h4>Parameters</h4> <ul> <li><code>param1</code>: [in] Description of the first parameter.</li> <li><code>param2</code>: [out] Description of the second parameter.</li> </ul> <h4>Return Value</h4> <p>Description of the return value. <code>ERROR_SUCCESS</code> on success.</p> <h4>Remarks</h4> <p>Additional information and usage notes.</p> <h4>Requirements</h4> <ul> <li><strong>Client:</strong> Windows XP Professional SP2, Windows Vista, Windows 7, Windows 8</li> <li><strong>Server:</strong> Windows Server 2008 R2, Windows Server 2012</li> <li><strong>Header:</strong> included in windows.h</li> <li><strong>Library:</strong> user32.lib</li> </ul> <h4>See Also</h4> <ul> <li><a href="...">RelatedFunction1</a></li> <li><a href="...">RelatedStructure</a></li> </ul>