SOUNDサウンド関数

本ページには広告が含まれています。

サウンドを再生します。.wav,.mid,.avi,.mp3は再生できますが、.m4a,.oggは再生できません。音声ファイルが見つからない場合エラー音が鳴ります。

.aviの動画ファイルを再生するときウィンドウのクラス名はAVIWnd32です。

構文
  1. void = SOUND( ファイル名, 同期フラグ, WAV出力先 )
引数
ファイル名 (String)必須
再生ファイル名(WAV, MID, AVI等, 'BEEP' 指定にてBEEP音)もしくはサウンドにて割り当てられたイベント名('LowBatteryAlarm', 'MailBeep', 'SystemAsterisk'等) (ファイル名を省略すると再生をストップ)
同期フラグ (Boolean = False)省略可
FALSE
待たない (デフォルト)
TRUE
終了を待つ
WAV出力先 (Integer = 0)省略可
WAVファイル時の再生デバイス (0から、デフォルト=0)
戻り値

イベント名

サウンドのイベント名はレジストリのHKEY_CURRENT_USER\AppEvents\EventLabels\のサブキーに割り当てられています。

レジストリ エディター

サブキーの一覧は以下のプログラムで取得することができます。

UWSC
結果
プレーンテキスト

これらのサブキーはコントロール パネル\ハードウェアとサウンドのシステムサウンドの変更で開くウィンドウのサウンドタブにあるプログラム イベントと対応しています。

サウンド

以下はレジストリのサブキーとプログラム イベント名の対応表です。システムサウンドの変更でプログラム イベントで初めから表示されているものには初期表示の項目に◯をつけています。

カテゴリはWindows、エクスプローラー、Windows 音声認識は必ずありますが、その他の項目はインストールしているソフトによって違いがあります。

カテゴリ 項目 イベント名 初期表示
Windows
NFP 完了Notification.Proximity◯
NFP 接続ProximityConnection◯
Windows のロック解除WindowsUnlock✕
Windows の終了SystemExit✕
Windows テーマの変更ChangeTheme◯
Windows ユーザー アカウント制御WindowsUAC◯
Windows ログオフWindowsLogoff✕
Windows ログオンWindowsLogon✕
アラーム 1Notification.Looping.Alarm✕
アラーム 10Notification.Looping.Alarm10✕
アラーム 2Notification.Looping.Alarm2✕
アラーム 3Notification.Looping.Alarm3✕
アラーム 4Notification.Looping.Alarm4✕
アラーム 5Notification.Looping.Alarm5✕
アラーム 6Notification.Looping.Alarm6✕
アラーム 7Notification.Looping.Alarm7✕
アラーム 8Notification.Looping.Alarm8✕
アラーム 9Notification.Looping.Alarm9✕
インスタント メッセージの通知Notification.IM◯
システム エラーSystemHand◯
システム通知SystemNotification◯
ツール バー バンドの表示ShowBand◯
デスクトップ メールの通知MailBeep◯
デバイスの切断DeviceDisconnect◯
デバイスの接続DeviceConnect◯
デバイス接続の失敗DeviceFail◯
バッテリ低下アラームLowBatteryAlarm◯
バッテリ切れアラームCriticalBatteryAlarm◯
プログラム エラーAppGPFault◯
プログラムの終了Close◯
プログラムの起動Open◯
メッセージ (問い合わせ)SystemQuestion◯
メッセージ (情報)SystemAsterisk◯
メッセージ (警告)SystemExclamation◯
メッセージのシェイクMessageNudge◯
メニュー コマンドMenuCommand◯
メニュー ポップアップMenuPopup◯
一般の警告音.Default◯
予定表のアラームNotification.Reminder◯
元に戻す (拡大)RestoreUp◯
元に戻す (縮小)RestoreDown◯
印刷完了PrintComplete◯
新着テキスト メッセージの通知Notification.SMS◯
新着ファックスの通知FaxBeep◯
新着メールの通知Notification.Mail◯
最大化Maximize◯
最小化Minimize◯
着信呼の通知 1Notification.Looping.Call✕
着信呼の通知 10Notification.Looping.Call10✕
着信呼の通知 2Notification.Looping.Call2✕
着信呼の通知 3Notification.Looping.Call3✕
着信呼の通知 4Notification.Looping.Call4✕
着信呼の通知 5Notification.Looping.Call5✕
着信呼の通知 6Notification.Looping.Call6✕
着信呼の通知 7Notification.Looping.Call7✕
着信呼の通知 8Notification.Looping.Call8✕
着信呼の通知 9Notification.Looping.Call9✕
通知Notification.Default◯
選択CCSelect◯
Microsoft Visual Studio
Breakpoint HitVS_BreakpointHit◯
ビルドが取り消されましたVS_BuildCanceled◯
ビルド失敗VS_BuildFailed◯
ビルド正常終了VS_BuildSucceeded◯
エクスプローラー
FAX の送信FaxSent◯
FAX エラーFaxError◯
ごみ箱を空にするEmptyRecycleBin◯
ナビゲーションの完了ActivatingDocument◯
ナビゲーションの開始Navigating◯
フィードの発見FeedDiscovered◯
ポップアップ ウィンドウのブロックBlockedPopup◯
メニュー項目の移動MoveMenuItem◯
情報バーSecurityBand
検索プロバイダーの発見SearchProviderDiscovered◯
着信呼び出しFaxLineRings◯
通知バー◯
Windows 音声認識
オフHubOffSound◯
オンHubOnSound◯
スリープ状態HubSleepSound◯
不明瞭解消パネルPanelSound◯
不明瞭解消数字DisNumbersSound◯
誤認識MisrecoSound◯
Microsoft Visual C++ 2010 Express
ビルドが取り消されました◯
ビルド失敗◯
ビルド正常終了◯
VNCviewer
Bell◯

初期表示されていない項目はレジストリを操作することで表示させることができます。HKEY_CURRENT_USER\AppEvents\EventLabels\のサブキーを選択したとき値の名前にExcludeFromCPLがあるものが表示・非表示を切り替えることができる項目で、このデータを0にすることで表示することができます。1で非表示に戻すこともできます。

レジストリ エディター ExcludeFromCPL

以下のプログラムは初期表示されていない項目を表示させます。valueの値を0で項目を表示、1で非表示にします。

UWSC

これらのイベント名はSOUND関数の第一引数に指定することで鳴らすことができます。

以下はすべてのイベント名を取得しそのサウンドを再生させるプログラムです。ESCで強制終了することができます。

UWSC

レジストリのHKEY_CURRENT_USER\AppEvents\Schemes\Apps\.Default\<イベント名>\.Currentの(既定)の値にはサウンドのWAVファイルのパスが設定されています。

以下はイベント名からWAVファイルのパスを取得します。

UWSC
結果
CSV

同期フラグ

音声ファイルが終了してから処理を進める場合はTrueを指定します。

UWSC

同期フラグにFalseを指定すると音声を再生してから終了を待たずに次の処理に進み、処理が終わると音声が止まります。

UWSC

音声を繰り返し流す

スレッドを使いメインルーチンと別に音声を流す処理を組み込みます。

UWSC

メインルーチンが終わるまで音声を流し続けるにはSOUND関数をWHILE文で無限ループにします。

UWSC

WAV出力先取得

タスクトレイのスピーカーを右クリック、[サウンドの設定を開く]、右側の関連設定から[サウンド コントロールパネル]で再生デバイスとサウンドが出力されているデバイスを確認することができます。アイコンにチェックマークが入っていて[既定のデバイス]と表示されているものが0を指定したときのデフォルトの出力先となります。

サウンド コントロールパネル

サウンドが再生されているときは以下のように緑色のバーが動くので再生デバイスの確認をすることができます。

サウンド コントロールパネル 再生時

使い方

絶対パスで指定

D:\Desktop\sample.wavのWAVファイルを再生します。

UWSC

環境変数を含むパスの指定

環境変数を含むパス文字列を指定することもできます。以下は%SystemRoot%\media\Alarm01.wavのサウンドを再生します。

UWSC

プログラム実行例

Windows通知のwavファイルを再生する

C:\Windows\Media\Windows Notify.wavを再生します。

UWSC
使用関数

フォルダ内の音声ファイルをすべて再生

UWSC
使用関数

指定フォルダ内の曲をトラック番号順で再生

UWSC
使用関数

BEEP音を鳴らす

UWSC
使用関数