一.說明
其實很簡單,Pocket PC中關於操作SIM中連絡人與簡訊的函數都在標頭檔simmgr.h中,它需要一個庫CellCore.lib.只要看一下標頭檔就
應該知道怎麼寫了,這裡我只是說明怎樣讀取SIM中連絡人的資訊,其他的如刪除/添加等道理相同.
二.實現
首先,需要調用SimInitialize 進行初始化一下,然後通過函數SimGetPhonebookStatus來擷取總記錄數,最後我們就可以通過函數
SimReadPhonebookEntry來依次讀取每條記錄了,最後別忘記了回收資源SimDeinitialize.
代碼如下:
void GetSimPhoneName(){HSIM lphSim;HRESULT hr = SimInitialize(0,NULL,0,&lphSim); if(FAILED(hr)){ AfxMessageBox(L"failed");}//SIM_PBSTORAGE_SIM//擷取總共使用的多少條記錄與總共可以容納的記錄條數DWORD dwUsed,dwTotal;hr = SimGetPhonebookStatus(lphSim,SIM_PBSTORAGE_SIM,&dwUsed,&dwTotal); //對結構初始話以下SIMPHONEBOOKENTRY phoneent;memset(&phoneent,0,sizeof(phoneent));phoneent.cbSize = sizeof(phoneent); CString str; //可以依次擷取每個電話號碼
for(int i=0;i<dwUsed;i++)
{
SimReadPhonebookEntry(lphSim,SIM_PBSTORAGE_SIM,i+1,&phoneent);
str = phoneent.lpszAddress; //電話號碼
str += phoneent.lpszText; //姓名
}
//最後別忘了清理
SimDeinitialize(lphSim);
}