* U K I Y A H O N P O *
Nel mezzo del cammin di nostra vita mi ritrovai per una selva oscura,
che la diritta via era smarrita.
ホーム
一覧
検索
最終更新
リンク
ヘルプ
ソース
新規
リンク
手動リンク
自動相互リンク
駄でべWiki:FrontPage
リンク元
検索キー一覧
自動相互リンク表
ヘルプ
整形ルール
プラグインマニュアル
浮子屋商店もよろしく。
C#コード断片/1.1/MCIコマンドで音を再生
の編集
Top
>
C#コード断片
>
1.1
> MCIコマンドで音を再生
* MCIコマンドで音を再生 [#db361b13] 再生終了時に指定したウィンドウにNOTIFYメッセージを送る機能の処理方法つき。 #code(Csharp,nooutline){{ [DllImport("winmm.dll",CharSet=CharSet.Auto,CallingConvention=CallingConvention.Winapi)] public static extern int mciSendString( string lpszCommand, // コマンド文字列 string lpszReturnString, // 情報を受け取るバッファ int cchReturn, // バッファのサイズ IntPtr hwndCallback // コールバックウィンドウのハンドル ); private static int MM_MCINOTIFY=0x3B9; private static int MCI_NOTIFY_SUCCESSFUL = 1; mciSendString("open "+filename+" alias _snd",null,0,IntPtr.Zero); mciSendString("play _snd from 0 notify",null,0,this.Handle); protected override void WndProc(ref Message m) { if(m.Msg==MM_MCINOTIFY && (int)m.WParam==MCI_NOTIFY_SUCCESSFUL){ //ここに再生終了時の処理を記入 //終る時は mciSendString("stop _snd",null,0,IntPtr.Zero); mciSendString("close _snd",null,0,IntPtr.Zero); } base.WndProc (ref m); } }}
タイムスタンプを変更しない
* MCIコマンドで音を再生 [#db361b13] 再生終了時に指定したウィンドウにNOTIFYメッセージを送る機能の処理方法つき。 #code(Csharp,nooutline){{ [DllImport("winmm.dll",CharSet=CharSet.Auto,CallingConvention=CallingConvention.Winapi)] public static extern int mciSendString( string lpszCommand, // コマンド文字列 string lpszReturnString, // 情報を受け取るバッファ int cchReturn, // バッファのサイズ IntPtr hwndCallback // コールバックウィンドウのハンドル ); private static int MM_MCINOTIFY=0x3B9; private static int MCI_NOTIFY_SUCCESSFUL = 1; mciSendString("open "+filename+" alias _snd",null,0,IntPtr.Zero); mciSendString("play _snd from 0 notify",null,0,this.Handle); protected override void WndProc(ref Message m) { if(m.Msg==MM_MCINOTIFY && (int)m.WParam==MCI_NOTIFY_SUCCESSFUL){ //ここに再生終了時の処理を記入 //終る時は mciSendString("stop _snd",null,0,IntPtr.Zero); mciSendString("close _snd",null,0,IntPtr.Zero); } base.WndProc (ref m); } }}