📄 command.cpp
字号:
/////////////////////////////////////////////////////////////////////////////
// CMainWind
#include "stdafx.h"
#include "acs.h"
#include "csta.h"
#include "AlcPriV2.h"
#include "resource.h" // main symbols
#include "cstatst32.h"
#include "dialog.h"
#include "mdump.h"
#ifdef _DEBUG
#undef THIS_FILE
static char BASED_CODE THIS_FILE[] = __FILE__;
#endif
//StreamType_t my_streamType;
extern CCstatst32App theApp;
IMPLEMENT_DYNCREATE(CMainWind, CFrameWnd)
CMainWind::CMainWind()
{
m_bPrivateData = FALSE;
m_bEventFile = FALSE;
pPrivateData = NULL;
m_bEventListOn = FALSE;
theApp.m_bCessionOn = TRUE;
m_bOpenedStream = FALSE;
m_bEsrSet = FALSE;
m_bDisplayingSession = TRUE;
my_setTimer = 0;
m_bAutoKeepAlive = FALSE;
my_periodicTimer =0;
/*YB 240800+*/
m_bAutoReconnect = FALSE;
my_reconnectTimer = 0;
/*YB 240800-*/
}
CMainWind::~CMainWind() {
theApp.m_bCessionOn = FALSE;
m_bEventListOn = FALSE;
delete (m_pEventList);
}
BEGIN_MESSAGE_MAP(CMainWind, CFrameWnd)
//{{AFX_MSG_MAP(CMainWind)
ON_WM_SIZE()
ON_MESSAGE(WM_ACSEVENT, OnServiceRoutine)
ON_COMMAND(ID_CONNECTSERVER, OnConnectserver)
ON_COMMAND(ID_DISCONNECTSERVER, OnDisconnectserver)
ON_COMMAND(ID_SESSION_EXIT, OnSessionExit)
ON_COMMAND(ID_MONITORDEVICE, OnMonitordevice)
ON_COMMAND(ID_STOPMONITORDEVICE, OnStopmonitordevice)
ON_COMMAND(ID_MAKECALL, OnMakecall)
ON_COMMAND(ID_CLEARCALL, OnClearcall)
ON_COMMAND(ID_CLEARCONNECTION, OnClearconnection)
ON_COMMAND(ID_CONSULTATIONCALL, OnConsultationcall)
ON_COMMAND(ID_RECONNECTCALL, OnReconnectcall)
ON_COMMAND(ID_TRANSFERTCALL, OnTransfertcall)
ON_COMMAND(ID_HOLDCALL, OnHoldcall)
ON_COMMAND(ID_RETRIEVECALL, OnRetrievecall)
ON_COMMAND(ID_SETAGENTSTATE, OnSetagentstate)
ON_COMMAND(ID_MESSAGEWAITING, OnMessagewaiting)
ON_COMMAND(ID_FORWARDING, OnForwarding)
ON_COMMAND(ID_DONOTDISTURB, OnDonotdisturb)
ON_COMMAND(ID_ANSWERCALL, OnAnswercall)
ON_COMMAND(ID_ABORTSTREAM, OnAbortstream)
ON_COMMAND(ID_GETAPICAPS, OnGetapicaps)
ON_COMMAND(ID_QUERYCALLMONITOR, OnQuerycallmonitor)
ON_COMMAND(ID_QUERY_AGENTSTATE, OnQueryAgentstate)
ON_COMMAND(ID_QUERY_DEVICEINFO, OnQueryDeviceinfo)
ON_COMMAND(ID_QUERY_DONOTDISTURB, OnQueryDonotdisturb)
ON_COMMAND(ID_QUERY_FORWARDING, OnQueryForwarding)
ON_COMMAND(ID_QUERY_LASTNUMBER, OnQueryLastnumber)
ON_COMMAND(ID_QUERY_MESSAGEWAITING, OnQueryMessagewaiting)
ON_COMMAND(ID_CHANGEFILTER, OnChangefilter)
ON_COMMAND(ID_PRIVATEDATA, OnPrivatedata)
ON_UPDATE_COMMAND_UI(ID_PRIVATEDATA, OnUpdatePrivatedata)
ON_COMMAND(ID_SETPRIVATEDATA, OnSetprivatedata)
ON_COMMAND(ID_ESCAPESERVICECONF, OnEscapeserviceconf)
ON_COMMAND(ID_ESCAPESERVICE, OnEscapeservice)
ON_COMMAND(ID_SENDPRIVATEEVENT, OnSendprivateevent)
ON_COMMAND(ID_SENDSYSTEMSTATUSEVENT, OnSendsystemstatusevent)
ON_COMMAND(ID_SYSTEMSTATUSCONFIRMATION, OnSystemstatusconfirmation)
ON_COMMAND(ID_SYSTEMSTATUSREQUEST, OnSystemstatusrequest)
ON_COMMAND(ID_SYSTEMSTATUSSTART, OnSystemstatusstart)
ON_COMMAND(ID_SYSTEMSTATUSSTOP, OnSystemstatusstop)
ON_COMMAND(ID_SYSTEMSTATUSCHANGEFILTER, OnSystemstatuschangefilter)
ON_COMMAND(ID_CLEARSCREEN, OnClearscreen)
ON_UPDATE_COMMAND_UI(ID_DISCONNECTSERVER, OnUpdateDisconnectserver)
ON_UPDATE_COMMAND_UI(ID_ABORTSTREAM, OnUpdateAbortstream)
ON_UPDATE_COMMAND_UI(ID_MONITORDEVICE, OnUpdateMonitordevice)
ON_UPDATE_COMMAND_UI(ID_CHANGEFILTER, OnUpdateChangefilter)
ON_UPDATE_COMMAND_UI(ID_STOPMONITORDEVICE, OnUpdateStopmonitordevice)
ON_UPDATE_COMMAND_UI(ID_CONNECTSERVER, OnUpdateConnectserver)
ON_UPDATE_COMMAND_UI(ID_ANSWERCALL, OnUpdateAnswercall)
ON_UPDATE_COMMAND_UI(ID_MAKECALL, OnUpdateMakecall)
ON_UPDATE_COMMAND_UI(ID_CLEARCALL, OnUpdateClearcall)
ON_UPDATE_COMMAND_UI(ID_CLEARCONNECTION, OnUpdateClearconnection)
ON_UPDATE_COMMAND_UI(ID_HOLDCALL, OnUpdateHoldcall)
ON_UPDATE_COMMAND_UI(ID_RETRIEVECALL, OnUpdateRetrievecall)
ON_UPDATE_COMMAND_UI(ID_RECONNECTCALL, OnUpdateReconnectcall)
ON_UPDATE_COMMAND_UI(ID_TRANSFERTCALL, OnUpdateTransfertcall)
ON_UPDATE_COMMAND_UI(ID_CONSULTATIONCALL, OnUpdateConsultationcall)
ON_UPDATE_COMMAND_UI(ID_GETAPICAPS, OnUpdateGetapicaps)
ON_UPDATE_COMMAND_UI(ID_QUERYCALLMONITOR, OnUpdateQuerycallmonitor)
ON_UPDATE_COMMAND_UI(ID_ESCAPESERVICE, OnUpdateEscapeservice)
ON_UPDATE_COMMAND_UI(ID_ESCAPESERVICECONF, OnUpdateEscapeserviceconf)
ON_UPDATE_COMMAND_UI(ID_SENDPRIVATEEVENT, OnUpdateSendprivateevent)
ON_UPDATE_COMMAND_UI(ID_SYSTEMSTATUSREQUEST, OnUpdateSystemstatusrequest)
ON_UPDATE_COMMAND_UI(ID_SYSTEMSTATUSSTART, OnUpdateSystemstatusstart)
ON_UPDATE_COMMAND_UI(ID_SYSTEMSTATUSSTOP, OnUpdateSystemstatusstop)
ON_UPDATE_COMMAND_UI(ID_SYSTEMSTATUSCHANGEFILTER, OnUpdateSystemstatuschangefilter)
ON_UPDATE_COMMAND_UI(ID_SYSTEMSTATUSCONFIRMATION, OnUpdateSystemstatusconfirmation)
ON_UPDATE_COMMAND_UI(ID_SENDSYSTEMSTATUSEVENT, OnUpdateSendsystemstatusevent)
ON_UPDATE_COMMAND_UI(ID_MESSAGEWAITING, OnUpdateMessagewaiting)
ON_UPDATE_COMMAND_UI(ID_DONOTDISTURB, OnUpdateDonotdisturb)
ON_UPDATE_COMMAND_UI(ID_FORWARDING, OnUpdateForwarding)
ON_UPDATE_COMMAND_UI(ID_SETAGENTSTATE, OnUpdateSetagentstate)
ON_UPDATE_COMMAND_UI(ID_QUERY_MESSAGEWAITING, OnUpdateQueryMessagewaiting)
ON_UPDATE_COMMAND_UI(ID_QUERY_DONOTDISTURB, OnUpdateQueryDonotdisturb)
ON_UPDATE_COMMAND_UI(ID_QUERY_FORWARDING, OnUpdateQueryForwarding)
ON_UPDATE_COMMAND_UI(ID_QUERY_AGENTSTATE, OnUpdateQueryAgentstate)
ON_UPDATE_COMMAND_UI(ID_QUERY_LASTNUMBER, OnUpdateQueryLastnumber)
ON_UPDATE_COMMAND_UI(ID_QUERY_DEVICEINFO, OnUpdateQueryDeviceinfo)
ON_COMMAND(ID_ALTERNATECALL, OnAlternatecall)
ON_UPDATE_COMMAND_UI(ID_ALTERNATECALL, OnUpdateAlternatecall)
ON_COMMAND(ID_CALLCOMPLETION, OnCallcompletion)
ON_UPDATE_COMMAND_UI(ID_CALLCOMPLETION, OnUpdateCallcompletion)
ON_COMMAND(ID_CONFERENCECALL, OnConferencecall)
ON_UPDATE_COMMAND_UI(ID_CONFERENCECALL, OnUpdateConferencecall)
ON_WM_DESTROY()
ON_COMMAND(ID_DEFLECTCALL, OnDeflectcall)
ON_UPDATE_COMMAND_UI(ID_DEFLECTCALL, OnUpdateDeflectcall)
ON_COMMAND(ID_GROUP_PICKUP_CALL, OnGroupPickupCall)
ON_UPDATE_COMMAND_UI(ID_GROUP_PICKUP_CALL, OnUpdateGroupPickupCall)
ON_COMMAND(ID_MAKE_PREDICTIVE_CALL, OnMakePredictiveCall)
ON_UPDATE_COMMAND_UI(ID_MAKE_PREDICTIVE_CALL, OnUpdateMakePredictiveCall)
ON_COMMAND(ID_PICKUP_CALL, OnPickupCall)
ON_UPDATE_COMMAND_UI(ID_PICKUP_CALL, OnUpdatePickupCall)
ON_COMMAND(ID_ENABLE_EVENTS_FILE, OnEnableEventsFile)
ON_UPDATE_COMMAND_UI(ID_ENABLE_EVENTS_FILE, OnUpdateEnableEventsFile)
ON_COMMAND(ID_CLEAR_EVENTS_FILE, OnClearEventsFile)
ON_COMMAND(ID_GET_DEVICE_LIST, OnGetDeviceList)
ON_UPDATE_COMMAND_UI(ID_GET_DEVICE_LIST, OnUpdateGetDeviceList)
ON_COMMAND(ID_SNAPSHOT_CALL, OnSnapshotCall)
ON_UPDATE_COMMAND_UI(ID_SNAPSHOT_CALL, OnUpdateSnapshotCall)
ON_COMMAND(ID_SNAPSHOT_DEVICE, OnSnapshotDevice)
ON_UPDATE_COMMAND_UI(ID_SNAPSHOT_DEVICE, OnUpdateSnapshotDevice)
ON_COMMAND(ID_MONITOR_CALL, OnMonitorCall)
ON_UPDATE_COMMAND_UI(ID_MONITOR_CALL, OnUpdateMonitorCall)
ON_COMMAND(ID_MONITOR_CALL_VIA_DEVICE, OnMonitorCallViaDevice)
ON_UPDATE_COMMAND_UI(ID_MONITOR_CALL_VIA_DEVICE, OnUpdateMonitorCallViaDevice)
ON_COMMAND(ID_ROUTESELECT, OnRouteselect)
ON_UPDATE_COMMAND_UI(ID_ROUTESELECT, OnUpdateRouteselect)
ON_COMMAND(ID_ROUTEEND, OnRouteend)
ON_UPDATE_COMMAND_UI(ID_ROUTEEND, OnUpdateRouteend)
ON_COMMAND(ID_ROUTEREGISTER, OnRouteregister)
ON_UPDATE_COMMAND_UI(ID_ROUTEREGISTER, OnUpdateRouteregister)
ON_COMMAND(ID_ROUTEREGISTERCANCEL, OnRouteregistercancel)
ON_UPDATE_COMMAND_UI(ID_ROUTEREGISTERCANCEL, OnUpdateRouteregistercancel)
ON_COMMAND(ID_SENDDTMFTONES, OnSendDTMFTones)
ON_UPDATE_COMMAND_UI(ID_SENDDTMFTONES, OnUpdateSendDTMFTones)
ON_COMMAND(ID_SINGLESTEPCONFERENCE, OnSingleStepConference)
ON_UPDATE_COMMAND_UI(ID_SINGLESTEPCONFERENCE, OnUpdateSingleStepConference)
ON_COMMAND(ID_STOP, OnStop)
ON_UPDATE_COMMAND_UI(ID_STOP, OnUpdateStop)
ON_COMMAND(ID_RECORDMESSAGE, OnRecordMessage)
ON_UPDATE_COMMAND_UI(ID_RECORDMESSAGE, OnUpdateRecordMessage)
ON_COMMAND(ID_CONSULTATION_CALL_V2, OnConsultationCallV2)
ON_UPDATE_COMMAND_UI(ID_CONSULTATION_CALL_V2, OnUpdateConsultationCallV2)
ON_COMMAND(ID_ESCAPESERVICEINT, OnEscapeserviceint)
ON_UPDATE_COMMAND_UI(ID_ESCAPESERVICEINT, OnUpdateEscapeserviceint)
ON_COMMAND(IDD_ESCAPESETDEVICEINSERVICE, OnEscapesetdeviceinservice)
ON_UPDATE_COMMAND_UI(IDD_ESCAPESETDEVICEINSERVICE, OnUpdateEscapesetdeviceinservice)
ON_COMMAND(ID_ASSOCIATEDATA, OnAssociatedata)
ON_UPDATE_COMMAND_UI(ID_ASSOCIATEDATA, OnUpdateAssociatedata)
ON_COMMAND(ID_ESCAPEHOSTINFORMATION, OnEscapehostinformation)
ON_UPDATE_COMMAND_UI(ID_ESCAPEHOSTINFORMATION, OnUpdateEscapehostinformation)
ON_COMMAND(ID_SUPER_ASSIST_REQUEST, OnSuperAssistRequest)
ON_UPDATE_COMMAND_UI(ID_SUPER_ASSIST_REQUEST, OnUpdateSuperAssistRequest)
ON_COMMAND(ID_SUPER_ASSIST_CANCEL, OnSuperAssistCancel)
ON_UPDATE_COMMAND_UI(ID_SUPER_ASSIST_CANCEL, OnUpdateSuperAssistCancel)
ON_COMMAND(ID_AUTO_KEEP_ALIVE, OnAutoKeepAlive)
ON_UPDATE_COMMAND_UI(ID_AUTO_KEEP_ALIVE, OnUpdateAutoKeepAlive)
ON_COMMAND(ID_ESCAPE_OTHER_OPERATION, OnEscapeOtherOperation)
ON_UPDATE_COMMAND_UI(ID_ESCAPE_OTHER_OPERATION, OnUpdateEscapeOtherOperation)
ON_COMMAND(ID_SERVICE_REGISTER_REQUEST, OnServiceRegisterRequest)
ON_UPDATE_COMMAND_UI(ID_SERVICE_REGISTER_REQUEST, OnUpdateServiceRegisterRequest)
ON_COMMAND(ID_SERVICE_REGISTER_CANCEL, OnServiceRegisterCancel)
ON_UPDATE_COMMAND_UI(ID_SERVICE_REGISTER_CANCEL, OnUpdateServiceRegisterCancel)
ON_COMMAND(ID_START_LISTENING, OnStartListening)
ON_UPDATE_COMMAND_UI(ID_START_LISTENING, OnUpdateStartListening)
ON_COMMAND(ID_STOP_LISTENING, OnStopListening)
ON_UPDATE_COMMAND_UI(ID_STOP_LISTENING, OnUpdateStopListening)
ON_COMMAND(ID_BIP_TONE, OnBipTone)
ON_UPDATE_COMMAND_UI(ID_BIP_TONE, OnUpdateBipTone)
ON_COMMAND(ID_CCTREATMENT_REQUEST, OnCctreatmentRequest)
ON_UPDATE_COMMAND_UI(ID_CCTREATMENT_REQUEST, OnUpdateCctreatmentRequest)
ON_COMMAND(ID_PERMANENT_LISTENING, OnPermanentListening)
ON_UPDATE_COMMAND_UI(ID_PERMANENT_LISTENING, OnUpdatePermanentListening)
ON_COMMAND(ID_PARKCALL, OnParkcall)
ON_UPDATE_COMMAND_UI(ID_PARKCALL, OnUpdateParkcall)
ON_COMMAND(ID_GENERATETONE, OnGeneratetone)
ON_UPDATE_COMMAND_UI(ID_GENERATETONE, OnUpdateGeneratetone)
ON_COMMAND(ID_CANCELTONE, OnCanceltone)
ON_UPDATE_COMMAND_UI(ID_CANCELTONE, OnUpdateCanceltone)
ON_COMMAND(ID_STARTDATACOLL, OnStartdatacoll)
ON_UPDATE_COMMAND_UI(ID_STARTDATACOLL, OnUpdateStartdatacoll)
ON_COMMAND(ID_STOPDATACOLL, OnStopdatacoll)
ON_UPDATE_COMMAND_UI(ID_STOPDATACOLL, OnUpdateStopdatacoll)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
void CMainWind::OnSize(UINT nType, int cx, int cy) {
CFrameWnd::OnSize(nType, cx, cy);
if (m_bEventListOn) {
m_pEventList->SetWindowPos (this, 0, 0, cx, cy, SWP_NOZORDER | SWP_SHOWWINDOW);
}
return;
}
/////////////////////////////////////////////////////////////////////////////
// CMainWind message handlers
// These funtions call the CSTA API function in the file "cstatst.cpp
void CMainWind::OnConnectserver() {
CErrorDlg errorDlg;
m_bOpenedStream = FALSE;
m_bEsrSet = FALSE;
m_bDisplayingSession = TRUE;
// If server are registered
if (AcsEnumServerNames ())
{
CConnectDlg connectDlg;
CServer *pServer;
connectDlg.m_bListed = FALSE;
pServer = (CServer *)m_lServer.GetAt (m_lServer.FindIndex (0));
connectDlg.m_sServerName = pServer->m_sServerName.operator const char *();
connectDlg.m_sLoginName = pServer->m_sLoginName.operator const char *();
connectDlg.m_sPassword = pServer->m_sPassword.operator const char *();
connectDlg.m_nApiType = 1;
connectDlg.m_nLevel = (int)ACS_LEVEL1 - 1;
// Activates the connect server dialog box
if (connectDlg.DoModal () == IDOK) {
for (int i = 0; i < m_nbServer; i++) {
pServer = (CServer *)m_lServer.GetAt (m_lServer.FindIndex (i));
if (connectDlg.m_sServerName == pServer->m_sServerName)
break;
}
if (i < m_nbServer)
{
m_sServerName = connectDlg.m_sServerName;
//m_sServerName = "ALCATEL#maq42#CSTA#bre04-000016242";
m_sLoginName = connectDlg.m_sLoginName;
m_sPassword = connectDlg.m_sPassword;
m_sProgName = "CstaTst32";
m_nACSLevel = (Level_t)(connectDlg.m_nLevel + 1);
// StreamType_t my_streamType;
if (connectDlg.m_nApiType == 0)
{
theApp.my_streamType = ST_CSTA;
}
else
{
theApp.my_streamType = ST_CSTA2;
}
// Try to open the stream
if (AcsOpenStream (theApp.my_streamType))
{
return;
}
}
else
{
errorDlg.m_sErrorTitle = "acsOpenStream";
errorDlg.m_sError = "Invalid server name";
errorDlg.DoModal ();
}
}
}
while (!m_lServer.IsEmpty ()) {
delete (CServer *)m_lServer.RemoveHead ();
}
}
/*void CMainWind::OnConnectserver() {
CErrorDlg errorDlg;
m_bOpenedStream = FALSE;
m_bEsrSet = FALSE;
m_bDisplayingSession = TRUE;
// If server are registered
//glif (AcsEnumServerNames ())
{
CConnectDlg connectDlg;
CServer *pServer;
connectDlg.m_bListed = FALSE;
//glpServer = (CServer *)m_lServer.GetAt (m_lServer.FindIndex (0));
//g/connectDlg.m_sServerName = pServer->m_sServerName.operator const char *();
connectDlg.m_nApiType = 1;
connectDlg.m_nLevel = (int)ACS_LEVEL1 - 1;
// Activates the connect server dialog box
if (connectDlg.DoModal () == IDOK) {
//for (int i = 0; i < m_nbServer; i++) {
// pServer = (CServer *)m_lServer.GetAt (m_lServer.FindIndex (i));
// if (connectDlg.m_sServerName == pServer->m_sServerName)
// break;
//}
//if (i < m_nbServer)
//{
m_sServerName = connectDlg.m_sServerName;
//m_sServerName = "ALCATEL#maq42#CSTA#bre04-000016242";
m_sLoginName = connectDlg.m_sLoginName;
m_sPassword = connectDlg.m_sPassword;
m_sProgName = "CstaTst32";
m_nACSLevel = (Level_t)(connectDlg.m_nLevel + 1);
// StreamType_t my_streamType;
if (connectDlg.m_nApiType == 0)
{
theApp.my_streamType = ST_CSTA;
}
else
{
theApp.my_streamType = ST_CSTA2;
}
// Try to open the stream
if (AcsOpenStream (theApp.my_streamType))
{
return;
}
//}
//else
//{
//errorDlg.m_sErrorTitle = "acsOpenStream";
//errorDlg.m_sError = "Invalid server name";
//errorDlg.DoModal ();
//}
}
}
while (!m_lServer.IsEmpty ()) {
delete (CServer *)m_lServer.RemoveHead ();
}
}
*/
void CMainWind::OnUpdateConnectserver(CCmdUI* pCmdUI) {
pCmdUI->Enable (!theApp.m_bPhoneOn);
return;
}
void CMainWind::OnDisconnectserver() {
while (!m_lServer.IsEmpty ()) {
delete (CServer *)m_lServer.RemoveHead ();
}
AcsCloseStream ();
// kill the periodic timer
m_bAutoKeepAlive = TRUE;
AutoKeepalive();
theApp.m_bPhoneOn = FALSE;
}
void CMainWind::OnUpdateDisconnectserver(CCmdUI* pCmdUI) {
pCmdUI->Enable (theApp.m_bPhoneOn);
return;
}
void CMainWind::OnAbortstream() {
while (!m_lServer.IsEmpty ()) {
delete (CServer *)m_lServer.RemoveHead ();
}
AcsAbortStream ();
// kill the periodic timer
m_bAutoKeepAlive = TRUE;
AutoKeepalive();
theApp.m_bPhoneOn = FALSE;
}
void CMainWind::OnUpdateAbortstream(CCmdUI* pCmdUI) {
pCmdUI->Enable (theApp.m_bPhoneOn);
return;
}
void CMainWind::OnMonitordevice() {
CstaMonitorDevice ();
return;
}
void CMainWind::OnUpdateMonitordevice(CCmdUI* pCmdUI) {
pCmdUI->Enable (theApp.m_bPhoneOn);
return;
}
void CMainWind::OnMonitorCall()
{
AfxMessageBox("Csta service not implemented yet");
//CstaMonitorCall();
return;
}
void CMainWind::OnUpdateMonitorCall(CCmdUI* pCmdUI)
{
pCmdUI->Enable (theApp.m_bPhoneOn);
return;
}
void CMainWind::OnMonitorCallViaDevice()
{
AfxMessageBox("Csta service not implemented yet");
//CstaMonitorCallsViaDevice();
return;
}
void CMainWind::OnUpdateMonitorCallViaDevice(CCmdUI* pCmdUI)
{
pCmdUI->Enable (theApp.m_bPhoneOn);
return;
}
void CMainWind::OnChangefilter() {
AfxMessageBox("Csta service not implemented yet");
//CstaChangeMonitorFilter ();
return;
}
void CMainWind::OnUpdateChangefilter(CCmdUI* pCmdUI) {
pCmdUI->Enable (theApp.m_bPhoneOn);
return;
}
void CMainWind::OnStopmonitordevice() {
CstaMonitorStop ();
return;
}
void CMainWind::OnUpdateStopmonitordevice(CCmdUI* pCmdUI) {
pCmdUI->Enable (theApp.m_bPhoneOn);
return;
}
void CMainWind::OnGetDeviceList() {
m_bFirstPass = TRUE;
CstaGetDeviceList ();
return;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -