0

HTMLファイルをcmsに入れたり、それらを話したりするためのプログラムを作成しました。このプログラムには、さまざまなブラウザーでプレビューできるように、いくつかのコードがあります。ただし、実行すると、「ファイル名が指定されていないため、プロセスを開始できません」という未処理の例外が発生します。

  • これは、chrome または firefox を起動しようとしたときにのみ発生し、IE は正常に動作します。
  • Advanced Installer を使用してプログラムを実行し、マシンにインストールした場合にのみ発生します。リリース モードで VS2012 から直接ビルドする場合に機能します。

私のコードは次のとおりです。

if (chk_ExternalBrowser.Checked)
{
    string ffTempFilePath = "\"" + tempFilePath + "\"";//tempFilePath is an absolute path to the html file

    Process.Start(browserPaths[1], ffTempFilePath);//launch FF, browserPaths[1] contains an absolute path to firefox.exe
}

あなたが提供できる洞察を前もって感謝します。

更新: browserPaths[1] の内容を引用符で囲まなかったため、エラーが発生しました。エラーは発生しませんが、Firefox ブラウザーではなく Windows エクスプローラー ウィンドウが開きます。私の修正されたコードは以下の通りです:

if (chk_ExternalBrowser.Checked)
{
    string ffTempFilePath = "\"" + tempFilePath + "\"";//after this line ffTempFilePath == \"C:\\Users\\<username ommitted>\\Documents\\Visual Studio 2012\\Projects\\Local_IMP\\Local_IMP\\bin\\Release\\TEMP.html\"

    string tempTest = "\"" + browserPaths[1] + "\"";//after this line tempTest == \"C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe\"
    Process.Start(tempTest, ffTempFilePath);//launch FF
}
4

1 に答える 1

0

Turns out that I had only put in \n to end a line in my file instead of \r\n so I was only reading right for IE on line 1 and not for the others on subsequent lines

于 2013-03-06T14:54:52.767 に答える