2017-07-05 16 views
0

ソリューションに実行可能ファイルを追加しました。実行可能な場所にSystem.Windows.Forms.Application.StartupPathを置き換えます。残念ながら、私が欲しくないBin \ debugフォルダに移動し続けているので、追加レベルを上げる必要があります。C#startupPathの別のフォルダに移動

これは私がやっている方法ですが、実際にはメッセージボックスに印刷するときには置き換えないのです。どのように別のフォルダを言うために移動するでしょう。

はFYI:以下に示すように、現在動作していない.. \まで移動するために使用することはない:私は私の答えを考え出した

string pintoolpath = System.Windows.Forms.Application.StartupPath.Replace(@"..\\bin\Debug", "").Replace(@"..\\bin\Release", ""); 
+1

System.Windows.Forms.Application.StartupPathは実行可能ファイルパスではありません。あなたが達成しようとしているものの1つは、Startupパスを 'string StartupPath = System.Windows.Forms.Application.StartupPath;'のような一時的な文字列変数に保つことです。その内容を ' に置き換えてください。string pintoolpath = StartupPath.Replace( "bin \\ Debug"、 "bin \\ Release")' –

+0

興味深いコメントですが、これを例として置き換えてください:string pintoolpath = System。 (@ "\ bin \ Debug"、 "").Replace(@ "\ bin \ Release"、 "")+ @ "\ Notepad \ Notepad.exe"; Windows.Forms.Application.StartupPath.Replace しかし、何らかの理由でフォルダ構造が実際にメモ帳フォルダに移動せず、メモ帳を実行しませんでした(FYIの例を参考にしてください)。 – RyanWilliamWest

+1

なぜ起動パスを使用していますか?文字列pintoolpath = "D:\\ AbcFolder \\ XyzFolder \\ Notepad \\ Notepad.exe"のような独自の場所を指定するには、ダブルバックスラッシュ\\ –

答えて

1

、ソリューションエクスプローラ上

直接パスが文字を持っていました実際の経路とは異なります。たとえば、BinのBは、ソリューションエクスプローラが小文字である実際のパスVSで大文字に変換されました。これらを変更すると、適切なフォルダに移動して正しいパスを取得することができました。

string pintoolpath = System.Windows.Forms.Application.StartupPath.Replace(@"\Bin\debug", "").Replace(@"\Bin\release", "") 

私を支援してくれてありがとうRahul。

+0

私はどんな良い方法でもあなたを助けなかったけれども、あなたはそれを自分ですべて考え出しました:) –

関連する問題