Platform SDK: DirectX |
この関数はもう使用されていないが、DirectX 3 を使用して作成されたアプリケーションとの互換性を保つために残されている。アプリケーションで目的の DirectPlay インターフェイスを作成するときは CoCreateInstance を直接使用することを推奨する。CoCreateInstance を使用すると、IDirectPlay インターフェイスを取得して、QueryInterface により IDirectPlay4 インターフェイスにアクセスし、IDirectPlay インターフェイスを解放しなくても IDirectPlay4 インターフェイスを直接取得できる。
DirectPlayCreate 関数は、新しい DirectPlay オブジェクトを作成し、IDirectPlay インターフェイス ポインタを取得する。アプリケーションで lpGUIDSP パラメータに GUID_NULL が指定された場合、この関数は、DirectPlay オブジェクトは作成するが、サービス プロバイダは初期化しない。アプリケーションは、IDirectPlay4::InitializeConnection メソッドを呼び出してサービス プロバイダまたはロビー プロバイダを初期化する。
アプリケーションは、サービス プロバイダの GUID (DirectPlayEnumerate を参照すること) を指定して、バインドするサービス プロバイダを指定できる。
最新の DirectPlay 機能を使用するために、アプリケーションは QueryInterface メソッドを使用して IDirectPlay4 または IDirectPlay4A インターフェイス ポインタを取得する必要がある。
HRESULT WINAPI DirectPlayCreate( LPGUID lpGUIDSP, LPDIRECTPLAY FAR *lplpDP, IUnknown *lpUnk );
成功した場合は DP_OK を返す。失敗した場合は、次のエラー値のいずれかを返す。
CLASS_E_NOAGGREGATION |
DPERR_EXCEPTION |
DPERR_INVALIDPARAMS |
DPERR_UNAVAILABLE |
DirectPlay オブジェクトを作成できなかった場合は、DPERR_UNAVAILABLE を返す。指定された GUID が無効な場合は、DPERR_INVALIDPARAMS を返す。
この関数は、DirectPlay オブジェクトを初期化して、それが成功した場合はそのオブジェクトへのポインタを設定しようとする。アプリケーションは、使用可能なサービス プロバイダのタイプを判定するために、初期化処理の直前に DirectPlayEnumerate 関数を呼び出す (DirectPlayEnumerate 関数により DirectPlayCreate の lpGUIDSP パラメータが設定される)。
この関数は、IDirectPlay インターフェイスへのポインタを返す。カレント インターフェイスは、IDirectPlay4 と IDirectPlay4A であり、これらはこの IDirectPlay インターフェイスで QueryInterface メソッドを呼び出して取得する必要がある。詳細については、DirectPlay インターフェイスの概要を参照すること。
Windows NT/2000 : Windows 2000 が必要。
Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
ヘッダー : dplay.h で宣言。
インポート ライブラリ : dplayx.lib を使用。