如何使用c#以编程方式更改paint.exe的初始文件保存位置?

如何使用c#以编程方式更改paint.exe的初始文件保存位置?,c#,screenshot,filepath,dialogresult,C#,Screenshot,Filepath,Dialogresult,我正在制作一个截图程序,现在我有一个功能,可以让用户在MS Paint中编辑截图。唯一的问题是,我希望文件浏览器(用于保存绘制文件)自动浏览到此路径: %SystemRoot%\system32\mspaint.exe“C:\Users\My Name\Documents\ruush” 有人能告诉我怎么做吗 以下是我打算将其放入的代码(在第一个if中): 先保存文件,然后在Paint中打开。Paint将记住已打开的文件的位置 您也可以尝试使用。。。虽然我见过很多默认图像程序只有视图支持的系统,所

我正在制作一个截图程序,现在我有一个功能,可以让用户在MS Paint中编辑截图。唯一的问题是,我希望文件浏览器(用于保存绘制文件)自动浏览到此路径:

%SystemRoot%\system32\mspaint.exe“C:\Users\My Name\Documents\ruush”

有人能告诉我怎么做吗

以下是我打算将其放入的代码(在第一个if中):


先保存文件,然后在Paint中打开。Paint将记住已打开的文件的位置


您也可以尝试使用。。。虽然我见过很多默认图像程序只有视图支持的系统,所以我理解在这种情况下需要绘制。最好的选择是检测默认的图像程序,只有当您得到与照片应用程序、图片查看器或web浏览器(比您想象的更常见)匹配的结果时,才使用MS Paint。

首先,您不需要使用Paint进行屏幕截图。这有一个功能。然后查看openfiledialog类。您是否在Windows 10上运行该代码?我相信这是Windows 10中油漆的默认行为。在8和更低版本中,它将另存为返回到打开文件的位置。我不知道有什么解决办法。paint没有做屏幕截图。我和c#分开做这件事。是的,我在Windows10上运行这个。我相信我有一个上面列出的解决方法(%SystemRoot%\system32\mspaint.exe“C:\Users\My Name\Documents\ruush”)。我只是想在c#Hey joel中实现这一点。事实上,我每次都将截图保存为一个唯一的名称(在文件名后附加更新的m/d/y时间戳),因此文件会提前保存;使用油漆也不是主要问题。我遇到的问题是确保在编辑完成后保存文件时,paint知道自动浏览到指定路径。我提供的路径指向保存所有屏幕截图的文件夹,因此在那里保存编辑过的图像是有意义的。@DavidKenyon96为什么绘画可以浏览任何地方?Paint正在打开已位于正确位置的现有文件。用户只需单击“保存”按钮,就永远看不到文件的位置,文件将继续保存在正确的位置。如果有人付出额外的努力来使用“另存为”,他们可能真的想要一个与默认文件夹不同的文件夹,Windows提供的正常行为是正确的。我明白你的意思。然而,我认为最好将它打开到那个特定的文件夹,这样他们就能知道它的确切位置。
DialogResult dialogResult = MessageBox.Show("Would you like to edit your screenshot in paint?", "Edit", MessageBoxButtons.YesNo);
if (dialogResult == DialogResult.Yes)
{
    Process.Start("mspaint", @"""c:\Users\My Name\Documents\ruush\Screenshot.png""");
}
else if (dialogResult == DialogResult.No)
{
    //do something else
}