C#能不能做到调用外部程序后独立运行
现在遇到个问题,C#通过Process调用一个外部已有的exe程序后,主程序会一直等待,等到这个外部exe执行完毕后才退出。我想实现这样的功能,就是调用完exe程序后,C...
现在遇到个问题,C#通过Process调用一个外部已有的exe程序后,主程序会一直等待,等到这个外部exe执行完毕后才退出。我想实现这样的功能,就是调用完exe程序后,C#主程序马上退出,不用等这个外部exe的执行结果,而exe程序自己去执行。不要说委托异步调用之类的,我想要的不是那样的功能。不知道能不能实现。
展开
3个回答
展开全部
完全可以,你这样写
System.Diagnostics.Process.Start("这里就是你要运行的东西,可以是可执行程序 exe路径要写对,或者网址之类的,网址的话系统会自动调取默认浏览器打开");
System.Diagnostics.Process.Start("这里就是你要运行的东西,可以是可执行程序 exe路径要写对,或者网址之类的,网址的话系统会自动调取默认浏览器打开");
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-01-14
展开全部
// using System.Diagnostics;
private string appName = "calc.exe";
/// <summary>
/// 1. 启动外部程序,不等待其退出
/// </summary>
private void button1_Click(object sender, EventArgs e){
Process.Start(appName);
MessageBox.Show(String.Format("外部程序 {0} 启动完成!", this.appName), this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private string appName = "calc.exe";
/// <summary>
/// 1. 启动外部程序,不等待其退出
/// </summary>
private void button1_Click(object sender, EventArgs e){
Process.Start(appName);
MessageBox.Show(String.Format("外部程序 {0} 启动完成!", this.appName), this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
追问
这样不行,我试过了,
Process process = new Process
{StartInfo = { FileName = "abc.exe", Arguments = "test" } }; process.Start();
主程序会一直等abc.exe执行完毕后才退出
追答
namespace ProcessDemo{
class Program{
static void Main(){
Process process = new Process{StartInfo = { FileName = "calc.exe", Arguments = "test" } };
process.Start();
}
}
}
VS2010 中测试过,是正常的、符合你的说法要求的。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
启动了一个程序后, 这两伙就没什么关系了,想什么时候退就什么时候退,
private void button1_Click(object sender, EventArgs e) {
Process process = new Process { StartInfo = { FileName = "calc.exe", Arguments = "test" } }; process.Start(); Application.Exit(); }
private void button1_Click(object sender, EventArgs e) {
Process process = new Process { StartInfo = { FileName = "calc.exe", Arguments = "test" } }; process.Start(); Application.Exit(); }
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询