从C#启动应用程序(.EXE)?

我如何使用C#启动应用程序?

要求:必须在Windows XP和Windows Vista上工作 。

我从DinnerNow.net采样器中看到一个样本,只能在Windows Vista中使用。

使用System.Diagnostics.Process.Start()方法。

看看这篇文章如何使用它。

这里有一些有用的代码片段:

 using System.Diagnostics; // Prepare the process to run ProcessStartInfo start = new ProcessStartInfo(); // Enter in the command line arguments, everything you would enter after the executable name itself start.Arguments = arguments; // Enter the executable to run, including the complete path start.FileName = ExeName; // Do you want to show a console window? start.WindowStyle = ProcessWindowStyle.Hidden; start.CreateNoWindow = true; int exitCode; // Run the external process & wait for it to finish using (Process proc = Process.Start(start)) { proc.WaitForExit(); // Retrieve the app's exit code exitCode = proc.ExitCode; } 

您可以使用这些对象做更多的事情,您应该阅读文档: ProcessStartInfo , Process 。

 System.Diagnostics.Process.Start("PathToExe.exe"); 
 System.Diagnostics.Process.Start( @"C:\Windows\System32\Notepad.exe" ); 

如果您像我一样使用System.Diagnostics时遇到问题,请使用以下简单的代码:

 Process notePad = new Process(); notePad.StartInfo.FileName = "notepad.exe"; notePad.StartInfo.Arguments = "mytextfile.txt"; notePad.Start(); 

此外,如果可能的话,您将希望为环境variables使用环境variables: http : //en.wikipedia.org/wiki/Environment_variable#Default_Values_on_Microsoft_Windows

例如

  • %WINDIR%= Windows目录
  • %APPDATA%=应用程序数据 – 在Vista和XP之间变化很大。

还有很多检查一个更长的名单的链接。

尝试这个:

 Process.Start("Location Of File.exe"); 

(请确保使用System.Diagnostics库)

使用Process.Start启动一个进程。

 using System.Diagnostics; class Program { static void Main() { // // your code // Process.Start("C:\\process.exe"); } } 

只需将您的file.exe放在\ bin \ Debug文件夹中,并使用:

 Process.Start("File.exe");