2017-05-31 7 views
0

私のアプリケーションが開いたときにローカルビデオを再生するWindows Media Playerツールがあります。ビデオはリソースに保存され、常にコピーされるように設定されています(これが正しいかどうかわかりませんが、私はローカルのHTMLページでこれをやっているので、ビデオファイルでも同様です)。ソリューション。winformsリソース(C#)でファイルパスが認識されない

HTMLページには"file:///{0}/mail/index.html"という構文を使用していますが、これもメディアに使用するかどうかはわかりません。

私はビデオプレーヤー/ファイルを持っているコード:

private void Form1_Load(object sender, EventArgs e) 
{ 
    axWindowsMediaPlayer1.URL = "file:///{0}/Resources/newintrovid.wmv"; 
} 

問題は、それがパスとして"file:///{0}Resources/newintrovid.wmv"を認識していないですが、私はここで本当に愚かな何かをやっていますか?私はMSDNの指示に従っており、解決策の中で「ファイルを見つけることができません」というエラーが出てくる。

追加の注意として、ビデオが終了したら、メディアプレーヤーとビデオを終了します。私はオンラインで見てきましたが、私はこれにどのような方法も見つけられません。誰かが正しい方向に私を指すことができれば、それは大いに感謝されるだろう。

+1

WebアプリケーションのパスとWindowsアプリケーションファイルのパスとの間に差がある.. Windowsアプリケーションでどこにされて ' .wmv'ファイルが見つかりました..?リソースファイルや 'File.Path'の使用方法についてgoogle検索を行ってください。 – MethodMan

+0

よく、私は{0}が実際のファイルパスの一部ではないことをかなり保証することができます。その文字列の周りに 'string.format()'がありませんでしたか?その値をプレースホルダに入れますか? –

答えて

1

文字列の周囲にstring.Formatの呼び出しがあり、{0}プレースホルダに入力する変数が不足している可能性があります。

この動作するはずです(もちろん、あなたのアプリケーションのための本当のパスに置き換えてください)のようなもの:

private void Form1_Load(object sender, EventArgs e) 
{ 
    var mediaPath = @"C:\Program Files (x86)\Microsoft Office"; 

    axWindowsMediaPlayer1.URL = 
     string.Format("file:///{0}/root/fre/StartMenu_Win7.wmv", mediaPath); 
} 
+0

ありがとう、私はそれを行ってあげるよ。 [MSDN](https://msdn.microsoft.com/en-gb/library/bb383953(v=v290.aspx))では、はるかに単純なように見えましたが、指示は非常に曖昧でした。 – gezer4000

+0

**更新**これは機能しました...ありがとうございます! – gezer4000

関連する問題