12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- using System;
- using System.Collections.Generic;
- using System.Diagnostics;
- using System.IO;
- using System.Linq;
- using System.Text;
- using System.Threading;
- using System.Threading.Tasks;
- using WUtilitiesV01.Helper.IOHelper;
- using WUtilitiesV01.Helper.ProcessHelpers;
- using WUtilitiesV01.WLogs;
- using WUtilitiesV01.WLogs.Models.Loggers;
- namespace Ips.Cfq.QfCard.Cli
- {
- class Program
- {
- static void Main(string[] args)
- {
- //com1-1 1920 com1-2 1950
- WLog.Instance.AddConsoleLogger();
- var fileLogger = WLog.Instance.AddFileLogger();
- WLog.Instance.LogEmptyLine();
- WLog.Instance.Info("接收到命令行参数:" + args.ExtJoin(" "));
- try
- {
- run(args);
- }
- catch (Exception e)
- {
- WLog.Instance.Error(e, "");
- }
- WLog.Instance.Flush();
- Thread.Sleep(1000);
- }
- static void run(string[] args)
- {
- for (int i = 0; i < args.Length; i += 2)
- {
- var comStr = args[i];
- var comArr = comStr.Split('-');
- var com = comArr[0];
- var channel = comArr[1];
- var freq = double.Parse(args[i + 1]);
-
- setCom(com);
- setFreq((freq / 1000000).ToString(), channel);
- }
- }
- static void setCom(string com)
- {
- var m = SettingService.Instance.GetModel();
- //RFCardAPI.exe --card qf3963 --com com9
- var cmd = "--card " + m.CardType + " --com {0}";
- callRF(string.Format(cmd, com));
- }
- static void setFreq(string freqMHz, string ch)
- {
- var m = SettingService.Instance.GetModel();
- var gain = m.GetGain(ch);
- var cmd = "--part 0 --ch {0} --freq {1} --gain " + gain;
- //var cmd = "--part 0 --ch {0} --freq {1}";
- var ich = int.Parse(ch) - 1;
- callRF(string.Format(cmd, ich, freqMHz));
- }
- static void callRF(string cmd)
- {
- WLog.Instance.Info("callRF:" + cmd);
- var r = CmdHelper.Run(Path.Combine(DirectoryHelper.GetCurrentDirectory(), "RFCardAPI", "RFCardAPI.exe"), (process, info) =>
- {
- info.WorkingDirectory = Path.Combine(DirectoryHelper.GetCurrentDirectory(), "RFCardAPI");
- }, paramStrs: cmd);
- WLog.Instance.Info("执行结果:" + r.Output + r.OutputError);
- }
- }
- }
|