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();//关键,等待外部程序退出后才能往下执行
  • 相关阅读:
    BZOJ1093: [ZJOI2007]最大半连通子图
    BZOJ4033: [HAOI2015]树上染色
    BZOJ1977: [BeiJing2010组队]次小生成树 Tree
    BZOJ4944: [Noi2017]泳池
    BZOJ1269: [AHOI2006]文本编辑器editor
    BZOJ4596: [Shoi2016]黑暗前的幻想乡
    BZOJ1815: [Shoi2006]color 有色图
    BZOJ1488: [HNOI2009]图的同构
    BZOJ3527: [Zjoi2014]力
    Salazar Slytherin's Locket CodeForces
  • 原文地址:https://www.cnblogs.com/BookCode/p/5329890.html
Copyright © 2011-2022 走看看