以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 Dot NET,C#,ASP,VB 』  (http://bbs.xml.org.cn/list.asp?boardid=43)
----  通过C#程序调用外部程序(转载)  (http://bbs.xml.org.cn/dispbbs.asp?boardid=43&rootid=&id=11762)


--  作者:admin
--  发布时间:11/9/2004 2:25:00 AM

--  通过C#程序调用外部程序(转载)


发信人: kike (蚂蚁), 信区: DotNET
标  题: 通过C#程序调用外部程序(转载)
发信站: BBS 水木清华站 (Fri Jun 20 12:07:07 2003)

网上搜来的,感觉不错。

通过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.ProcessStart
Info();

//设置外部程序名
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);
}
}
  

--

大道至简  大医至爱

适者有寿  仁者无敌


※ 来源:·BBS 水木清华站 http://smth.org·[FROM:155.69.5.222]
上一篇
返回上一页
回到目录
回到页首
下一篇



W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
31.250ms