C# Process执行bat

System.Diagnostics 命名空间提供类,使您能够与系统进程、事件日志和性能计数器进行交互。

Process类提供对本地和远程进程的访问并使您能够启动和停止本地系统进程。

Process除了可以执行bat,还可以执行计算机上其它的应用程序,包括各种bat及脚本

使用Demo

using System;
using System.Diagnostics;

public class ProcessDemo
{
    static void Main(string[] args)
    {
        Process process = new Process();

        try
        {
            //打开C盘
            //Process.Start("c:\\");

            //打开word文件
            string file = @"D:\Code\Unity3D\SVN\cosmosbox\关卡制作教程.doc";
            //OpenMsWord(file);

            //执行bat文件
            LaunchBat("d:/run.cmd");
        }
        catch (Exception e)
        {
            Console.WriteLine( e.Message);
        }
    }

    /// <summary>
    /// 传入文件名打开文件
    /// </summary>
    /// <param name="file"></param>
    static void OpenMsWord(string file)
    {
        ProcessStartInfo startInfo=new ProcessStartInfo();
        //我的机器上没有安装microsoft word --!
        //startInfo.FileName = "winword";
        startInfo.FileName = "wps";
        startInfo.Arguments = file;//设置参数
        Process.Start(startInfo);
    }

    /// <summary>
    /// 执行bat文件
    /// </summary>
    /// <param name="batName"></param>
    static void LaunchBat(string batName)
    {
        ProcessStartInfo startInfo = new ProcessStartInfo();
        startInfo.CreateNoWindow = true;
        startInfo.FileName =batName;
        startInfo.WindowStyle=ProcessWindowStyle.Maximized;
        Process.Start(startInfo);

    }
}

使用示例:调用此方法将在执行 3TexturePacker打包Players图集.bat

/// <summary>
    ///     执行bat,为tk2d打包手持武器准备
    /// </summary>
    private static void ExecuteBat()
    {
        Process proc = null;
        AppDataPath = Application.dataPath;
        try
        {
            proc = new Process();
            proc.StartInfo.FileName = AppDataPath + "/3TexturePacker打包Players图集.bat";
            //proc.StartInfo.Arguments = string.Format("10");//this is argument
            proc.StartInfo.CreateNoWindow = false;
            proc.Start();
            proc.WaitForExit();
        }
        catch (Exception ex)
        {
            CBase.LogError("Exception Occurred :{0},{1}", ex.Message, ex.StackTrace);
        }
        CBase.Log("打包Weapon InHand图集完成!");
    }

MSDN:http://msdn.microsoft.com/zh-cn/library/system.diagnostics.process(v=vs.110).aspx

时间: 2024-08-07 00:18:39

C# Process执行bat的相关文章

java 创建和执行bat

/* */package com.***app.mappcore.impl.util; import java.io.BufferedWriter;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStreamWriter; /** * 批处理文件的执行类.<br> * @author mapengfei <br> * @versio

C# 如何执行bat文件 传参数

C# 如何执行bat文件 传参数 分类: C# basic 2011-04-25 18:55 3972人阅读 评论(0) 收藏 举报 c#stringpathoutput [c-sharp] view plaincopy Process p = new Process(); string path = ...;//bat路径 ProcessStartInfo  pi= new ProcessStartInfo(path, ...);//第二个参数为传入的参数,string类型以空格分隔各个参数

ocx怎么得到classid,与动态执行 bat 文件

1.注册ocx控件: Regsvr32 [PATH]\xxx.ocx2.利用Regedit.exe注册表编辑器,在编辑器的查找里直接输入 .OCX文件名进行查找,找到:“HKEY_CLASSES_ROOT\CLSID\{xxxxxxxxxxxxxxxxxxxxxxxxxxx}”主键后,再利用注册表编辑器菜单上-[注册表]-[导出注册表文件]-然后在文件选择窗里输入导出的注册表文件名 public sealed class COMUtils { /// <summary> /// 检查指定的 C

win7计划任务执行BAT文件问题

今天下午做了一个调用java 可执行jar的程序,想通过win7的计划任务来调用 批处理命令: java -jar BIDropSyc.jar    或者 javaw -jar BIDropSyc.jar 但添加以后发现win7没有调用jar程序,单独点击批处理文件能执行.发现问题是由于没有添加批处理文件所在路径.在如下图框中添加上即可. win7计划任务执行BAT文件问题,布布扣,bubuko.com

Windows Server 2008中使用计划任务定时执行BAT批处理文件图文教程

这篇文章主要介绍了Windows Server 2008中使用计划任务定时执行BAT批处理文件,这样就可以定时执行自己的任务了. 首先Windows Server 2008不同于其他服务器操作系统和Windows Server 2003有着很大的区别,计划任务的名称是"任务计划程序"不在控制面板里,而是在"管理工具"里. 由于服务器需要做些任务,定时执行,自己写程序吧,麻烦,所以采用BAT进行代替操作,网络上很多人都在说每分钟执行怎么配置,今天我们就配置一下. 打开

[Android] [Java] 分享 Process 执行命令行封装类

在上一篇文章中提到,利用Java创建进程执行命令行语句创建过多后会出现无法创建进程的问题. [Android] ProcessBuilder与Runtime.getRuntime().exec分别创建进程的区别 进行多次测试后发现是因为没有正常退出进程,以及完全读取掉流数据,和关闭流导致的问题. 在多次优化后,建立如下封装类: ProcessModel.java import java.io.BufferedReader; import java.io.IOException; import j

Javascript中使用WScript.Shell对象执行.bat文件和cmd命令

Javascript中使用WScript.Shell对象执行.bat文件和cmd命令 http://www.cnblogs.com/ZHF/p/3328439.html WScript.Shell(Windows Script Host Runtime Library)是一个对象,对应的文件是C:/WINDOWS/system32/wshom.ocx,Wscript.shell是服务器系统会用到的一种组件.shell 就是“壳”的意思,这个对象可以执行操作系统外壳常用的操作,比如运行程序.读写注

使用java对执行命令行 或 执行bat文件

public class Hellotianhao { public static void main(String[] args) throws Exception{ System.out.println("hello tianhao"); Runtime.getRuntime().exec("cmd /k mkdir d:\\xutianhao"); } } 运行结果是在d盘新建了一个名为xutianhao的文件夹 java执行bat文件  bat文件书写注意在

Process 执行shell 脚本

概述: Process类是一个抽象类(所有的方法均是抽象的),封装了一个进程(即一个执行程序). Process 类提供了执行从进程输入.执行输出到进程.等待进程完成.检查进程的退出状态以及销毁(杀掉)进程的方法. ProcessBuilder.start() 和 Runtime.exec 方法创建一个本机进程,并返回 Process 子类的一个实例,该实例可用来控制进程并获取相关信息.创建的子进程没有自己的终端或控制台.它的所有标准 io(即 stdin,stdout,stderr)操作都将通