当前位置: 代码迷 >> Windows Mobile >> 请教有没有方法判断已经接通电话或挂断电话阿
  详细解决方案

请教有没有方法判断已经接通电话或挂断电话阿

热度:71   发布时间:2016-04-25 07:55:28.0
请问有没有方法判断已经接通电话或挂断电话阿?
请问有没有方法判断已经接通电话或挂断电话阿?

------解决方案--------------------
VOID FAR PASCAL lineCallbackFunc(DWORD hDevice,
DWORD dwMsg, DWORD dwCallbackInstance,
DWORD dwParam1, DWORD dwParam2, DWORD dwParam3)
{
// only interested in LINE_CALLSTATE messages
if(dwMsg != LINE_CALLSTATE)
return;
cout « _T("LINE_CALLSTATE: ");
// dwParam1 is the specific LINE_CALLSTATE
// change occurring
switch (dwParam1)
{
case LINECALLSTATE_IDLE:
cout « _T("Idle");
break;
case LINECALLSTATE_DIALTONE:
cout « _T("Dial tone");
break;
case LINECALLSTATE_DIALING:
cout « _T("Dialing");
break;
case LINECALLSTATE_PROCEEDING:
cout « _T("Dialing has completed");
break;
case LINECALLSTATE_RINGBACK:
cout « _T("Ring back");
break;
case LINECALLSTATE_CONNECTED:
cout « _T("Connected");
break;
case LINECALLSTATE_BUSY:
cout « _T("Busy");
break;
case LINECALLSTATE_DISCONNECTED:
switch (dwParam2)
{
case LINEDISCONNECTMODE_NORMAL:
cout «
_T("Normal disconnect");
break;
case LINEDISCONNECTMODE_UNKNOWN:
cout «
_T("Unknown reason");
break;
case LINEDISCONNECTMODE_REJECT:
cout «
_T("Remote Party rejected");
break;
case LINEDISCONNECTMODE_BUSY:
cout «
_T("Remote busy");
break;
default:
cout «
_T("Disconnect: Other reason")
« dwParam2;
break;
Listing11_4(); // close call and line
}
break;
default:
cout « _T("Other notification")
« dwParam1;
}
cout« endl;
}


------解决方案--------------------
HKLM\System\State\Phone\status就是监测电话状态的注册表
  相关解决方案