acmDriverMessage 関数 (msacm.h)

acmDriverMessage 関数は、特定の ACM ドライバー インスタンスにユーザー定義メッセージを送信します。

構文

LRESULT ACMAPI acmDriverMessage(
  HACMDRIVER had,
  UINT       uMsg,
  LPARAM     lParam1,
  LPARAM     lParam2
);

パラメーター

had

メッセージの送信先となる ACM ドライバー インスタンスへのハンドル。

uMsg

ACM ドライバーが処理する必要があるメッセージ。 このメッセージは、ACMDM_USERメッセージ範囲 (ACMDM_USER以上、ACMDM_RESERVED_LOW未満) である必要があります。 この制限の例外は、メッセージのACMDM_DRIVER_ABOUT、 DRV_QUERYCONFIGUREおよびDRV_CONFIGURE です。

lParam1

Message パラメーター。

lParam2

Message パラメーター。

戻り値

戻り値は、uMsg パラメーターで指定されたユーザー定義の ACM ドライバー メッセージに固有です。 ただし、考えられるエラー値は次のとおりです。

リターン コード 説明
MMSYSERR_INVALHANDLE
指定されたハンドルが無効です。
MMSYSERR_INVALPARAM
uMsg パラメーターがACMDM_USER範囲内にありません。
MMSYSERR_NOTSUPPORTED
ACM ドライバーがメッセージを処理しませんでした。

解説

ACM ドライバーからカスタムバージョン情報ダイアログ ボックスを表示するには、アプリケーションがドライバーにACMDM_DRIVER_ABOUTメッセージを送信する必要があります。 lParam1 パラメーターは、カスタムの [バージョン情報] ダイアログ ボックスの所有者ウィンドウのハンドルであり、lParam2 を 0 に設定する必要があります。 ドライバーがカスタムの [バージョン情報] ダイアログ ボックスをサポートしていない場合は、MMSYSERR_NOTSUPPORTEDが返され、独自のダイアログ ボックスを表示するのはアプリケーションの責任です。 たとえば、لوحة التحكم Sound Mapper オプションは、ACM ドライバーがMMSYSERR_NOTSUPPORTEDを返すときに、ACMDRIVERDETAILS 構造体に基づいて既定の [バージョン情報] ダイアログ ボックスを表示します。 アプリケーションは、 lParam1 を –1L に設定することで、ダイアログ ボックスを表示せずに、カスタムバージョン情報ダイアログ ボックスのサポートをドライバーに照会できます。 ドライバーがカスタムの [バージョン情報] ダイアログ ボックスをサポートしている場合は、MMSYSERR_NOERRORが返されます。 それ以外の場合、戻り値はMMSYSERR_NOTSUPPORTED。

ユーザー定義メッセージは、メッセージを特にサポートする ACM ドライバーにのみ送信する必要があります。 呼び出し元は、ドライバーの詳細を取得し、ACMDRIVERDETAILS 構造体の wMidwPid、および vdwDriver メンバーを確認することで、ACM ドライバーが正しいドライバーであることを確認する必要があります。

不明な ACM ドライバーにユーザー定義メッセージを送信しないでください。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー msacm.h
Library Msacm32.lib
[DLL] Msacm32.dll

関連項目

オーディオ圧縮関数

オーディオ圧縮マネージャー