取得IMEI编号

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

取得IMEI编号
IMEI即International Mobile Equipment Identity(国际移动设备身份)的简称,每一个手机具有唯一IMEI号,用途识别手机,IMEI码一般由位数字组成,一般的GSM手机按下“*#06#”,IMEI码就会显示出来。

IMSI即国际移动用户识别码,在GSM系统中,给每个移动用户分配一个唯一的国际用户识别码IMSI,此码在网中所有位置包括漫游区都是有效的。

在我们所使用的手机SIM卡中是不保留手机号的,而是保留IMSI号。

下面介绍如何在程序中获得IMEI号:
void IMEIRILNotifyProc(DWORD dwNotifyCode, const void* pData, DWORD dwDataSize, DWORD dwParam)
{
}
//
************************************************************************** // 函数名: IMEIRILResultProc
// 函数作用:
// 参数说明:
// 返回值说明:
//
************************************************************************** void IMEIRILResultProc(DWORD dwResultCode, HRESULT hrCommandID, const void* pData, DWORD dwDataSize, DWORD dwParam)
{
if(RIL_RESULT_OK == dwResultCode)
{
RILEQUIPMENTINFO* pEquipmentInfo=(RILEQUIPMENTINFO*)pData;
memcpy(g_ssid,(char*)pEquipmentInfo->szSerialNumber,14);
SetEvent(hIMEIEvent);
}
}
//
************************************************************************** // 函数名: GetServingsCode
// 函数作用: 获得IMSI号
// 参数说明: 无
// 返回值说明: TRUE:成功
// FALSE:失败
//
************************************************************************** BOOL GetServingsCode()
{
HRIL m_hRil;
HRESULT hResult = RIL_Initialize(
1,
IMEIRILResultProc,
IMEIRILNotifyProc,
RIL_NCLASS_SUPSERVICE,
0,
&m_hRil);
HRESULT hr = RIL_GetEquipmentInfo(m_hRil);
if(FAILED(hr))
{
RIL_Deinitialize( m_hRil);
return FALSE;
}
else
{
hIMEIEvent=CreateEvent(NULL, FALSE, FALSE, NULL);
DWORD dwWait = WaitForSingleObject(hIMEIEvent,60000);
if (W AIT_OBJECT_0 == dwWait)
{
RIL_Deinitialize( m_hRil);
CloseHandle(hIMEIEvent);
return TRUE;
}
else
{
RIL_Deinitialize( m_hRil);
CloseHandle(hIMEIEvent);
return FALSE;
}
}
}
获得IMSI方法与获得IMEI号方法相同,只是将函数RIL_GetEquipmentInfo换为RIL_GetUserIdentity。

相关文档
最新文档