WINCE手机拨号

手机拨号的2种方式
1、Ras_系列函数

注:只在CDMA手机上测试成功

#include <ras.h>
#include <Raserror.h>

#pragma comment ( lib, \"Rasapi32.lib\" )


// 获取所有的连接的名称
RASENTRYNAME szEntryNames[MAX_ENTRYS];
memset(&szEntryNames, 0, sizeof(szEntryNames));
for (int i=0; i<MAX_ENTRYS; i++)
{
       szEntryNames[i].dwSize = sizeof(RASENTRYNAME);
}
DWORD dwCb = sizeof(szEntryNames); 
DWORD dwEntries = 0;
uiRet = RasEnumEntries( NULL, NULL, szEntryNames, &dwCb, &dwEntries);
if (uiRet != ERROR_SUCCESS)
{
       return uiRet;
}
// 获取Entry的属性
uiRet = RasGetEntryProperties(NULL, 
   szEntryNames[i].szEntryName,  
   &entryProperty, 
   &dwEntrySize, 
   szSP, 
   &dwSPLen);
// 获取拨号参数
RASDIALPARAMS rdParams = {0};
rdParams.dwSize = sizeof(RASDIALPARAMS);
lstrcpy(rdParams.szEntryName, szEntryNames[nEntryGPRS].szEntryName); 
BOOL bPassword = FALSE; 
uiRet = RasGetEntryDialParams(NULL, &rdParams, &bPassword);
if (uiRet != ERROR_SUCCESS)
{
       return uiRet;
}
lstrcpy(rdParams.szPhoneNumber, entryProperty.szLocalPhoneNumber); // CDMA的电话号码// 
// 拨号
uiRet = RasDial(NULL, NULL, &rdParams, 0, NULL, &m_hRasConn);


2、ConnMgr_系列函数

注:在CDMA、GPRS、EDGE拨号都成功了。。

#include <initguid.h>
#include <Connmgr.h>

#pragma comment ( lib, \"Cellcore.lib\" )


// 建立拨号链接
DWORD EstablishConnection()
{
     CONNMGR_CONNECTIONINFO connInfo;
     ZeroMemory(&connInfo, sizeof(connInfo));
     connInfo.cbSize = sizeof(connInfo);
     connInfo.dwParams = CONNMGR_PARAM_GUIDDESTNET;
     connInfo.dwFlags = CONNMGR_FLAG_PROXY_HTTP 
           | CONNMGR_FLAG_PROXY_WAP 
           | CONNMGR_FLAG_PROXY_SOCKS4 
           | CONNMGR_FLAG_PROXY_SOCKS5;
     connInfo.dwPriority = CONNMGR_PRIORITY_USERINTERACTIVE;
     connInfo.guidDestNet = IID_DestNetInternet;
     connInfo.bExclusive= FALSE;
     connInfo.bDisabled = FALSE;
     DWORD dwStatus = 0;
     if (ConnMgrEstablishConnectionSync(&connInfo, &m_hConnection, 2*60*1000, &dwStatus) != S_OK)
     // 开始拨号
     {
           DWORD dwLastError = GetLastError ();
           ReleaseConnection();
           return dwLastError;
     }
     return S_OK;
}
// 断开拨号链接
DWORD ReleaseConnection()
{
     if (m_hConnection != NULL)
     {
           LONG lCache = 0;
           ConnMgrReleaseConnection(m_hConnection, lCache);
           m_hConnection = NULL;
     }
     return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值