如何打开Windows资源pipe理器到WPF应用程序中的某个目录?
在WPF应用程序中,当用户点击一个button时,我想打开Windows资源pipe理器到某个目录,我该怎么做?
我会期待这样的事情:
Windows.OpenExplorer("c:\test");
为什么不是Process.Start(@"c:\test");
?
这应该工作:
Process.Start(@"<directory goes here>")
或者如果你想要一个方法来运行程序/打开文件和/或文件夹:
private void StartProcess(string path) { ProcessStartInfo StartInformation = new ProcessStartInfo(); StartInformation.FileName = path; Process process = Process.Start(StartInformation); process.EnableRaisingEvents = true; }
然后调用方法并在括号中放置文件和/或文件夹的目录或应用程序的名称。 希望这有助于!
您可以使用System.Diagnostics.Process.Start
。
或者像下面这样直接使用WinApi,它将启动explorer.exe。 您可以使用ShellExecute的第四个参数给它一个起始目录。
public partial class Window1 : Window { public Window1() { ShellExecute(IntPtr.Zero, "open", "explorer.exe", "", "", ShowCommands.SW_NORMAL); InitializeComponent(); } public enum ShowCommands : int { SW_HIDE = 0, SW_SHOWNORMAL = 1, SW_NORMAL = 1, SW_SHOWMINIMIZED = 2, SW_SHOWMAXIMIZED = 3, SW_MAXIMIZE = 3, SW_SHOWNOACTIVATE = 4, SW_SHOW = 5, SW_MINIMIZE = 6, SW_SHOWMINNOACTIVE = 7, SW_SHOWNA = 8, SW_RESTORE = 9, SW_SHOWDEFAULT = 10, SW_FORCEMINIMIZE = 11, SW_MAX = 11 } [DllImport("shell32.dll")] static extern IntPtr ShellExecute( IntPtr hwnd, string lpOperation, string lpFile, string lpParameters, string lpDirectory, ShowCommands nShowCmd); }
声明来自pinvoke.net网站 。