6

私の C# アプリケーションでは、デフォルトの画像エディターを起動して画像を編集したいと考えています。

私が使用しているときは、 Windows フォト ビューアーSystem.Diagnostics.Process.Start("C:\\image.png")を使用して画像ファイルを開きます。

Windows エクスプローラーで画像ファイルを右クリックすると、Microsoft Paint を起動する [編集] メニュー項目が表示されます (デフォルト)。私のアプリケーションでも同じことをしたいと思います (つまり、デフォルトの画像エディターを使用してファイルを開きます)。

を実行して MS Paint をハードコーディングしたくありませんProcess.Start("mspaint.exe C:\\image.png")。ユーザーが設定したデフォルトの画像編集プログラム (MS Paint とは異なる場合があります) を使用したいと思います。

これを行う方法はありますか?

ありがとうフランク

4

2 に答える 2

13

動詞でプロセスを開始してみてくださいedit

ProcessStartInfo startInfo = new ProcessStartInfo("C:\\image.png");
startInfo.Verb="edit";

Process.Start(startInfo);
于 2013-04-15T18:28:08.333 に答える
0

デフォルトのWindowsエディターでpictureBoxで画像を開きたい場合は、これを試してください。

//Create temporary file name
String TMP_IMAGE = "tempImage" +DateTime.Now.Millisecond +".bmp";

//get the folder of application
string PATH_APP =                
        System.IO.Path.GetDirectoryName(Application.ExecutablePath) + @"\tempImage\";

//Create a subFolder tempImage
Directory.CreateDirectory(PATH_APP);

//Save a new path in a variable
String NEW_PATH = PATH_APP + TMP_IMAGE;

//Save the image in the pictureBox in the new path and file name
pictureBox.Image.Save(NEW_PATH);

//Lunch the process with defaoul image editor in the comouter
ProcessStartInfo startInfo = new ProcessStartInfo(NEW_PATH);
Process.Start(startInfo);
于 2017-11-26T08:59:16.967 に答える