質問: C#で呼び出しに失敗する外部アプリがあります。 WPFで作成したアプリなのですが、以下のプログラムでエラーが発生します。 System.Diagnostics.Process.Start(@"C:\Windows\System32\SnippingTool.exe"); ※ファイルが存在しない旨のエラーが発生します。 以下を試してみたところ、正常に動作します。 System.Diagnostics.Process.Start(@"C:\Windows\System32\notepad.exe"); ※メモ帳が開きます。 何かアプリによって制限等あるのでしょうか? 補足 System.IO.File.Exists(@"C:\Windows\System32\SnippingTool.exe") を実行すると、Falseが返ってくるので、確かにプログラムからは見えていないようなのですが、 同じフォルダにあるnotepad.exeやmspaint.exe等は、Trueが返ってくるため本現象がよくわかりません。 権限の問題かと思い、別の端末などで試してみても状況は同じです。 ※エクスプローラーで開けば、もちろんsnippingTool.exeファイルは存在しますし、実行も可能です。 環境 Windows10 x64 .Net Framework 4.6 VisualStudio2015 C#
回答: これでいけるらしいです ``` if(!Environment.Is64BitProcess) System.Diagnostics.Process.Start("C:\\Windows\\sysnative\\SnippingTool.exe"); else System.Diagnostics.Process.Start("C:\\Windows\\system32\\SnippingTool.exe"); ```