首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 软件时空 > 软件相关 > Wince5.0来电防火墙实现回复对方是空号或者已经关机
【标  题】:Wince5.0来电防火墙实现回复对方是空号或者已经关机
【关键字】:Wince5.0
【来  源】:http://blog.csdn.net/ppcat_001/archive/2006/11/27/1416923.aspx

Wince5.0来电防火墙实现回复对方是空号或者已经关机

 什么也不,先上代码

 

//返回函数执行是否正确
void RILResultProc(DWORD dwResultCode, HRESULT  hrCommandID , const void* pData, DWORD dwDataSize, DWORD dwParam)
{
    if((empty_hr==hrCommandID)&&(dwResultCode == RIL_RESULT_OK))
    {
        g_strMsg = _T("回复空号设置成功");
    
}

    else if((shutdown_hr==hrCommandID)&&(dwResultCode == RIL_RESULT_OK))
    
{
        g_strMsg = _T("回复已关机设置成功");
    
}

    else if((empty_hr==hrCommandID)&&(dwResultCode == RIL_RESULT_ERROR))
    
{
        g_strMsg = _T("回复空号设置失败");
    
}

    else if((shutdown_hr==hrCommandID)&&(dwResultCode == RIL_RESULT_ERROR))
    
{
        g_strMsg = _T("回复已关机设置失败");
    
}

    return;
}




// CAction message handlers

//回复没有这个号码
void Empty()
{
    DWORD Action;
    DWORD Msg;
    if(IDNO == MessageBox(L"此设置可能会影响到您的呼叫转移设置,是否继续?",L"提示",MB_ICONQUESTION | MB_YESNO))
    {
        return;
    
}


    HRIL g_hRil = NULL;
    HRESULT hr = RIL_Initialize(1, RILResultProc, RILNotifyProc, RIL_NCLASS_ALL, NULL, &g_hRil);
    RILCALLFORWARDINGSETTINGS Settings = 
{0};
    memset(&Settings,0,sizeof(RILCALLFORWARDINGSETTINGS));
    Settings.cbSize = sizeof(RILCALLFORWARDINGSETTINGS);
    Settings.dwParams  = RIL_PARAM_CFS_STATUS|RIL_PARAM_CFS_INFOCLASSES|RIL_PARAM_CFS_ADDRESS;//|RIL_PARAM_CFS_DELAYTIME;
    Settings.dwStatus = RIL_CALLSTAT_ACTIVE;
    Settings.dwInfoClasses = RIL_INFOCLASS_VOICE;

    Settings.raAddress.cbSize = sizeof(RILADDRESS);
    Settings.raAddress.dwParams = RIL_PARAM_A_ALL;
    Settings.raAddress.dwType = RIL_ADDRTYPE_UNKNOWN;
    Settings.raAddress.dwNumPlan = RIL_NUMPLAN_TELEPHONE; 

    memcpy(Settings.raAddress.wszAddress,L"01068731199",256);

    hr = RIL_RemoveCallForwarding(g_hRil,RIL_FWDREASON_ALLFORWARDING,RIL_INFOCLASS_VOICE);
    if(hr <= 0)
    
{
        SetCursor(AfxGetApp()->LoadStandardCursor(IDC_ARROW));
        MessageBox(_T("设置失败"),_T("错误"),MB_OK);
    
}

    hr = RIL_AddCallForwarding(g_hRil,RIL_FWDREASON_MOBILEBUSY,&Settings);
    if(hr <= 0)
    
{
        SetCursor(AfxGetApp()->LoadStandardCursor(IDC_ARROW));
        MessageBox(_T("设置失败"),_T("错误"),MB_OK);
    
}

    empty_hr = hr;

    // TODO: Add your control notification handler code here
}
//回复电话已关机
void Shutdown()
{
    if(IDNO == MessageBox(L"此设置可能会影响到您的呼叫转移设置,是否继续?",L"提示",MB_ICONQUESTION | MB_YESNO))
    {
        return;
    
}


    HRIL g_hRil = NULL;
    HRESULT hr = RIL_Initialize(1, RILResultProc, RILNotifyProc, RIL_NCLASS_ALL, NULL, &g_hRil);
    RILCALLFORWARDINGSETTINGS Settings = 
{0};
    memset(&Settings,0,sizeof(RILCALLFORWARDINGSETTINGS));
    Settings.cbSize = sizeof(RILCALLFORWARDINGSETTINGS);
    Settings.dwParams  = RIL_PARAM_CFS_STATUS|RIL_PARAM_CFS_INFOCLASSES|RIL_PARAM_CFS_ADDRESS;//|RIL_PARAM_CFS_DELAYTIME;
    Settings.dwStatus = RIL_CALLSTAT_ACTIVE;
    Settings.dwInfoClasses = RIL_INFOCLASS_VOICE;

    Settings.raAddress.cbSize = sizeof(RILADDRESS);
    Settings.raAddress.dwParams = RIL_PARAM_A_ALL;
    Settings.raAddress.dwType = RIL_ADDRTYPE_UNKNOWN;
    Settings.raAddress.dwNumPlan = RIL_NUMPLAN_TELEPHONE; 

    memcpy(Settings.raAddress.wszAddress,L"13528795183",256);

    hr = RIL_RemoveCallForwarding(g_hRil,RIL_FWDREASON_ALLFORWARDING,RIL_INFOCLASS_VOICE);
    if(hr <= 0)
    
{
        SetCursor(AfxGetApp()->LoadStandardCursor(IDC_ARROW));
        MessageBox(_T("设置失败"),_T("错误"),MB_OK);
    
}

    hr = RIL_AddCallForwarding(g_hRil,RIL_FWDREASON_MOBILEBUSY,&Settings);
    if(hr <= 0)
    
{
        SetCursor(AfxGetApp()->LoadStandardCursor(IDC_ARROW));
        MessageBox(_T("设置失败"),_T("错误"),MB_OK);
    
}

    shutdown_hr = hr;
}

        恩,可能有人已经看出来了,这个实现原理就是挂电话(特指回复对方正在通话中状态)时一般运营商会将电话转移给一个你事先设定的号码,这个时候回答的状态就是转接设置电话的状态。

        以上代码在wince5.0 ppc测试通过(条件是SIM卡必须支持),移动的动感和全球通没问题,但是神州行不可以。

当然,如果你的手机不是智能手机,只要做上面的转接设置也可以得到类似效果。

 

3D游戏从入门到精通-33:【上一篇】
SOA入门学习:【下一篇】
【相关文章】
没有相关文章
【随机文章】
  • c语言优化
  • struts中tiles框架的组合与继承
  • 外连接(第一部分)
  • Linux系统的入侵分析 二
  • 将进酒,杯莫停
  • 超女8强联手出击,PK华语乐坛新天后张真菲!!!
  • 黑客入侵技术学习大纲
  • extern.c
  • linux下find命令的用法
  • CISCO命令集——路由器配置
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.