2010-11-26 8 views
0

プログラムからプロセスを実行する際に問題があります。C#ですべてのファイルを含むプログラムを起動しています

私がプロセスを開始すると、「Tibia.datが見つかりません!」と表示されます。 (exeファイルがプロジェクトディレクトリにあると思っています。

私のプログラム(C:\ program \ Tibia \ Tibia.exe)からプロセスを開始すると、「C:\ user \ marcus \ my documents \ visual studio 2009 \ blablalba \ Tibiaが見つかりません。 dat "と呼ぶ。

ここで私が使用しているコードです:

Process.Start(addressToFirstTibia + "\\Tibia.exe"); 

グレイトフルに助けを!

+0

'Tibia.dat'にアクセスしようとするコードを投稿できますか? – Lorenzo

+0

私はコードを持っていません。なぜなら、私が始めようとしているゲームではないからです。 – Marcus

答えて

9

作業ディレクトリを設定する必要があります。 Tibia.exeは、おそらくそれが実行可能ファイルのディレクトリと同じであることを期待し、そうしてみてください:

Process.Start(new ProcessStartInfo { 
    FileName   = Path.Combine(addressToFirstTibia, "Tibia.exe"), 
    WorkingDirectory = addressToFirstTibia 
}); 
1

はTibia.exeは内部Tibia.datを探していますか?これは、 "現在の作業ディレクトリ"がプロジェクトディレクトリであり、実行可能なディレクトリではないことを何らかの形で検出している可能性があります。

ProcessStartInfoWorkingDirectoryという名前のプロパティがあり、この問題が解決される可能性があります。情報はhereです。