<Return[A]><Top>

acmDriverAdd

Declare Function Api_acmDriverAdd& Lib "msacm32" Alias "acmDriverAddA" (ByRef phadid&, ByVal hinstModule&, ByVal lParam&, ByVal dwPriority&, ByVal fdwAddACM&)

Declare Function acmDriverAdd Lib "msacm32" Alias "acmDriverAddA" (ByRef phadid As Long, ByVal hinstModule As Long, ByVal lParam As Long, ByVal dwPriority As Long, ByVal fdwAddACM As Long) As Long

利用可能な ACM ドライバの一覧に、ドライバを追加する。ドライバの種類とその場所は、ACM ドライバの追加に使うフラグによって異なる。

ドライバの追加に成功すると、ドライバエントリ関数は ACM ドライバメッセージを受信する。

パラメータ

phadid
    インストールされたドライバのハンドルを格納するアドレスを指定する。このハンドルは、他の ACM 関数を呼び出してドライバを識別するために

    使う。
hinstModule
    ドライバエントリ関数を含む実行可能ファイルまたは DLL(ダイナミックリンクライブラリ)を持つモジュールのインスタンスのハンドルを指定する。
lParam
    ドライバ関数のアドレスまたは通知ウィンドウハンドルのいずれかを指定する。この値は、fdwAdd パラメータの値によって異なる。
dwPriority
    通知ブロードキャストを要求するウィンドウメッセージを指定する。このパラメータは、fdwAdd パラメータが

    ACM_DRIVERADDF_NOTIFYHWND に設定されている場合にのみ使う。他の値が設定されている場合は、このメンバに 0 を指定す

    る。
fdwAddACM
    ドライバを追加するためのフラグを設定する。次の値が定義されている。
    ACM_DRIVERADDF_FUNCTION
        lParam パラメータは、acmDriverProc プロトタイプに準拠するドライバ関数のアドレスである。この関数は、実行可能ファイルまたは

        DLL ファイルのいずれかにある。
    ACM_DRIVERADDF_GLOBAL
        16 ビットアプリケーションとの互換性のために提供されている。Win32 API の場合、acmDriverAdd 関数で追加された ACM ドライバを

        使えるのは、この値が指定されているかどうかにかかわらず、そのドライバを追加したアプリケーションのみである。
    ACM_DRIVERADDF_LOCAL
        関数の呼び出すのに適切なドライバを検索するときに、ACM によって自動的に、グローバルドライバよりもローカルドライバが優先される。
    ACM_DRIVERADDF_NOTIFYHWND
        lParam パラメータは、グローバルドライバの優先順位および状態が変更されるとメッセージを受け取る、通知ウィドウのハンドルである。

        受け取るウィンドウメッセージはアプリケーションによって定義され、必ず dwPriority パラメータに渡される。wParam パラメータおよび

        lParam パラメータは、将来のために予約されているので無視される。ACM_DRIVERADDF_GLOBAL をこのフラグとともに設定すること

        はできない。

戻り値
    関数が成功すると 0 が返る。
    関数が失敗するとエラーが返る。返されるエラー値は次のとおりである。

    値                                             

説明                                                    

    MMSYSERR_INVALFLAG

少なくとも 1 つのフラグが無効である。

    MMSYSERR_INVALPARAM

少なくとも 1 つのパラメータが無効である。

    MMSYSERR_NOMEM

システムはリソースを割り当てられない。