/// <summary> /// ThreadMainStartup - Start RAPI connection. /// </summary> private void ThreadMainStartup() { // Allocate structure for call to CeRapiInitEx Rapi.RAPIINIT ri = new Rapi.RAPIINIT(); ri.cbSize = Marshal.SizeOf(ri); // Call init function int hr = Rapi.CeRapiInitEx(ref ri); // Wrap event handle in corresponding .NET object ManualResetEvent mrev = new ManualResetEvent(false); mrev.Handle = ri.heRapiInit; // Wait five seconds, then fail. if (mrev.WaitOne(5000, false) && ri.hrRapiInit == Rapi.S_OK) { // Notify caller that connection established. itReason = INVOKE_STARTUP.STARTUP_SUCCESS; m_ctlInvokeTarget.Invoke(m_deleCallback); } else { // On failure, disconnect from RAPI. Rapi.CeRapiUninit(); strBuffer = "Timeout - no device present."; itReason = INVOKE_STARTUP.STATUS_MESSAGE; m_ctlInvokeTarget.Invoke(m_deleCallback); // Notify caller that connection failed. itReason = INVOKE_STARTUP.STARTUP_FAILED; m_ctlInvokeTarget.Invoke(m_deleCallback); } }
private void cmdDisconnect_Click(object sender, System.EventArgs e) { // Disconnect from RAPI. Rapi.CeRapiUninit(); EnableButtons(false); m_bRapiConnected = false; }
cmdDisconnect_Click(object sender, System.EventArgs e) { if (m_bRapiConnected) { Rapi.CeRapiUninit(); m_bRapiConnected = false; } cmdDisconnect.Enabled = false; cmdFetch.Enabled = false; cmdConnect.Enabled = true; } // cmdDisconnect_Click
} // cmdDisconnect_Click private void FormMain_Closed(object sender, System.EventArgs e) { // If threads are running, trigger shutdown. if (this.m_thrdStartup != null) { this.m_thrdStartup.bThreadContinue = false; } if (m_bRapiConnected) { Rapi.CeRapiUninit(); m_bRapiConnected = false; } } // FormMain_Closed
} // cmdInvoke_Click private void cmdDisconnect_Click(object sender, System.EventArgs e) { // Disconnect from RAPI. Rapi.CeRapiUninit(); // Change UI. cmdInvoke.Enabled = false; cmdDisconnect.Enabled = false; cmdConnect.Enabled = true; textInput.Text = String.Empty; textInput.Enabled = false; // Set flag that we are disconnected m_bRapiConnected = false; } // cmdDisconnect_Click
cmdDisconnect_Click(object sender, System.EventArgs e) { sbarMain.Text = "Disconnecting..."; // Trigger thread to stop running. if (m_thrdFindFiles != null) { m_thrdFindFiles.bThreadContinue = false; } // Disconnect from RAPI. Rapi.CeRapiUninit(); ResetUI(); // Clear out previous contents of file listbox. lboxPrograms.Items.Clear(); m_bRapiConnected = false; }