zoukankan      html  css  js  c++  java
  • C#调用Exe

    在编写程序时经常会使用到调用可执行程序的情况,本文将简单介绍C#调用exe的方法。在C#中,通过Process类来进行进程操作。 Process类在System.Diagnostics包中。

    示例一

    using System.Diagnostics;
    
    Process p = Process.Start("notepad.exe");
    p.WaitForExit();//关键,等待外部程序退出后才能往下执行

    通过上述代码可以调用记事本程序,注意如果不是调用系统程序,则需要输入全路径。

    示例二

    当需要调用cmd程序时,使用上述调用方法会弹出令人讨厌的黑窗。如果要消除,则需要进行更详细的设置。

    Process类的StartInfo属性包含了一些进程启动信息,其中比较重要的几个

    FileName                可执行程序文件名

    Arguments              程序参数,已字符串形式输入
    CreateNoWindow     是否不需要创建窗口
    UseShellExecute      是否需要系统shell调用程序

    通过上述几个参数可以让讨厌的黑屏消失

    System.Diagnostics.Process exep = new System.Diagnostics.Process();
    exep.StartInfo.FileName = binStr;
    exep.StartInfo.Arguments = cmdStr;
    exep.StartInfo.CreateNoWindow = true;
    exep.StartInfo.UseShellExecute = false;
    exep.Start();
    exep.WaitForExit();//关键,等待外部程序退出后才能往下执行

    或者

    System.Diagnostics.Process exep = new System.Diagnostics.Process();
    System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
    startInfo.FileName = binStr;
    startInfo.Arguments = cmdStr;
    startInfo.CreateNoWindow = true;
    startInfo.UseShellExecute = false;
    exep.Start(startInfo);
    exep.WaitForExit();//关键,等待外部程序退出后才能往下执行
  • 相关阅读:
    PAT《数据结构学习与实验指导》实验项目集 2-09 2-10 2-11 2-12 2-13
    codeblocks+Mingw 下配置开源c++单元测试工具 google test
    编程之美 1.16 24点游戏
    PAT 1065 1066 1067 1068
    多线程批量执行等待全部结果
    使用Git和远程代码库
    CentOS下Crontab安装使用详细说明(转)
    安装和测试Kafka(转)
    MapReduce任务参数调优(转)
    Maven构建应用程序常用配置(转)
  • 原文地址:https://www.cnblogs.com/yasin/p/3039558.html
Copyright © 2011-2022 走看看