<Return[PQ]><Top>

PlaySound

Declare Function Api_PlaySound& Lib "winmm" Alias "PlaySoundA" (ByVal lpszName$, ByVal hModule&, ByVal dwFlags&)

Declare Function PlaySound Lib "winmm" Alias "PlaySoundA" (ByVal lpszName As String, ByVal hModule As Long, ByVal dwFlags As Long) As Long

ファイル名、リソース、システムイベントのいずれかで指定されたサウンドを再生する。各システムイベントは、レジストリ内または WIN.INI ファイル内で、1 つのサウンドに関連付けることもできる。

パラメータ
pszSound
    再生対象のサウンドを、NULL で終わる文字列で指定する。

    NULL を指定すると、現在再生中のウェーブフォームサウンドが停止する。

    ウェーブフォーム以外のサウンドを停止するには、fdwSound パラメータで SND_PURGE フラグを指定する。
    fdwSound パラメータの 3 つのフラグ、SND_ALIAS、SND_FILENAME、SND_RESOURCE は、pszSound パラメータで指定した文字

    列が、システムイベントの別名、ファイル名、リソース識別子のどれを指すかを指定する。これらのフラグがいずれも指定されていない場合、

    PlaySound 関数は、レジストリ内または WIN.INI ファイル内で、指定されたサウンド名の関連付けを検索する。該当する関連付けが見つ

    かった場合、そのサウンドイベントが再生される。関連付けが見つからなかった場合、その名前はファイル名と解釈される。
hmod
    fdwSound パラメータで SND_RESOURCE を指定した場合、ロード対象のリソースを保持している実行可能ファイルのインスタンスハンドルを

    指定する。それ以外の場合、NULL を指定する。
fdwSound
    サウンド再生のフラグを指定する。次のフラグの組み合わせを指定する。

    値                               

意味                                                                                                                                         

    SND_APPLICATION

アプリケーション特有の関連付けを使ってサウンドを再生する。

    SND_ALIAS

 

pszSound パラメータは、レジストリまたは WIN.INI ファイルに記述されているシステムイベントの別名

(エイリアス)である。SND_FILENAME や SND_RESOURCE と同時に指定することはできない。

    SND_ALIAS_ID

pszSound パラメータは、定義済みのサウンド識別子("SystemStart"、"SystemExit" など)である。

    SND_ASYNC

 

 

サウンドを非同期再生し、サウンドが開始されると、PlaySound 関数は即座に制御を返す。

非同期再生されているサウンドを停止するには、pszSound パラメータで NULL を指定して PlaySound 関数を呼

び出す。

    SND_FILENAME

pszSound パラメータは、ファイル名を表す。

    SND_LOOP

 

 

サウンドを繰り返し再生する。pszSound パラメータで NULL を指定して PlaySound 関数を呼び出すと、サウン

ドが停止する。サウンドイベントを非同期再生するよう指示するために、SND_ASYNC と同時に指定しなければな

らない。

    SND_MEMORY

 

サウンドイベントのファイルは、メモリ内に既にロードされている。

pszSound パラメータは、メモリ内のサウンドイメージへのポインタを表す。

    SND_NODEFAULT

 

既定のサウンドイベントを使わない。指定されたサウンドが見つからなかった場合、PlaySound 関数は、既定の

サウンド(一般の警告音)を再生せずに静かに制御を返す。

    SND_NOSTOP

 

 

 

既にほかのサウンドが再生されている場合、指定されたサウンドを再生しません。

指定されたサウンドを再生するために必要なリソースが、ほかのサウンドを再生していてビジーであり、指定された

サウンドを再生できない場合、この関数は指定されたサウンドを再生せずに、即座に FALSE を返す。
このフラグを指定しなかった場合、PlaySound 関数は現在再生されているサウンドを停止して、指定された新しい

サウンドを再生しようとする。

    SND_NOWAIT

ドライバがビジー状態の場合、指定されたサウンドを再生せずに即座に制御を返す。

    SND_PURGE

 

 

呼び出し側タスクに関係するサウンドの再生を停止する。pszSound パラメータが NULL ではない場合、指定し

たサウンドのすべてのインスタンスを停止する。pszSound パラメータが NULL の場合、呼び出し側タスクに関係

するすべてのサウンドを停止する。

    SND_RESOURCE

 

パラメータで指定したサウンドイベントを停止させる場合は、hmod パラメータでインスタンスハンドルも指定しなけれ

ばならない。

    SND_RESOURCE

 

pszSound パラメータは、リソース識別子を表す。hmod パラメータで、リソースを保持している実行可能ファイルの

インタンスハンドルを指定しなければならない。

    SND_SYNC

サウンドイベントを同期再生する。PlaySound 関数は、サウンドの再生が完了した後で制御を返す。


戻り値
    関数が成功すると、TRUE が返る。関数が失敗すると、FALSE が返る。