zoukankan      html  css  js  c++  java
  • C#程序调用外部程序

    *
    *  编程语言:Visual  Studio  .NET  C#  (Beta  2)
    *  作        者:迪泊威
    *  功        能:通过C#程序调用  Windows  记事本程序  编辑一个
    *  名为  test.txt  的文本文件。
    *
    *  在整个程序中  System.Diagnostics.Process.Start(Info)  
    *  为主要语句。
    *  如果只是单独执行一个外部程序,可用一条如下代码即可:
    *  System.Diagnostics.Process.Start(
    *  "外部程序名","启动参数");
    */

    using  System;

    class  test
    {
    static  void  Main()
    {

    //声明一个程序信息类
    System.Diagnostics.ProcessStartInfo  Info  =  new  System.Diagnostics.ProcessStartInfo();

    //设置外部程序名
    Info.FileName  =  "notepad.exe";

    //设置外部程序的启动参数(命令行参数)为test.txt
    Info.Arguments  =  "test.txt";

    //设置外部程序工作目录为  C:\
    Info.WorkingDirectory  =  "C:\\";

    //声明一个程序类
    System.Diagnostics.Process  Proc  ;

    try
    {
    //
    //启动外部程序
    //
    Proc  =  System.Diagnostics.Process.Start(Info);
    }
    catch(System.ComponentModel.Win32Exception  e)
    {
    Console.WriteLine("系统找不到指定的程序文件。\r{0}",  e);
    return;
    }

    //打印出外部程序的开始执行时间
    Console.WriteLine("外部程序的开始执行时间:{0}",  Proc.StartTime);

    //等待3秒钟
    Proc.WaitForExit(3000);

    //如果这个外部程序没有结束运行则对其强行终止
    if(Proc.HasExited  ==  false)
    {
    Console.WriteLine("由主程序强行终止外部程序的运行!");
    Proc.Kill();
    }
    else
    {
    Console.WriteLine("由外部程序正常退出!");
    }
    Console.WriteLine("外部程序的结束运行时间:{0}",  Proc.ExitTime);
    Console.WriteLine("外部程序在结束运行时的返回值:{0}",  Proc.ExitCode);
    }
    }
  • 相关阅读:
    3089:爬楼梯
    7592:求最大公约数问题
    JVM中内存回收深入分析,各种垃圾收集器
    PKU 1064 Cable master
    【面试&笔试】ASP.NET的相关问题
    1027. Colors in Mars (20) PAT
    DB_WRITER_PROCESSES与LOG_ARCHIVE_MAX_PROCESSES
    fedora下体验gentoo安装
    一个整数数组里面,除了两个数之外,其他的数字都出现了两次,写一个程序找出这两个数
    [置顶] export命令-linux
  • 原文地址:https://www.cnblogs.com/draeag/p/791999.html
Copyright © 2011-2022 走看看