OTSSystemManagerForms.cs 37 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092
  1. /*
  2. --创建人:韩维柏
  3. --创建日期:2017-06-20
  4. --修改人:
  5. --修改日期:
  6. --说明:密钥配置、SEM设置
  7. */
  8. using System;
  9. using System.Collections.Generic;
  10. using System.ComponentModel;
  11. using System.Data;
  12. using System.Drawing;
  13. using System.IO;
  14. using System.Linq;
  15. using System.Text;
  16. using System.Threading.Tasks;
  17. using System.Windows.Forms;
  18. using System.Xml;
  19. using NSLogFunExport;
  20. using NSOTSController;
  21. using System.Threading;
  22. //using OTSINTERFACE;
  23. using Microsoft.Win32;
  24. using System.Collections;
  25. using OTSDataType;
  26. using OTSModelSharp;
  27. using static OTSDataType.otsdataconst;
  28. using OTSSysMgrTools;
  29. namespace OTSSysMgrApp
  30. {
  31. public partial class OTSSystemManagerForms : Form
  32. {
  33. #region 全部变量声明
  34. //获取XML 路径
  35. static string xmlFilePath = string.Empty;// System.Configuration.ConfigurationManager.ConnectionStrings["XMLFilePath"].ConnectionString;
  36. //日志路径
  37. static string LogPath = string.Empty;//System.Configuration.ConfigurationManager.ConnectionStrings["LogPath"].ConnectionString;
  38. static string LogAppPath = string.Empty;//System.Configuration.ConfigurationManager.ConnectionStrings["LogAppPath"].ConnectionString;
  39. static string XMLFileName = string.Empty;//System.Configuration.ConfigurationManager.ConnectionStrings["XMLFileName"].ConnectionString;
  40. static string DLLXMLFileName = string.Empty;//System.Configuration.ConfigurationManager.ConnectionStrings["DLLXMLFileName"].ConnectionString;
  41. //设置日志路径
  42. public static NSLogFunExport.CFunExportClass cfunClass = null;// new NSLogFunExport.CFunExportClass();
  43. string SubKey = "OTSDevName";
  44. //国际化
  45. OTSSysMgrTools.ImageDispose lan;
  46. //国际化存储信息
  47. Hashtable table;
  48. static string message1, message2, message3, message4 ,message5 , message6 ,message7 , message8, message9, message10;
  49. static OTS_SOFT_PACKAGE_ID oTS_SOFT_PACKAGE_ID;
  50. static OTS_LICENSE_TYPE oTS_LICENSE_TYPE;
  51. #endregion
  52. #region 构造函数
  53. public OTSSystemManagerForms()
  54. {
  55. try
  56. {
  57. //获取XML 路径
  58. xmlFilePath = System.Configuration.ConfigurationManager.ConnectionStrings["XMLFilePath"].ConnectionString;
  59. //日志路径
  60. LogPath = System.Configuration.ConfigurationManager.ConnectionStrings["LogPath"].ConnectionString;
  61. LogAppPath = System.Configuration.ConfigurationManager.ConnectionStrings["LogAppPath"].ConnectionString;
  62. XMLFileName = System.Configuration.ConfigurationManager.ConnectionStrings["XMLFileName"].ConnectionString;
  63. DLLXMLFileName = System.Configuration.ConfigurationManager.ConnectionStrings["DLLXMLFileName"].ConnectionString;
  64. cfunClass = new NSLogFunExport.CFunExportClass();
  65. //初始化日志路径
  66. cfunClass.InitLog(LogAppPath);
  67. InitializeComponent();
  68. }
  69. catch (Exception ex)
  70. {
  71. cfunClass.TraceErrorLog("OTSSystemManagerForms_OTSSystemManagerForms()--错误信息:"+ex.ToString());
  72. }
  73. //国际化
  74. lan = new OTSSysMgrTools.ImageDispose();
  75. table = lan.GetNameTable();
  76. message1 = table["message1"].ToString();
  77. message2 = table["message2"].ToString();
  78. message3 = table["message3"].ToString();
  79. message4 = table["message4"].ToString();
  80. message5 = table["message5"].ToString();
  81. message6 = table["message6"].ToString();
  82. message7 = table["message7"].ToString();
  83. message8 = table["message8"].ToString();
  84. message9 = table["message9"].ToString();
  85. message10 = table["message10"].ToString();
  86. rdb_ch.Checked = true;
  87. }
  88. #endregion
  89. #region 保存设置
  90. /// <summary>
  91. /// 保存设置
  92. /// </summary>
  93. /// <param name="Name">节点名称</param>
  94. /// <param name="Value">节点参数值</param>
  95. public void SaveSetting(string Name, string Value)
  96. {
  97. try
  98. {
  99. //判断XML文件中是否存在
  100. if (!XMLOperationClass.ExistsXmlInfo(Name))
  101. {
  102. //调用添加XML节点功能
  103. XMLOperationClass.AddXmlInfo(Name, Value);
  104. }
  105. else
  106. {
  107. //调用修改XML节点功能
  108. XMLOperationClass.EditXmlInfo(Name, Value);
  109. }
  110. }
  111. catch (Exception ex)
  112. {
  113. //记录日志信息
  114. cfunClass.TraceErrorLog(ex.Message.ToString());
  115. }
  116. }
  117. #endregion
  118. #region 修改设置
  119. public void EditSetting(string Name, string Value)
  120. {
  121. try
  122. {
  123. //调用修改XML节点功能
  124. XMLOperationClass.EditXmlInfo(Name, Value);
  125. }
  126. catch (Exception ex)
  127. {
  128. //记录日志信息
  129. cfunClass.TraceErrorLog(ex.Message.ToString());
  130. }
  131. }
  132. #endregion
  133. #region 控件事件汇总
  134. /// <summary>
  135. /// 打开SEM设置
  136. /// </summary>
  137. /// <param name="sender"></param>
  138. /// <param name="e"></param>
  139. private void btnSEMTest_Click(object sender, EventArgs e)
  140. {
  141. if (CmbSEMController.Text.Equals(""))
  142. {
  143. string str1 = table["str1"].ToString();
  144. MessageBox.Show(str1, "Tip");
  145. }
  146. //实力窗口对象
  147. SemTestForms sTextForms = new SemTestForms();
  148. //判断窗口对话框返回值
  149. sTextForms.ShowDialog();
  150. }
  151. /// <summary>
  152. /// 窗口加载
  153. /// </summary>
  154. /// <param name="sender"></param>
  155. /// <param name="e"></param>
  156. private void OTSSystemManagerForms_Load(object sender, EventArgs e)
  157. {
  158. CmbSEMController.SelectedItem = CmbSEMController.Items[0].ToString(); //"Bruker";
  159. CmbEDSController.SelectedItem = CmbEDSController.Items[0].ToString();// "Genesis";
  160. //获取窗体中所有参数
  161. //GetWindowsControlValue();
  162. //获取下拉选项
  163. ReadXMLFile();
  164. //添加事件
  165. CmbSEMController.SelectedIndexChanged += new EventHandler(CmbSEMController_SelectedIndexChanged);
  166. CmbEDSController.SelectedIndexChanged += new EventHandler(CmbEDSController_SelectedIndexChanged);
  167. //实例化C++对象 从选择文件对话框中 选择Lsk文件
  168. fun = new COTSLicMgr();
  169. otsInfoClr = new COTSLicenseInfo();
  170. //获取选择版本信息
  171. GetBrukerController();
  172. string message = string.Empty;
  173. SaveSEMAndEDSController();
  174. SaveSelectVersionInfo();
  175. //try
  176. //{
  177. // //判断是否注册与日期是否有效
  178. // if (!IsValidLicense(ref message))
  179. // {
  180. // tabHardwareSet.Parent = null;
  181. // }
  182. // else
  183. // {
  184. // //获取已存在的注册信息
  185. // tbLComupterName.Text = GetLicenseInfo("ComupterName");
  186. // tbLHardwareID.Text = GetLicenseInfo("HardwareID");
  187. // tbOTSProduct.Text = GetLicenseInfo("OTSProduct");
  188. // tbPassType.Text = GetLicenseInfo("PassType");
  189. // tbExpireDate.Text = Convert.ToDateTime(GetLicenseInfo("ExpireDate")).ToString("yyyy-MM-dd");
  190. // //显示硬件Tab菜单
  191. // tabHardwareSet.Parent = tabControl1;
  192. // }
  193. //}
  194. //catch (Exception)
  195. //{
  196. //}
  197. tabHardwareSet.Parent = tabControl1;
  198. ImageDispose SysMgrTools = new ImageDispose();
  199. string str = SysMgrTools.ReadDefaultLanguage();
  200. //for (int i = 0; i < cbbLanguage.Items.Count; i++)
  201. //{
  202. // if (cbbLanguage.Items[i].ToString().Contains(str))
  203. // {
  204. // cbbLanguage.SelectedItem = cbbLanguage.Items[i];
  205. // }
  206. //}
  207. }
  208. /// <summary>
  209. /// 将所有参数保存
  210. /// </summary>
  211. /// <param name="sender"></param>
  212. /// <param name="e"></param>
  213. //private void btnDone_Click(object sender, EventArgs e)
  214. //{
  215. // try
  216. // {
  217. // //节点名称与节点参数值
  218. // string Name = string.Empty;
  219. // string Value = string.Empty;
  220. // //判断本地中是否存在文件路径
  221. // if (ExistsFile(xmlFilePath))
  222. // {
  223. // //遍历tabHardwareSet标签中所有的ComboBox控件
  224. // foreach (Control control in this.tabHardwareSet.Controls)
  225. // {
  226. // //判断类型名称
  227. // if (control is ComboBox)
  228. // {
  229. // //获取节点名称与节点参数值
  230. // Name = (control as ComboBox).Name.Substring(2);
  231. // Value = (control as ComboBox).Text;
  232. // SaveSetting(Name, Value);
  233. // }
  234. // }
  235. // //遍历tabHardwareSet标签中所有的ComboBox控件
  236. // foreach (Control control in this.tabLicenseSet.Controls)
  237. // {
  238. // //判断类型名称
  239. // if (control is ComboBox)
  240. // {
  241. // //获取节点名称与节点参数值
  242. // Name = (control as ComboBox).Name.Substring(2);
  243. // Value = (control as ComboBox).Text;
  244. // SaveSetting(Name, Value);
  245. // }
  246. // if (control is TextBox)
  247. // {
  248. // //获取节点名称与节点参数值
  249. // Name = (control as TextBox).Name.Substring(2);
  250. // Value = (control as TextBox).Text;
  251. // SaveSetting(Name, Value);
  252. // }
  253. // }
  254. // }
  255. // else
  256. // {
  257. // //如果文件不存在,则创建文件
  258. // CreateFile(xmlFilePath);
  259. // }
  260. // //关闭窗口
  261. // this.Close();
  262. // }
  263. // catch (Exception ex)
  264. // {
  265. // cfunClass.TraceErrorLog(ex.Message.ToString());
  266. // }
  267. //}
  268. private void btnEDSTest_Click(object sender, EventArgs e)
  269. {
  270. //实例窗口对象
  271. ControllerSettingForm sTextForms = new ControllerSettingForm();
  272. try
  273. {
  274. sTextForms.Show();
  275. }
  276. catch (InvalidOperationException ex)
  277. {
  278. cfunClass.TraceErrorLog("OTSSystemManagerForms_btnEDSTest_Click-错误日志:"+ ex.ToString());
  279. }
  280. }
  281. private void SaveSEMAndEDSController()
  282. {
  283. string SEMName = string.Empty;
  284. if (CmbSEMController.SelectedItem != null)
  285. {
  286. SEMName = CmbSEMController.SelectedItem.ToString();
  287. }
  288. string EDSName = string.Empty;
  289. if (CmbEDSController.SelectedItem != null)
  290. {
  291. EDSName = CmbEDSController.SelectedItem.ToString();
  292. }
  293. if (SEMName == "Oxford" && EDSName == "Oxford")
  294. {
  295. rbEsprit19.Visible = false;
  296. rbEsprit21.Visible = false;
  297. label1.Visible = false;
  298. }
  299. else
  300. {
  301. rbEsprit19.Visible = true;
  302. rbEsprit21.Visible = true;
  303. label1.Visible = true;
  304. }
  305. try
  306. {
  307. bool result = WriteXMLFile(SEMName, EDSName);
  308. }
  309. catch (Exception ex)
  310. {
  311. cfunClass.TraceErrorLog("SaveSelectVersionInfo()--错误日志:" + ex.ToString() + "");
  312. }
  313. }
  314. #region 获取与设置 选择版本号
  315. private void GetSelectVersionInfo()
  316. {
  317. }
  318. private void SaveSelectVersionInfo()
  319. {
  320. string selectVersion = string.Empty;
  321. if (rbEsprit19.Checked)
  322. {
  323. selectVersion = rbEsprit19.Text;
  324. }
  325. if (rbEsprit21.Checked)
  326. {
  327. selectVersion = rbEsprit21.Text;
  328. }
  329. try
  330. {
  331. if (!selectVersion.Trim().Equals(""))
  332. {
  333. bool result = WriteXMLFileVersion(selectVersion);
  334. }
  335. }
  336. catch (Exception ex)
  337. {
  338. cfunClass.TraceErrorLog("OTSSystemManagerForms_SaveSelectVersionInfo()--错误日志:" + ex.ToString() + "");
  339. }
  340. }
  341. #endregion
  342. private void ReadXMLFile()
  343. {
  344. string xmlSEMName = string.Empty;
  345. string xmlEDSName = string.Empty;
  346. bool result = XMLOperationClass.ReadXMLFile(XMLFileName, ref xmlSEMName, ref xmlEDSName);
  347. if (result)
  348. {
  349. if (xmlSEMName != "")
  350. {
  351. CmbSEMController.SelectedItem = xmlSEMName.ToString();
  352. }
  353. if (xmlEDSName != "")
  354. {
  355. CmbEDSController.SelectedItem = xmlEDSName.ToString();
  356. }
  357. else
  358. {
  359. try
  360. {
  361. CmbSEMController.SelectedItem = CmbSEMController.Items[0].ToString(); //"Bruker";
  362. CmbEDSController.SelectedItem = CmbEDSController.Items[0].ToString();// "Genesis";
  363. }
  364. catch (Exception)
  365. {
  366. throw;
  367. }
  368. }
  369. }
  370. else
  371. {
  372. CmbSEMController.SelectedItem = CmbSEMController.Items[0].ToString();
  373. CmbEDSController.SelectedItem = CmbEDSController.Items[0].ToString();
  374. }
  375. }
  376. private bool WriteXMLFile(string xmlSEMName, string xmlEDSName)
  377. {
  378. try
  379. {
  380. return XMLOperationClass.WriteXMLFile(XMLFileName, xmlSEMName, xmlEDSName);
  381. }
  382. catch (Exception)
  383. {
  384. return false;
  385. }
  386. }
  387. private bool WriteXMLFileVersion(string selectVersion)
  388. {
  389. try
  390. {
  391. return XMLOperationClass.WriteXMLFileVersion(DLLXMLFileName, selectVersion);
  392. }
  393. catch (Exception)
  394. {
  395. return false;
  396. }
  397. }
  398. private void GetSEMAndEDSController()
  399. {
  400. string xmlNodeSEM = XMLOperationClass.GetXMLInformations("SEMName");
  401. string xmlNodeEDS = XMLOperationClass.GetXMLInformations("EDSName");
  402. if (xmlNodeSEM != null)
  403. {
  404. CmbSEMController.SelectedItem = xmlNodeSEM.ToString();
  405. }
  406. if (xmlNodeEDS != null)
  407. {
  408. CmbEDSController.SelectedItem = xmlNodeEDS.ToString();
  409. }
  410. }
  411. private void GetBrukerController()
  412. {
  413. try
  414. {
  415. //获取XML中 选择版本的信息
  416. string selecVersion = string.Empty;
  417. bool result = XMLOperationClass.ReadXMLFileVersion(DLLXMLFileName, ref selecVersion);
  418. if (result)
  419. {
  420. if (selecVersion.Equals(rbEsprit19.Text))
  421. {
  422. rbEsprit19.Checked = true;
  423. }
  424. else if (selecVersion.Equals(rbEsprit21.Text))
  425. {
  426. rbEsprit21.Checked = true;
  427. }
  428. else
  429. {
  430. rbEsprit19.Checked = false;
  431. rbEsprit21.Checked = false;
  432. }
  433. }
  434. else
  435. {
  436. rbEsprit19.Checked = false;
  437. rbEsprit21.Checked = true;
  438. }
  439. }
  440. catch (Exception)
  441. {
  442. }
  443. }
  444. //private void GetRegistData()
  445. //{
  446. // try
  447. // {
  448. // string SEMRegistData = string.Empty;
  449. // string EDSRegistData = string.Empty;
  450. // RegistryKey hkml = Registry.LocalMachine;
  451. // RegistryKey software = hkml.OpenSubKey("SOFTWARE", true);
  452. // RegistryKey aimdir = software.OpenSubKey(SubKey, true);
  453. // if (aimdir != null)
  454. // {
  455. // if (IsRegeditExit("SEMName"))
  456. // {
  457. // SEMRegistData = aimdir.GetValue("SEMName").ToString();
  458. // CmbSEMController.SelectedItem = SEMRegistData.ToString();
  459. // }
  460. // if (IsRegeditExit("EDSName"))
  461. // {
  462. // EDSRegistData = aimdir.GetValue("EDSName").ToString();
  463. // CmbEDSController.SelectedItem = EDSRegistData.ToString();
  464. // }
  465. // }
  466. // }
  467. // catch (Exception)
  468. // {
  469. // //MessageBox.Show("读取失败,请以管理员身份运行!");
  470. // return;
  471. // }
  472. //}
  473. //private bool WTRegedit(string name, string tovalue)
  474. //{
  475. // try
  476. // {
  477. // RegistryKey hklm = Registry.LocalMachine;
  478. // RegistryKey software = hklm.OpenSubKey("SOFTWARE", true);
  479. // RegistryKey aimdir = software.CreateSubKey(SubKey);
  480. // aimdir.SetValue(name, tovalue);
  481. // return true;
  482. // }
  483. // catch (Exception)
  484. // {
  485. // //MessageBox.Show("写入失败,请以管理员身份运行!");
  486. // return false;
  487. // }
  488. //}
  489. private bool IsRegeditExit(string name)
  490. {
  491. try
  492. {
  493. bool _exit = false;
  494. string[] valueNames;
  495. RegistryKey hkml = Registry.LocalMachine;
  496. RegistryKey software = hkml.OpenSubKey("SOFTWARE", true);
  497. RegistryKey aimdir = software.OpenSubKey(SubKey, true);
  498. valueNames = aimdir.GetValueNames();
  499. foreach (string keyName in valueNames)
  500. {
  501. if (keyName == name)
  502. {
  503. _exit = true;
  504. return _exit;
  505. }
  506. }
  507. return _exit;
  508. }
  509. catch (Exception ex)
  510. {
  511. MessageBox.Show("IsRegeditExit:" + ex.ToString());
  512. return false;
  513. }
  514. }
  515. #endregion
  516. #region 判断文件路径
  517. /// <summary>
  518. /// 判断文件路径
  519. /// </summary>
  520. /// <param name="path"></param>
  521. /// <returns></returns>
  522. public bool CreateFile(string path)
  523. {
  524. Directory.CreateDirectory(path);
  525. return false;
  526. }
  527. #endregion
  528. #region 判断文件是否存在
  529. /// <summary>
  530. /// 判断文件是否存在
  531. /// </summary>
  532. /// <param name="path">文件路径</param>
  533. /// <returns></returns>
  534. //public bool ExistsFile(string path)
  535. //{
  536. // try
  537. // {
  538. // if (File.Exists(path))
  539. // {
  540. // return true;
  541. // }
  542. // return false;
  543. // }
  544. // catch (Exception ex)
  545. // {
  546. // //记录日志文件
  547. // cfunClass.TraceErrorLog(ex.Message.ToString());
  548. // return false;
  549. // }
  550. //}
  551. #endregion
  552. #region 获取窗体中所有参数
  553. /// <summary>
  554. /// 获取窗体中控件的所有参数
  555. /// </summary>
  556. public void GetWindowsControlValue()
  557. {
  558. try
  559. {
  560. XmlDocument doc = new XmlDocument();
  561. //加载Xml文件
  562. doc.Load(xmlFilePath);
  563. //获取根节点
  564. XmlElement root = doc.DocumentElement;
  565. //获取子节点集合
  566. XmlNodeList mainNodes = root.GetElementsByTagName("parameter");
  567. foreach (XmlNode node in mainNodes)
  568. {
  569. //获取Name属性值
  570. string text = ((XmlElement)node).GetAttribute("Name");
  571. string value = ((XmlElement)node).GetAttribute("Value");
  572. //
  573. foreach (Control control in this.tabHardwareSet.Controls)
  574. {
  575. //判断类型名称
  576. if (control.Name.Contains(text))
  577. {
  578. if (control is TextBox)
  579. {
  580. ((TextBox)control).Text = value;
  581. }
  582. else if (control is ComboBox)
  583. {
  584. ((ComboBox)control).SelectedValue = value;
  585. }
  586. else if (control is CheckBox)
  587. {
  588. ((CheckBox)control).Checked = text.Equals("1") ? true : false;
  589. }
  590. }
  591. }
  592. }
  593. }
  594. catch (Exception ex)
  595. {
  596. cfunClass.TraceErrorLog(ex.Message.ToString());
  597. }
  598. }
  599. #endregion
  600. #region 加载时默认设置版本信息
  601. /// <summary>
  602. /// 加载时默认设置版本信息
  603. /// </summary>
  604. public void OnLoadSetVersionInfo()
  605. {
  606. //版本信息
  607. string EspritName = string.Empty;
  608. if (rbEsprit19.Checked)
  609. {
  610. }
  611. else if (rbEsprit21.Checked)
  612. {
  613. }
  614. }
  615. #endregion
  616. //private void btnRequest_Click(object sender, EventArgs e)
  617. //{
  618. // //打开注册License通行证信息
  619. // OpenLicenseDialog();
  620. //}
  621. static COTSLicMgr fun = null;
  622. static COTSLicenseInfo otsInfoClr = null;
  623. //private void btnActive_Click(object sender, EventArgs e)
  624. //{
  625. // try
  626. // {
  627. // //1.获取License通行证信息
  628. // bool result = fun.LoadLicenseInfoFromFile(ref otsInfoClr);
  629. // if (result)
  630. // {
  631. // //1.写入XML
  632. // SaveSetting("ComupterName", fun.m_ComputerNicName);
  633. // SaveSetting("HardwareID", fun.m_MachineId);
  634. // SaveSetting("OTSProduct", fun.m_PackId == 0 ? "OTSIncA" : "OtsPartA");
  635. // SaveSetting("PassType", fun.m_LicType == 0 ? "Online" : "Offline");
  636. // SaveSetting("ExpireDate", fun.m_oExpireDate.ToString());
  637. // string MessageInfo = string.Empty;
  638. // if (!IsValidLicense(ref MessageInfo))
  639. // {
  640. // MessageBox.Show(MessageInfo);
  641. // }
  642. // else
  643. // {
  644. // //获取XML中的注册信息
  645. // tbLComupterName.Text = GetLicenseInfo("ComupterName");
  646. // tbLHardwareID.Text = GetLicenseInfo("HardwareID");
  647. // tbOTSProduct.Text = GetLicenseInfo("OTSProduct");
  648. // tbPassType.Text = GetLicenseInfo("PassType");
  649. // tbExpireDate.Text = Convert.ToDateTime(GetLicenseInfo("ExpireDate")).ToString("yyyy-MM-dd");
  650. // //显示硬件Tab菜单
  651. // tabHardwareSet.Parent = tabControl1;
  652. // }
  653. // }
  654. // }
  655. // catch (Exception ex)
  656. // {
  657. // cfunClass.TraceErrorLog("OTSSystemManagerForms_btnActive_Click_Exception:" + ex.Message.ToString() + "");
  658. // }
  659. // finally
  660. // {
  661. // fun.FreePointer();
  662. // otsInfoClr.FreePointer();
  663. // }
  664. //}
  665. #region 判断当前License信息是否正确
  666. //public static bool IsValidLicense(ref string MessageInfo)
  667. //{
  668. // if (fun == null)
  669. // {
  670. // fun = new COTSLicMgr();
  671. // }
  672. // if (otsInfoClr == null)
  673. // {
  674. // otsInfoClr = new COTSLicenseInfo();
  675. // }
  676. // if (cfunClass == null)
  677. // {
  678. // cfunClass = new NSLogFunExport.CFunExportClass();
  679. // }
  680. // //实例化C++对象 从选择文件对话框中 选择Lsk文件
  681. // //1.检查通行证是否合法
  682. // //计算机名称
  683. // string ComupterName = GetLicenseInfo("ComupterName");
  684. // //硬件ID
  685. // string HardwareID = GetLicenseInfo("HardwareID");
  686. // //OTS产品
  687. // int OTSProduct = Convert.ToInt32(GetLicenseInfo("OTSProduct") == "OTSIncA" ? 0 : 1);
  688. // //通行证类型
  689. // int PassType = Convert.ToInt32(GetLicenseInfo("PassType") == "Online" ? 0 : 1);
  690. // //有效期
  691. // DateTime ExpireDate = Convert.ToDateTime(GetLicenseInfo("ExpireDate") != "" ? GetLicenseInfo("ExpireDate") : DateTime.Now.ToString());
  692. // //判断查询参数
  693. // otsInfoClr.SetComputerNickName(ComupterName);
  694. // otsInfoClr.SetMachineId(HardwareID);
  695. // // otsInfoClr.SetPackId(oTS_SOFT_PACKAGE_ID);
  696. // // otsInfoClr.SetLicType(PassType);
  697. // otsInfoClr.SetExpireDate(ExpireDate);
  698. // int nResult = 0;
  699. // bool bResult = fun.IsValidLicense(OTSProduct, otsInfoClr, ref nResult, true, true);
  700. // if (bResult)
  701. // {
  702. // //2.将通行证写入指定的路径
  703. // bool CreateResult = fun.CreateLicenseFile(otsInfoClr);
  704. // if (CreateResult)
  705. // {
  706. // return true;
  707. // }
  708. // return false;
  709. // }
  710. // else
  711. // {
  712. // MessageInfo = message1;
  713. // switch (nResult)
  714. // {
  715. // case 0:
  716. // MessageInfo += message2;
  717. // break;
  718. // case 1:
  719. // MessageInfo += message3;
  720. // break;
  721. // case 2:
  722. // MessageInfo += message4;
  723. // break;
  724. // case 3:
  725. // MessageInfo += message5;
  726. // break;
  727. // case 4:
  728. // MessageInfo += message6;
  729. // break;
  730. // case 5:
  731. // MessageInfo += message7;
  732. // break;
  733. // case 6:
  734. // MessageInfo += message8;
  735. // break;
  736. // }
  737. // return false;
  738. // }
  739. //}
  740. #endregion
  741. #region 获取License参数
  742. /// <summary>
  743. /// 获取并显示 Licanse参数
  744. /// </summary>
  745. //public void OpenLicenseDialog()
  746. //{
  747. // try
  748. // {
  749. // fun = new COTSLicMgr();
  750. // string str = fun.GetMachineId();
  751. // //获取电脑ID
  752. // string MachineId = fun.GetMachineId();
  753. // //实例化C++对象
  754. // otsInfoClr = new COTSLicenseInfo();
  755. // //设置电脑ID
  756. // otsInfoClr.SetMachineId(MachineId);
  757. // bool a_bAdd = false;
  758. // bool a_bRequest = true;
  759. // //弹出通行证窗体
  760. // bool result = fun.ShowEditDialogExport(otsInfoClr, a_bAdd, a_bRequest);
  761. // if (result)
  762. // {
  763. // return;
  764. // }
  765. // }
  766. // catch (Exception)
  767. // {
  768. // }
  769. // finally
  770. // {
  771. // fun.FreePointer();
  772. // otsInfoClr.FreePointer();
  773. // }
  774. //}
  775. /// <summary>
  776. /// 获取电脑名称
  777. /// </summary>
  778. //public string GetComupterName()
  779. //{
  780. // return "";
  781. //}
  782. /// <summary>
  783. /// 获取硬件ID
  784. /// </summary>
  785. //public string GetHardwareID()
  786. //{
  787. // return "";
  788. //}
  789. /// <summary>
  790. /// 项目
  791. /// </summary>
  792. //public string GetOTSProduct()
  793. //{
  794. // //OTSIncA=0
  795. // //OtsPartA=1
  796. // return "";
  797. //}
  798. /// <summary>
  799. /// 通行证种类
  800. /// </summary>
  801. //public string GetPassType()
  802. //{
  803. // //Online = 0,
  804. // //Offline = 1,
  805. // return "";
  806. //}
  807. /// <summary>
  808. /// 时间
  809. /// </summary>
  810. //public string GetExpireDate()
  811. //{
  812. // return "";
  813. //}
  814. /// <summary>
  815. /// 显示通行证信息
  816. /// </summary>
  817. //public void ShowLicenseInfo()
  818. //{
  819. //}
  820. #endregion
  821. private void OTSSystemManagerForms_FormClosing(object sender, FormClosingEventArgs e)
  822. {
  823. //if (fun != null)
  824. //{
  825. ////// fun.FreePointer();
  826. //}
  827. if (otsInfoClr != null)
  828. {
  829. otsInfoClr.FreePointer();
  830. }
  831. if (cfunClass != null)
  832. {
  833. cfunClass.EndCSharpLogFile();
  834. }
  835. //SaveSEMAndEDSController();
  836. //写入
  837. //bool SEMSetting = WTRegedit("SEMName", CmbSEMController.SelectedItem.ToString());
  838. //bool EDSSetting = WTRegedit("EDSName", CmbEDSController.SelectedItem.ToString());
  839. //if (SEMSetting && EDSSetting)
  840. //{
  841. // //设置注册表成功
  842. //}
  843. }
  844. private void lnklab_about_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
  845. {
  846. //打开关于窗体,显示版本号等信息
  847. About a = new About();
  848. a.ShowDialog();
  849. }
  850. private void rdb_ch_CheckedChanged(object sender, EventArgs e)
  851. {
  852. if (rdb_ch.Checked == true)
  853. {
  854. rdb_en.Checked = false;
  855. WriteDefaultLanguage("ZH");
  856. //国际化
  857. ImageDispose lan1 = new ImageDispose();
  858. }
  859. else
  860. {
  861. rdb_en.Checked = true;
  862. WriteDefaultLanguage("EN");
  863. //国际化
  864. ImageDispose lan1 = new ImageDispose();
  865. }
  866. }
  867. private void rdb_en_CheckedChanged(object sender, EventArgs e)
  868. {
  869. if (rdb_en.Checked == true)
  870. {
  871. rdb_ch.Checked = false;
  872. WriteDefaultLanguage("EN");
  873. //国际化
  874. ImageDispose lan1 = new ImageDispose();
  875. }
  876. else
  877. {
  878. rdb_ch.Checked = true;
  879. WriteDefaultLanguage("ZH");
  880. //国际化
  881. ImageDispose lan1 = new ImageDispose();
  882. }
  883. }
  884. private void CmbSEMController_SelectedIndexChanged(object sender, EventArgs e)
  885. {
  886. SaveSEMAndEDSController();
  887. }
  888. private void CmbEDSController_SelectedIndexChanged(object sender, EventArgs e)
  889. {
  890. SaveSEMAndEDSController();
  891. }
  892. private void rbEsprit19_CheckedChanged(object sender, EventArgs e)
  893. {
  894. if (rbEsprit19.Checked)
  895. {
  896. //记录版本
  897. SaveSelectVersionInfo();
  898. }
  899. }
  900. private void rbEsprit21_CheckedChanged(object sender, EventArgs e)
  901. {
  902. if (rbEsprit21.Checked)
  903. {
  904. //记录版本
  905. SaveSelectVersionInfo();
  906. }
  907. }
  908. /// <summary>
  909. /// 判断是否注册与日期是否有效
  910. /// </summary>
  911. /// <returns></returns>
  912. //public static bool ExistsLicenseInfo(ref string message)
  913. //{
  914. // try
  915. // {
  916. // //计算机名称
  917. // string tbLComupterName = GetLicenseInfo("ComupterName");
  918. // //硬件ID
  919. // string tbLHardwareID = GetLicenseInfo("HardwareID");
  920. // //OTS产品
  921. // string tbOTSProduct = GetLicenseInfo("OTSProduct");
  922. // //通行证类型
  923. // string tbPassType = GetLicenseInfo("PassType");
  924. // //有效期
  925. // string tbExpireDate = GetLicenseInfo("ExpireDate");
  926. // if (string.IsNullOrEmpty(tbLComupterName) || string.IsNullOrEmpty(tbLHardwareID) || string.IsNullOrEmpty(tbOTSProduct) || string.IsNullOrEmpty(tbPassType) || string.IsNullOrEmpty(tbExpireDate))
  927. // {
  928. // message = message9;
  929. // return false;
  930. // }
  931. // else
  932. // {
  933. // try
  934. // {
  935. // string ExpireDate = Convert.ToDateTime(tbExpireDate).ToString("yyyy-MM-dd 23:59:59");
  936. // DateTime dtExpireDate = Convert.ToDateTime(ExpireDate);
  937. // DateTime dtCurrent = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
  938. // if (dtCurrent > dtExpireDate)
  939. // {
  940. // message = message10;
  941. // return false;
  942. // }
  943. // }
  944. // catch (Exception ex)
  945. // {
  946. // cfunClass.TraceErrorLog("OTSSystemManagerForms_ExistsLicenseInfo:" + ex.ToString() + "");
  947. // }
  948. // }
  949. // }
  950. // catch (Exception ex)
  951. // {
  952. // cfunClass.TraceErrorLog("OTSSystemManagerForms_ExistsLicenseInfo:" + ex.ToString() + "");
  953. // }
  954. // return true;
  955. //}
  956. //public static string GetLicenseInfo(string NodeName)
  957. //{
  958. // try
  959. // {
  960. // return XMLOperationClass.GetXMLInformations(NodeName);
  961. // }
  962. // catch (Exception ex)
  963. // {
  964. // cfunClass.TraceErrorLog("OTSSystemManagerForms_GetLicenseInfo:" + ex.ToString() + "");
  965. // return "";
  966. // }
  967. //}
  968. //private void btnRemove_Click(object sender, EventArgs e)
  969. //{
  970. // string message11 = table["message11"].ToString();
  971. // //1.删除License文件
  972. // if (MessageBox.Show(message11, "Tip",MessageBoxButtons.YesNo,MessageBoxIcon.Information)== DialogResult.Yes)
  973. // {
  974. // //设置XML节点信息
  975. // SaveSetting("ComupterName", "");
  976. // SaveSetting("HardwareID", "");
  977. // SaveSetting("OTSProduct", "");
  978. // SaveSetting("PassType", "");
  979. // SaveSetting("ExpireDate", "");
  980. // //清空文本框信息
  981. // tbLComupterName.Text = string.Empty;
  982. // tbLHardwareID.Text = string.Empty;
  983. // tbOTSProduct.Text = string.Empty;
  984. // tbPassType.Text = string.Empty;
  985. // tbExpireDate.Text = string.Empty;
  986. // //显示硬件Tab菜单
  987. // tabHardwareSet.Parent = null;
  988. // }
  989. //}
  990. //private void cbbLanguage_SelectedIndexChanged(object sender, EventArgs e)
  991. //{
  992. // //获取combobox的值
  993. // string Global = cbbLanguage.SelectedItem.ToString();
  994. // Global = Global.Trim();
  995. // if (Global.IndexOf("-") == 0)
  996. // {
  997. // return;
  998. // }
  999. // else
  1000. // {
  1001. // Global = Global.Substring(Global.IndexOf("[") + 1, 2);
  1002. // }
  1003. // WriteDefaultLanguage(Global);
  1004. // //国际化
  1005. // OTSSysMgrTools.Language lan1 = new OTSSysMgrTools.Language(this);
  1006. //}
  1007. //修改默认语言
  1008. public static void WriteDefaultLanguage(string lang)
  1009. {
  1010. DataSet ds = new DataSet();
  1011. ds.ReadXml(System.Windows.Forms.Application.StartupPath + @"/Resources/XMLData/LanguageDefine.xml");
  1012. DataTable dt = ds.Tables["Language"];
  1013. dt.Rows[0]["DefaultLanguage"] = lang;
  1014. ds.AcceptChanges();
  1015. ds.WriteXml(System.Windows.Forms.Application.StartupPath + @"/Resources/XMLData/LanguageDefine.xml");
  1016. }
  1017. }
  1018. }