Microsoft DirectX 8.1 (C++)

Step 4: Setting the Keyboard Behavior

Before your application can gain access to the keyboard, it must set the device's behavior using the IDirectInputDevice8::SetCooperativeLevel method, as shown in Sample Function 1: DI_Init. This method accepts the handle to the window to be associated with the device and a combination of flags that determine the cooperative level. In this case the application is requesting foreground, nonexclusive access.

The following example attempts to set the device's cooperative level. If this fails, it calls the DI_Term application-defined sample function to deallocate existing Microsoft® DirectInput® objects, if any.

// Set the cooperative level 
hr = g_lpDIDevice->SetCooperativeLevel(g_hwndMain, 
                   DISCL_FOREGROUND | DISCL_NONEXCLUSIVE); 
 
if FAILED(hr) { 
    DI_Term(); 
    return FALSE; 
} 

After setting the keyboard behavior, go to Step 5: Gaining Access to the Keyboard.