public void UnInit() { var processes = from p in System.Diagnostics.Process.GetProcessesByName("EXCEL") select p; DateTime DT = DateTime.Now; foreach (var process in processes) { // All those background un-release process will be closed //Application.IgnoreRemoteRequests = False if (process.MainWindowTitle == "") { process.Kill(); } } if (SnpFile.FileOutputFileName != null) { string strHeaderPath; FileContains.Add("DATE_END=" + DT.ToString("yyyyMMdd") + "\r\n" + "TIME_END=" + DT.ToString("HHmmss")); strHeaderPath = Path.Combine(SnpFile.FileSourcePath, SnpFile.LotID + ".txt"); _myUtility.Generate_SNP_Header(strHeaderPath, FileContains); _myUtility.SNP_SDI_Compression(SnpFile.FileOutputFileName, SnpFile.FileSourcePath, SnpFile.FileOutputPath); } string locSetFilePath = Convert.ToString(_dicCalInfo[DataFilePath.LocSettingPath]); bool blnOcr = (_myUtility.ReadTextFile(locSetFilePath, "OCR", "Enable").ToUpper() == "TRUE")? true: false; if (blnOcr) { switch (MessageBox.Show("Do you want to merge OCR automatically?", "Penang NPI", MessageBoxButtons.YesNo, MessageBoxIcon.Question)) { case DialogResult.Cancel: break; case DialogResult.Yes: LibOcr.OCR objOcr = new LibOcr.OCR(); objOcr.SetDateTime = DT; objOcr.SetVisionDefaultPath = _myUtility.ReadTextFile(locSetFilePath, "OCR", "VisionDefaultPath"); objOcr.SetResultDefault = _myUtility.ReadTextFile(locSetFilePath, "OCR", "ResultDefaultPath"); objOcr.SetSite = _myUtility.ReadTextFile(locSetFilePath, "OCR", "Site"); objOcr.SetImageServer = _myUtility.ReadTextFile(locSetFilePath, "OCR", "ImagePath"); objOcr.SetSdiServer = _myUtility.ReadTextFile(locSetFilePath, "OCR", "SdiserverPath"); objOcr.SetResultFile = ATFCrossDomainWrapper.GetStringFromCache(PublishTags.PUBTAG_CUR_RESULT_FILE, ""); objOcr.SetLotID = ATFCrossDomainWrapper.GetStringFromCache(PublishTags.PUBTAG_LOT_ID, ""); objOcr.SetSublotId = ATFCrossDomainWrapper.GetStringFromCache(PublishTags.PUBTAG_SUB_LOT_ID, ""); objOcr.Merge(); break; case DialogResult.No: break; default: break; } } InstrUnInit(); }