InitOnceInitialize function (Windows)

Switch View :
ScriptFree
InitOnceInitialize function

Applies to: desktop apps | Metro style apps

Initializes a one-time initialization structure.

Syntax

VOID WINAPI InitOnceInitialize(
  __out  PINIT_ONCE InitOnce
);

Parameters

InitOnce [out]

A pointer to the one-time initialization structure.

Return value

This function does not return a value.

Remarks

The InitOnceInitialize function is used to initialize a one-time initialization structure dynamically. To initialize the structure statically, assign the constant INIT_ONCE_STATIC_INIT to the structure variable.

To compile an application that uses this function, define _WIN32_WINNT as 0x0600 or later. For more information, see Using the Windows Headers.

Examples

The following example calls InitOnceInitialize to initialize the one-time initialization structure named InitOnce. Alternatively, the structure can be declared as a global variable as shown in Using One-Time Initialization.

C++


//Requires Windows Vista, Windows Server 2008 or later
#define _WIN32_WINNT 0x0600

#include <windows.h>

BOOL StartInitialization()
{
    INIT_ONCE InitOnce;

    InitOnceInitialize(&InitOnce);

    //...
    return TRUE;
}


Requirements

Minimum supported client

Windows Vista

Minimum supported server

Windows Server 2008

Header

WinBase.h (include Windows.h)

Library

Kernel32.lib

DLL

Kernel32.dll

See also

InitOnceExecuteOnce
One-Time Initialization
Synchronization Functions

 

 

Send comments about this topic to Microsoft

Build date: 3/7/2012