public PrinterBase(ePrinterVendor vendor, eAssignedLane_Printer laneID) { LaneID = laneID; Vendor = vendor; InspectedPanels.Clear(); PrinterCommonSetting = new CommonSettingVM(); PrinterSFSetting = new SharedFolderSettingVM(); DxHistory = new ObservableCollection <KeyValuePair <double, double> >(); DyHistory = new ObservableCollection <KeyValuePair <double, double> >(); ThetaHistory = new ObservableCollection <KeyValuePair <double, double> >(); DxHistory.Clear(); DyHistory.Clear(); ThetaHistory.Clear(); //Accumulation = 0;//= AccDx = AccDy = AccTheta = 0; }
static public SharedFolderSettingVM ToSharedFolderSettingVM(this XElement root) { SharedFolderSettingVM ret = null; try { ret = new SharedFolderSettingVM(); ret.IsInEnable = bool.Parse(root.getValue("In")); string _driveletter = root.getAttributeValue("In", "DriveLetter"); string _driveprovider = root.getAttributeValue("In", "DriveProvider"); ret.InDriveInfo = _driveletter + "(" + _driveprovider + ")"; //檢查有否有此driveinfo,若沒有,則create 一個 var _lstCurrentDrives = WmiDiskHelper.GetDiskNames(); bool bExist = _lstCurrentDrives.Exists(X => X.DiskID == _driveletter && X.DiskProviderName == _driveprovider); if (!bExist) { NetworkDriveWrapper.MappingNetDrive(_driveletter, _driveprovider, "", ""); } ret.IsOutEnable = bool.Parse(root.getValue("Out")); _driveletter = root.getAttributeValue("Out", "DriveLetter"); _driveprovider = root.getAttributeValue("Out", "DriveProvider"); ret.OutDriveInfo = _driveletter + "(" + _driveprovider + ")"; //檢查有否有此driveinfo,若沒有,則create 一個 _lstCurrentDrives = WmiDiskHelper.GetDiskNames(); bExist = _lstCurrentDrives.Exists(X => X.DiskID == _driveletter && X.DiskProviderName == _driveprovider); if (!bExist) { NetworkDriveWrapper.MappingNetDrive(_driveletter, _driveprovider, "", ""); } } catch { return(null); } return(ret); }
void ExecuteSaveFile() { List <OneLaneSelectorVM> _lstOneLaneModel = new List <OneLaneSelectorVM>(); foreach (var item in ViewModelLocator.Atom.LaneSelectorHostVM.LaneContainer) { _lstOneLaneModel.Add((OneLaneSelectorVM)(item as ucOneLaneSelector).DataContext); } TRMessageBox.Show("@AUTOLOADFILENAME_HINT".Translate()); System.Windows.Forms.SaveFileDialog ofd = new System.Windows.Forms.SaveFileDialog(); ofd.Filter = "Xml Files (*.xml)| *.xml"; //string pathName = "PlacerCenter.xml"; ofd.Filter = "Xml Files (*.xml)| *.xml"; if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK) { try { XElement root = new XElement("PRINTERCENTER"); CommonSettingVM lane1CommonVM = (CommonSettingVM)_window.ucLane1_Common.DataContext; SharedFolderSettingVM lane1SFVM = (SharedFolderSettingVM)_window.ucLane1_SF.DataContext; CommonSettingVM lane2CommonVM = (CommonSettingVM)_window.ucLane2_Common.DataContext; SharedFolderSettingVM lane2SFVM = (SharedFolderSettingVM)_window.ucLane2_SF.DataContext; List <XElement> LaneList = new List <XElement>(); foreach (var lane in _lstOneLaneModel) { var iLaneID = _lstOneLaneModel.IndexOf(lane) + 1; var sVendor = lane.Vendor; if (iLaneID == 1) { var el = new XElement("LANE", new XAttribute("ID", iLaneID) , new XElement("Vendor", sVendor) , lane1CommonVM.ToXml() , lane1SFVM.ToXml() ); LaneList.Add(el); } else if (iLaneID == 2) { var el = new XElement("LANE", new XAttribute("ID", iLaneID) , new XElement("Vendor", sVendor) , lane2CommonVM.ToXml() , lane2SFVM.ToXml() ); LaneList.Add(el); } } root.Add(LaneList); root.Save(ofd.FileName); } catch (Exception ex) { Log4.PrinterLogger.ErrorFormat("Exception={0}", ex.Message); return; } } }
//以下檢查站時不包含每個Printer的Rule private bool CheckEachValues(int laneID, OneLaneSelectorVM vm, CommonSettingVM commonvm, SharedFolderSettingVM sfvm) { bool _bAllGood = true; //1.檢查CommonSetting //2.檢查SharedFolderSetting _window.lbStatusReporter.Items.Add(String.Format("@LANE_DATA".Translate() + ":", laneID + 1)); Log4.PrinterLogger.InfoFormat("Check Lane {0} Data:", laneID + 1); //Input SharedFolder if (SharedFolderRules.HasInputSharedFolder(vm.Vendor)) { _bAllGood = CheckSharedFolder(sfvm.InDriveInfo, "@RECIEVE"); } //Output SharedFolder if (SharedFolderRules.HasOutputSharedFolder(vm.Vendor)) { _bAllGood = CheckSharedFolder(sfvm.OutDriveInfo, "@SEND"); } if (_bAllGood) { _window.lbStatusReporter.Items.Add("@PASS".Translate()); Log4.PrinterLogger.Info(" RESULT = PASS!"); } return(_bAllGood); }
/// <summary> /// Service開啟的入口點***** /// </summary> /// <param name="laneID">The lane identifier.</param> /// <param name="vm">The vm.</param> /// <param name="commonvm">The commonvm.</param> /// <param name="sfvm">The SFVM.</param> /// <returns></returns> public bool ImportSetting(int laneID, OneLaneSelectorVM vm, CommonSettingVM commonvm, SharedFolderSettingVM sfvm) { bool ret = false; RemotePrinter[laneID].PrinterVendor = vm.Vendor;//此時Create物件,開始監控sharedFolder RemotePrinter[laneID].Printer.PrinterCommonSetting = commonvm.Clone(); RemotePrinter[laneID].Printer.PrinterSFSetting = sfvm.Clone(); RemotePrinter[laneID].Printer.Activate();//開始監控 return(ret); }