C#启动外部EXE程序,退出本系统

1、C#按钮程序启动外部的EXE文件

private void BT_Others_Click(object sender, EventArgs e)
{
     System.Diagnostics.ProcessStartInfo process = new ProcessStartInfo();
     process.FileName = Path.Combine("", EXEAdress); //EXEAdress为exe程序所在的位置
     process.UseShellExecute = false;
     System.Diagnostics.Process.Start(process);
     this.Hide();
     this.Dispose();
}
        
private void calPT_Click(object sender, RoutedEventArgs e)
{
    string appName = AppDomain.CurrentDomain.BaseDirectory;
    appName += "\\software\\ComXO.exe"; //当前exe文件的位置位于运行文件目录下
    if (File.Exists(appName))
    {
        System.Diagnostics.ProcessStartInfo process = new ProcessStartInfo();
        process.FileName = System.IO.Path.Combine("", appName);
        process.UseShellExecute = false;
        System.Diagnostics.Process.Start(process);
    }
    else
    {
       MessageBox.Show("exe不存在!");
    }
}

2、运行EXE文件后连不上数据库的原因及解决方法

C#调用EXE怎么连接不了数据库

当前:路径一致的问题,需要把运行的C#.exe放到外部调用的exe程序同一路径下。

如图:

 3、退出本系统

 private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
    if (MessageBox.Show("确定退出程序?", "提示", MessageBoxButtons.YesNo) == DialogResult.Yes)
    {
         Application.Exit();
    }

上述方法会跳出两次提示框

改进:

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
    if (MessageBox.Show("确定退出程序?", "提示", MessageBoxButtons.YesNo) == DialogResult.Yes)
    {
         e.Cancel = false;
    }
    else
    {
          e.Cancel = true;
    }
}
 
private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
    Application.Exit();
}

 若存在无法完全退出程序,可在Application.Exit(); 后面追加System.Environment.Exit(0);

https://blog.csdn.net/sunzixiao/article/details/128457506

 

posted @   浑浑噩噩一只小迷七  阅读(731)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示