ロード時にWebブラウザでFlash(.swf)ファイルを再生する必要があるWindowsアプリケーションを作成する必要があります。しかし、私はハードディスクからWebブラウザコントロールにFlashファイルを直接再生できます。ここでは、.swfファイルをResourcesフォルダで再生し、Webブラウザコントロールにロードする必要があります。助けてください。リソースフォルダに配置されたSWFファイルを再生するには
ありがとうございます。
ロード時にWebブラウザでFlash(.swf)ファイルを再生する必要があるWindowsアプリケーションを作成する必要があります。しかし、私はハードディスクからWebブラウザコントロールにFlashファイルを直接再生できます。ここでは、.swfファイルをResourcesフォルダで再生し、Webブラウザコントロールにロードする必要があります。助けてください。リソースフォルダに配置されたSWFファイルを再生するには
ありがとうございます。
System.Reflection.Assembly thisExe;
thisExe = System.Reflection.Assembly.GetExecutingAssembly();
System.IO.Stream file = thisExe.GetManifestResourceStream("Namespace.Filename");
byte[] data = Properties.Resources.Filename;
file.Read(data, 0, data.Length);
フラッシュ(.swf)ファイルを埋め込みリソースとして追加します。
このメソッドを使用すると、期待どおりに動作します。
private void Form1_Shown(object sender, EventArgs e)
{
Stream sr = Assembly.GetExecutingAssembly().GetManifestResourceStream("namespace.file.swf");
if (sr == null) return;
var reader = new BufferedStream(sr);
string tempfile = Path.GetTempFileName() + ".swf";
var data = new byte[reader.Length];
reader.Read(data, 0, (int)reader.Length);
File.WriteAllBytes(tempfile, data);
webBrowser1.Url = new Uri(tempfile);
}
希望します。
どのようにハードディスクからフラッシュを再生しますか? – abatishchev
は、Webブラウザコントロールのナビゲート方法でパスを指定しただけです。 –
動作するかどうかわかりませんが、リソースへのストリームの取得をテストしましたか?これを試して。そうでない場合は、ストリームを一時ファイルに書き込むのはどうですか? –