C#程序調(diào)用外部程序
發(fā)表時(shí)間:2023-08-20 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]/** 編程語(yǔ)言:Visual Studio .NET C# (Beta 2)* 作 者:迪泊威* 功 能:通過(guò)C#程序調(diào)用 Windows 記事本程...
/*
* 編程語(yǔ)言:Visual Studio .NET C# (Beta 2)
* 作 者:迪泊威
* 功 能:通過(guò)C#程序調(diào)用 Windows 記事本程序 編輯一個(gè)
* 名為 test.txt 的文本文件。
*
* 在整個(gè)程序中 System.Diagnostics.Process.Start(Info)
* 為主要語(yǔ)句。
* 如果只是單獨(dú)執(zhí)行一個(gè)外部程序,可用一條如下代碼即可:
* System.Diagnostics.Process.Start(
* "外部程序名","啟動(dòng)參數(shù)");
*/
using System;
class test
{
static void Main()
{
//聲明一個(gè)程序信息類
System.Diagnostics.ProcessStartInfo Info = new System.Diagnostics.ProcessStartInfo();
//設(shè)置外部程序名
Info.FileName = "notepad.exe";
//設(shè)置外部程序的啟動(dòng)參數(shù)(命令行參數(shù))為test.txt
Info.Arguments = "test.txt";
//設(shè)置外部程序工作目錄為 C:\
Info.WorkingDirectory = "C:\\";
//聲明一個(gè)程序類
System.Diagnostics.Process Proc ;
try
{
//
//啟動(dòng)外部程序
//
Proc = System.Diagnostics.Process.Start(Info);
}
catch(System.ComponentModel.Win32Exception e)
{
Console.WriteLine("系統(tǒng)找不到指定的程序文件。\r{0}", e);
return;
}
//打印出外部程序的開(kāi)始執(zhí)行時(shí)間
Console.WriteLine("外部程序的開(kāi)始執(zhí)行時(shí)間:{0}", Proc.StartTime);
//等待3秒鐘
Proc.WaitForExit(3000);
//如果這個(gè)外部程序沒(méi)有結(jié)束運(yùn)行則對(duì)其強(qiáng)行終止
if(Proc.HasExited == false)
{
Console.WriteLine("由主程序強(qiáng)行終止外部程序的運(yùn)行!");
Proc.Kill();
}
else
{
Console.WriteLine("由外部程序正常退出!");
}
Console.WriteLine("外部程序的結(jié)束運(yùn)行時(shí)間:{0}", Proc.ExitTime);
Console.WriteLine("外部程序在結(jié)束運(yùn)行時(shí)的返回值:{0}", Proc.ExitCode);
}
}