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

时间:2008-10-27 14:55:38

标签: c# .net windows-vista windows-xp

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

要求: 必须适用于Windows XPWindows Vista

我在DinnerNow.net采样器中看到了一个仅适用于Windows Vista的示例。

10 个答案:

答案 0 :(得分:216)

以下是一段有用的代码:

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;
}

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

答案 1 :(得分:154)

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

查看this article如何使用它。

答案 2 :(得分:55)

System.Diagnostics.Process.Start("PathToExe.exe");

答案 3 :(得分:17)

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

答案 4 :(得分:13)

如果您在使用System.Diagnostics时遇到问题,请使用以下简单代码,无需使用它:

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

答案 5 :(得分:8)

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

E.G。

  • %WINDIR%= Windows目录
  • %APPDATA%=申请数据 - 在Vista和XP之间变化很大。

还有更多的链接可以查看更长的列表。

答案 6 :(得分:4)

Adame Kane

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

这很有效!!!!!

答案 7 :(得分:1)

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

{block:Audio}
<div class="playbox"><div class="playbutton">{block:AudioPlayer}{AudioPlayerBlack}{/block:AudioPlayer}</div></div>
{block:AlbumArt}<img src="{AlbumArtURL}" class="cover"/>{/block:AlbumArt}
{block:Artist}<div class="artist">Artist: {Artist}</div>{/block:Artist}
{block:TrackName}<div class="trackname">Title: {TrackName}</div>{/block:TrackName}
{block:Caption}<div class="caption">{Caption}</div>{/block:Caption}
{/block:Audio}

答案 8 :(得分:1)

试试这个:

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

(确保使用System.Diagnostics库)

答案 9 :(得分:0)

使用 Process.Start 启动流程。

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