
C#のAxWindowsMediaPlayerからリソースに埋め込まれた動画を読み込みたい
簡易動画プレイヤーと動画ファイルを1つの .exe ファイルにしたいと思っています。
C#から COMコンポーネント AxWindowsMediaPlayer を使用し、リソースに
動画ファイルを埋め込みたいのですが、埋め込んだリソース(byte[]?)を
AxWindowsMediaPlayer へ渡す方法がわかりません。
AxWindowsMediaPlayer.URL にはファイル名等しか指定できないため、
最悪、いったんファイルに書き出すしかないかなと思っていますが、
動画本体は大きいファイルなので出来れば避けたく思います。
他によい方法はありませんでしょうか?
DLLはILMergeで .exe に同梱できることを確認しました。
VS2010, WindowsXP です。

No.1ベストアンサー
- 回答日時:
AxWindowsMediaPlayer ではなく、Windows Media Player のサブコンポーネントである MediaElement クラスの SetSource メソッドと、Assembly クラスの GetManifestResourceStream メソッドを使えばなんとかなります。
http://msdn.microsoft.com/ja-jp/library/cc190669 …
http://msdn.microsoft.com/ja-jp/library/system.r …
・使い方の例
MediaElement media = new MediaElement();
Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("SomeProjectNamespace.SomeVideo.wmv");
media.SetSource(stream);
media.AutoPlay = false;
media.Stop();
media.Play();
ただし SetSource メソッドを持っているのは Silverlight 用のコントロールであり、WPF 用のコントロールは持っていないので、フォームアプリの場合は WebBrowser コントロールを使って Silverlight を埋め込むなどの方法をとる必要があります。
・埋め込み方の例
http://blog.loadlimits.info/2010/01/windows%E3%8 …
なお、WPF の MediaElement クラスの説明に、「アプリケーションでメディアを配布する場合、メディア ファイルをプロジェクト リソースとして使用することはできません」という記述があるので、素直にコンテンツファイルとして出力指定するのが楽だと思います。
http://msdn.microsoft.com/ja-jp/library/system.w …
ちなみに質問するときはターゲット環境(.NET Framework のバージョンなど)を併記しておいたほうがいいです。
この回答への補足
回答ありがとうございます。
Silverlightアプリケーションとして作成、それを表示させるWebBrowserといっしょにビルド、ということでしょうか?
この場合、出来合いのコントロール(再生ボタンやシークバー等)は無く、自前での実装となるのでしょうか? Silverlightの経験が無いため難航しそうな予感がありますが、googleで検索したところ日本語サンプルも結構出てきましたので、方法が無いようであればチャレンジしてみようかと思います。
.NET Framework のターゲットの件は失礼いたしました。2.0か3.0(WindowsXP以降)として考えておりました。WPFということは3.0になりますね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) EXCELのグラフを画像(JPG形式)で保存、通常実行がうまく行かない。ステップインはうまく行く 3 2022/08/30 12:06
- その他(プログラミング・Web制作) pythonでクラスで複数のメソッドを利用する方法 2 2022/04/15 04:17
- PDF acrobatでwordファイルをpdfに変換すると文字化けする 3 2023/02/10 09:31
- その他(プログラミング・Web制作) python OpenPyXLを使って出力結果をエクセルに書き込み 2 2022/06/04 19:46
- iPhone(アイフォーン) iphoneで撮影した写真、動画を連番のファイル名で保存したい。 1 2022/04/28 02:12
- Illustrator(イラストレーター) Illustrator CS5 埋め込んだ画像を抽出(個別の画像で保存)できるか? 1 2022/11/28 16:18
- HTML・CSS htmlについて質問です コードを打ったあと画像が表示されないので調べる svg ファイルが写真のよ 1 2023/07/11 10:53
- Visual Basic(VBA) 【VBA】写真の縦横比を変えずに貼り付ける 5 2023/06/13 11:42
- その他(プログラミング・Web制作) Pythonで、データファイルと列名ファイルを1つのファイルにしたいです。 1 2023/07/27 20:29
- 画像編集・動画編集・音楽編集 Google Earth Pro 高速道路上空を一定の速度で飛ぶツアー動画の作り方は?? 1 2022/06/01 15:10
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
圧縮ファイルから復元
-
バッチによるショートカットの...
-
JSP・Servletでファイル入出力...
-
1フォルダに保存できるファイル...
-
NNだけCSSのリンクが切れる?!
-
JSONファイルをダウンロードさ...
-
OUTLOOKでお願いします。
-
ダウンロード不可PDFファイルは...
-
CドライブにあるWEBフォルダ...
-
D902isでフォルダができない
-
Access2003で「オブジェクト'○○...
-
Microsoft Access エラー 3051
-
OCXのライセンス
-
PHPOBjectのmultiByteTestAS1.f...
-
John The Ripper
-
エクセルVBA フォームを開く時...
-
プルダウンメニューで選択した...
-
ファイルのダウンロードダイア...
-
メールの添付ファイルが「DD...
-
エクスプローラのファイル名を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
バッチによるショートカットの...
-
HTMLタグのあるCSVファイルを利...
-
1フォルダに保存できるファイル...
-
Excel-VBA 撮影日時の取得
-
FTPサーバからファイルをダウン...
-
ファイルのアクセス権の取得
-
JSONファイルをダウンロードさ...
-
Excel VBAどこが間違ってますか?
-
一括ダウンロードの方法
-
ボタンをファイルにリンクさせたい
-
subversionからファイル取得時...
-
エクセルVBA
-
新しいページの作り方
-
動的に生成したVSBファイルへデ...
-
FileUploadで複数ファイルのア...
-
【VC++6.0 MFC】画像表示について
-
WebLogic/javaで一部JSPだけが...
-
ショートカットファイルのリン...
-
エクセルVBA ファイルOPEN時の...
-
ファイル変更の監視を開始でき...
おすすめ情報