Wpf 启动进程时,如何将该进程的目录设置为读/写文件?

Wpf 启动进程时,如何将该进程的目录设置为读/写文件?,wpf,vb.net,file-io,Wpf,Vb.net,File Io,在WPF项目中,使用给定的文件名启动mspaint非常简单 Process.Start("mspaint.exe", filename) 虽然mspaint.exe将使用其目录中的“filename”,但如果我尝试打开其他文件或执行“SaveAs”,mspaint.exe将查看应用程序编译到的Visual Studio\bin目录。即使我将.exe移动到其他位置,它也会一直查看\bin位置 我尝试了以下方法: Dim process1StartInfo As New ProcessStar

在WPF项目中,使用给定的文件名启动mspaint非常简单

Process.Start("mspaint.exe", filename)
虽然mspaint.exe将使用其目录中的“filename”,但如果我尝试打开其他文件或执行“SaveAs”,mspaint.exe将查看应用程序编译到的Visual Studio\bin目录。即使我将.exe移动到其他位置,它也会一直查看\bin位置

我尝试了以下方法:

  Dim process1StartInfo As New ProcessStartInfo
  process1StartInfo.WorkingDirectory = "C:\Users\theuser\Pictures"
  process1StartInfo.FileName = "mspaint.exe"
  process1StartInfo.Arguments = filename
  process1StartInfo.UseShellExecute = False
  Dim process1 = Process.Start(process1StartInfo)
我以为setting.WorkingDirectory会改变行为,但事实并非如此


当mspaint.exe从应用程序中启动时,是否可以以及如何更改它所查看的目录?尤其是在编译和移动应用程序之后。

MSPaint等程序的问题是,它们会记住您上次保存到的位置,并将其作为下一个默认位置。也就是说,他们实际上不使用工作目录。快速问题是文件名这里是文件名或文件名的完整路径。如果是前者,请尝试完整路径。它是完整路径。