Platform SDK: DirectX

IDirectInputDevice7::Initialize

IDirectInputDevice7::Initialize メソッドは、DirectInputDevice オブジェクトを初期化する。IDirectInput7::CreateDevice メソッドは、デバイスの作成後、自動的にデバイスを初期化するので、アプリケーションは通常、このメソッドを呼び出す必要はない。

HRESULT Initialize(
  HINSTANCE hinst,  
  DWORD dwVersion,  
  REFGUID rguid     
);

パラメータ

hinst
DirectInput オブジェクトを作成するアプリケーションまたは DLL のインスタンス ハンドル。DirectInput は、この値を使用して、アプリケーションまたは DLL が、オブジェクト作成の資格を認められているかどうかを判断し、下位互換性のためにとるべき特別な動作を確定する。

DLL が親のアプリケーションのハンドルを渡すと、エラーとなる。たとえば、Web ページに埋め込まれている DirectInput を使用する ActiveX コントロールは、Web ブラウザのハンドルではなく、それ自身のインスタンスのハンドルを渡さなければならない。これにより、DirectInput がそのコントロールを認識し、必要と思われる特別な動作をすべて有効にすることが確実になる。

dwVersion
アプリケーションの設計対象である DirectInput のバージョン番号。この値は通常、DIRECTINPUT_VERSION である。以前のバージョン番号を渡すと、DirectInput がそのバージョンをエミュレートすることになる。詳細については、「前のバージョンの DirectInput の設計」を参照すること。
rguid
インターフェイスを関連付けるデバイスのインスタンスに対する識別子。IDirectInput7::EnumDevices メソッドを使うと、システムがどのインスタンス GUID をサポートしているかを確認することができる。

戻り値

成功すれば DI_OK を返す。

失敗すれば次のエラー値のいずれかを返す。

DIERR_ACQUIRED
DIERR_DEVICENOTREG

S_FALSE が返されれば、rGUID を介して渡されたインスタンス GUID を持つデバイスは初期化済みである。

注意

このメソッドが失敗する場合、基底のオブジェクトは不定の状態にあるものとみなし、使用前に再初期化しなければならない。

動作環境

  Windows NT/2000 :Windows 2000 が必要。
  Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
  ヘッダー : dinput.h で宣言。
  インポート ライブラリ : dinput.lib を使用。