Пример #1
0
 public void 执行命令(M命令 __命令)
 {
     if (__命令.参数列表 != null && __命令.参数列表.Count > 0)
     {
         var __窗口 = new F输入参数(__命令, __实参 =>
         {
             var __命令列表 = 合成命令(__命令, __实参);
             _正常输出缓存.AppendLine();
             __命令列表.ForEach(q => _正常输出缓存.AppendLine(q));
             _B命令行.执行(_进程标识, __命令列表);
         });
         new F空窗口(__窗口, "输入参数").ShowDialog();
     }
     else
     {
         if (!_进程已创建)
         {
             创建进程();
         }
         if (_进程已创建)
         {
             _正常输出缓存.AppendLine();
             __命令.命令行列表.ForEach(q => _正常输出缓存.AppendLine(q));
             _B命令行.执行(_进程标识, __命令.命令行列表);
         }
     }
 }
Пример #2
0
 public F输入参数(M命令 __命令, Action <Dictionary <string, string> > __处理实参)
 {
     _命令   = __命令;
     _形参   = __命令.参数列表;
     _处理实参 = __处理实参;
     InitializeComponent();
 }
Пример #3
0
 public void 执行命令(M命令 __命令)
 {
     if (__命令.参数列表 != null && __命令.参数列表.Count > 0)
     {
         var __窗口 = new F输入参数(__命令, __实参 => _B命令行.执行(_进程标识, F命令行.合成命令(__命令, __实参)));
         new F空窗口(__窗口, "输入参数").ShowDialog();
     }
     else
     {
         _B命令行.执行(_进程标识, __命令.命令行列表);
     }
 }
Пример #4
0
        public static List <string> 合成命令(M命令 __命令, Dictionary <string, string> __参数 = null)
        {
            var __命令行列表 = __命令.命令行列表;

            if (__命令.参数列表 != null && __命令.参数列表.Count > 0 && __参数 != null)
            {
                __命令行列表 = new List <string>(__命令行列表);
                for (int i = 0; i < __命令行列表.Count; i++)
                {
                    foreach (var item in __参数)
                    {
                        __命令行列表[i] = __命令行列表[i].Replace("<" + item.Key + ">", item.Value);
                    }
                }
            }
            return(__命令行列表);
        }