3

リソースにいくつかのファイルを含めたWPFアプリケーションで、ボタンのクリックでそれらを実行したい。でパスを指定するにはどうすればよいですかProcess.Start()

private void button1_Click_2(object sender, RoutedEventArgs e)
{
    Process.Start("test.txt");    
}

それとも他に方法はありますか?


private void button1_Click_2(object sender, RoutedEventArgs e)
{
    string path = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + @"\test.txt";
    if (File.Exists(path))
    {
        Process.Start(new ProcessStartInfo(path));
    }
    else
    {
        MessageBox.Show("No file found"+path);
    }

メッセージ ボックスを追加したところ、ファイルが見つかりませんでした。:(

編集:公開後にパスを確認しようとしましたが、これが得られました。パスのファイルが見つかりません - C:\Users\Administrator\AppData\Local\Apps\2.0... test.txt

アプリケーションを公開する前に、..project..\bin\Debug\test.txt にファイルが見つかりませんという ID のパスを取得しました。デバッグ中のテストファイルは問題なく開きます。

誰かがこの事件に光を当てるのを手伝ってくれませんか.

編集:

リソース ディレクトリ @ C:\Users\Administrator\Documents\Visual Studio 2010\Projects\FastFix\FastFix\Resources からファイルを開きたいと思います。インストールなしのスタンドアロン アプリケーション。

4

1 に答える 1

0

これを使って

   string path = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + @"\test.txt";
                    if (File.Exists(path))
                    {
                        Process.Start(new ProcessStartInfo(path));                            
                    }
于 2012-10-26T11:49:20.850 に答える