Visual Studio 2010で新しいプロジェクトを作成しました。これはWindowsフォームであり、.NETFramework4クライアントプロファイルを使用して実行されます。
埋め込みWAVサウンドファイルを追加しました。
私がしたいのは、それをあるパスにコピーすることだけです。たとえば、デスクトップを例に挙げます。どうすればこれを達成できますか?
私はすでにこれらを試しました:
リソースからファイルを読み取り、C#でディスクに書き込みます
アセンブリリソースストリームからディスクへのファイルの書き込み
しかし、私はいつも問題に直面しています。例えば:
Take Over Control.wavという名前のオーディオリソースを追加すると、。という名前で追加されTake_Over_Control
ます。次に、メインフォームに「コピー」というボタンを追加するだけです。次に、そのボタンのクリックイベントには次のようになります。
private void ButtonCopyClick(object sender, EventArgs e)
{
Stream resource = Assembly.GetExecutingAssembly().GetManifestResourceStream("Take_Over_Control");
if (resource == null)
{
throw new ArgumentException();
}
Stream output = File.OpenWrite(Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory)+"\\Sound.wav");
resource.CopyTo(output);
}
事は...私がその部分にTake_Over_Control
またはResources.Take_Over_Control
またはProperties.Resources.Take_Over_Control
などを入れてもGetManifestResourceStream
、私は常に立ち往生しているthrow new ArgumentException();
ので、それはそれを意味し、それresource
はnull
オンラインでうまく割り当てられていませんStream resource = Assembly.GetExecutingAssembly().GetManifestResourceStream("Take_Over_Control");
。
そして、私が試した他の方法には問題があります。ここの何が問題になっていますか?この埋め込まれたオーディオファイルを正しい方法でコピーする方法!?