zoukankan      html  css  js  c++  java
  • C# Process执行bat

    Process类

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

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

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

    使用示例一

    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:CodeUnity3DSVNcosmosbox关卡制作教程.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文档

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

  • 相关阅读:
    win7下环境搭建
    python简介-copy
    解决MindManager缺少mfc100u.dll无法启动的难题-转载
    Svn win7系统下状态图标不显示-转载
    【R笔记】order函数例子
    【R笔记】R语言进阶之4:数据整形(reshape)
    【R笔记】R语言利器之ddply
    天池新人实战赛之[离线赛]题目与思路
    第一次写博客
    程序员需要有多懒 ?- cocos2d-x 数学函数、常用宏粗整理
  • 原文地址:https://www.cnblogs.com/zhaoqingqing/p/4029277.html
Copyright © 2011-2022 走看看