/// <summary> /// Sync function, waiting until return /// API for cancel current kb9000 operations /// </summary> /// <returns></returns> public bool cancel_kb9000() { try { this.KB9Error = KB9API.KB9API_ERROR.FUNC_SUCCESSFUL; return(KB9API.Cancel() != KB9API.KB9API_ERROR.FUNC_SUCCESSFUL); } catch (System.Exception ex) { return(false); } }
/// <summary> /// API for read KB9000. /// Usage: /// Call this function from frmMain window /// </summary> /// <param name="strTemplate">the template data readed from KB9000.</param> public KB9API.KB9API_ERROR read_kb9000(ref string strData) { try { #if _DEBUG_ME #else if (!FindKB9000()) { return(KB9API.KB9API_ERROR.FUNC_NODEVICE_DRIVER); } #endif this.KB9Error = KB9API.KB9API_ERROR.FUNC_SUCCESSFUL; //start_operation(_ThreadParam); m_operationType = OperationsType.Read; m_strData = ""; KB9API.StartReadingKB9(KB9API.m_PortType); DialogResult result = show_progress("Reading KB9000 ..."); //blocked #if _DEBUG_ME return(KB9API.KB9API_ERROR.FUNC_SUCCESSFUL); #else if (result == DialogResult.Cancel) { return(KB9API.KB9API_ERROR.FUNC_UNKOWN_ERROR); } else { if (this.KB9Error != KB9API.KB9API_ERROR.FUNC_SUCCESSFUL) { return(this.KB9Error); } else { KB9API.ReadKB9Data(ref m_strData); strData = m_strData; return(KB9API.KB9API_ERROR.FUNC_SUCCESSFUL); } } #endif } catch (System.Exception ex) { return(KB9API.KB9API_ERROR.FUNC_UNHANDLED_EXCEPTION); } }
/// <summary> /// API for write template data to KB9000. /// Usage: /// Call it in frmMain window /// </summary> /// <param name="strTemplate">the data structure to write to kb9k</param> public KB9API.KB9API_ERROR write_kb9000(string strTemplate) { try { #if _DEBUG_ME #else if (!FindKB9000()) { return(KB9API.KB9API_ERROR.FUNC_NODEVICE_DRIVER); } #endif this.KB9Error = KB9API.KB9API_ERROR.FUNC_SUCCESSFUL; m_operationType = OperationsType.Write; KB9API.StartWriting(KB9API.m_PortType, strTemplate); DialogResult result = show_progress("Writing KB9000 ..."); #if _DEBUG_ME return(KB9API.KB9API_ERROR.FUNC_SUCCESSFUL); #endif if (result == DialogResult.Cancel) { return(KB9API.KB9API_ERROR.FUNC_UNKOWN_ERROR); } else { if (this.KB9Error != KB9API.KB9API_ERROR.FUNC_SUCCESSFUL) { return(this.KB9Error); } else { //uint nwriten = KB9API.GetWritingResult(); //MessageBox.Show("Writen len = " + nwriten.ToString()); return(KB9API.KB9API_ERROR.FUNC_SUCCESSFUL); } } } catch (System.Exception ex) { return(KB9API.KB9API_ERROR.FUNC_UNHANDLED_EXCEPTION); } }
private void set_value(int nvalue) { if (pbProgress.Value >= pbProgress.Maximum) { finished_progress(); } if (pbProgress.Value != nvalue) { m_lastReceiveNewValue = DateTime.Now; } if (nvalue <= pbProgress.Maximum && nvalue >= pbProgress.Minimum) { pbProgress.Value = nvalue; } if (nvalue >= pbProgress.Maximum) { pbProgress.Value = pbProgress.Maximum; } //if (nvalue >= pbProgress.Maximum) // finished_progress(); else if (nvalue < 0) //error { this.KB9Error = (KB9API.KB9API_ERROR)nvalue; finished_progress(); return; } //check timeout DateTime dt = DateTime.Now; TimeSpan span = dt - m_lastReceiveNewValue; if (span.TotalSeconds > 5) { this.KB9Error = KB9API.KB9API_ERROR.FUNC_UNKOWN_ERROR; finished_progress(); return; } }
private static bool FindKB9000() { try { KB9API.KB9_PORT nPort = KB9API.KB9_PORT.Unknown; KB9API.KB9API_ERROR result = KB9API.AutoDetectKB9(ref nPort); if (result == KB9API.KB9API_ERROR.FUNC_SUCCESSFUL) { KB9API.m_PortType = nPort; } else { KB9API.m_PortType = KB9API.KB9_PORT.Unknown; } return(KB9API.m_PortType != KB9API.KB9_PORT.Unknown); } catch (System.Exception ex) { return(false); } }