質問: こんにちは。 Windows10でC#のアプリケーションを開発しています。 Visual Studio 2017 Communityを使っています。 ### 前提・実現したいこと C#で、音楽リストファイルをProcess.Startして音楽を再生しています。 ### 該当のソースコード ``` // 音楽再生 Process.Start(@"playlists.wpl"); // 音楽停止 Process.Start("taskkill", "/F /IM wmplayer.exe"); という手抜き実装です。 ``` さてそれで、これだとWindows Media Playerで曲を再生するのですけれど、この状態で、「次の曲」にするにはどうしたらよいでしょう? 起動中のWindows Media Playerに対して、「次」というコマンドをC#で送りたいです。 ### 補足情報(言語/FW/ツール等のバージョンなど) Microsoft Visual Studio Community 2017 Version 15.0.26228.9 D15RTWSVC Microsoft .NET Framework Version 4.6.01586 です。 よろしくお願いします。
回答: こんにちは。 Windowsメディアプレイヤーのインターフェースをちゃんと調べてないので、 もっと良い方法があるかもしれませんが。 色々な制限を許容できるのであれば、SendKeysで操作プログラム側からキー送信してやるのが 一番楽だと思います。 Ctrl+Fで次の曲のようです。 【C#】キーエミュレート送信のまとめ【覚書メモ】 あとはSpy++などでWindowsメッセージを解析すれば SendKeyで起きる弊害などは解決できる可能性がありますが、 少し面倒です。