zoukankan      html  css  js  c++  java
  • 多参数启动试验(转载)

    来源:http://blog.csdn.net/vshirleyzhxl/archive/2008/08/03/2760986.aspx

    (一)、先制作一个带启动参数的EXE文件。

     步骤: 

               1、定义全局私有变量:private string[] s = new string[1];  //这里为了简单起见,只做一个参数

               2、  在窗体的构造函数中初始化启动参数   

      

              public Form1(string[] p)
            {
                InitializeComponent();
                s = p;
            }

              3、在main()函数中进行参数判断

            static void Main(string[]   args)
            {
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                if (args.Length <= 0)
                {
                    MessageBox.Show("请输入启动参数");
                    Application.Exit();
                }
                if (args.Length == 1)
                {
                    if (args[0] == "Test")
                    {
                        Application.Run(new Form1(args));
                    }
                    else
                    {
                        MessageBox.Show("启动参数错误,请输入Test");
                        Application.Exit();
                    }
                }
            }

    到这里,带启动参数的EXE文件制作完成

    (二)调用带参数EXE文件(调用刚才做的程序),我写了下面这个简单的函数

            public bool StartProcess(string filename, string[] args)
            {
                try
                {
                    string s="";
                    foreach(string arg in args)
                    {
                    s=s+arg+" ";
                    }
                    s=s.Trim();

                    Process myprocess = new Process();
                    ProcessStartInfo startInfo = new ProcessStartInfo(filename,s);
                    myprocess.StartInfo = startInfo;
                    myprocess.StartInfo.UseShellExecute = false;
                    myprocess.Start();
                    return true;
                }
                catch (Exception ex)
                {
                    MessageBox.Show("启动应用程序时出错!原因:" + ex.Message);
                }
                return false;
            }

    接着,在调用的地方调用此函数

            private void button1_Click(object sender, EventArgs e)
            {
                string[] arg = new string[1];
                arg[0] = textBox1.Text.Trim();
                StartProcess(@"E:\ZHOUXL\C#\FileOP\FileOP\bin\Debug\FileOP.exe",arg);
            }

    这这里,整个任务完成。

    多个参数,先合并成为以空格分割的字符串,去掉文本前后的空格;然后通过Process.Start()启动目标EXE。

    执行程序内部自动以空格作为分割字符串,讲字符串解析成为字符串数组。

  • 相关阅读:
    BZOJ5212 ZJOI2018历史(LCT)
    BZOJ5127 数据校验
    253. Meeting Rooms II
    311. Sparse Matrix Multiplication
    254. Factor Combinations
    250. Count Univalue Subtrees
    259. 3Sum Smaller
    156. Binary Tree Upside Down
    360. Sort Transformed Array
    348. Design Tic-Tac-Toe
  • 原文地址:https://www.cnblogs.com/bobzhangfw/p/1283321.html
Copyright © 2011-2022 走看看