当前位置:编程学习 > wap >>

如何通过IMessage获得相关信息?

我获取的是草稿箱的邮件,pMsg是邮件对象         
         ULONG cValuesMail = 0;
SPropValue *pspvEmail; 
SizedSPropTagArray(1, sptaEmail) = { 1, PR_SENDER_EMAIL_ADDRESS};
pMsg->GetProps((SPropTagArray *) &sptaEmail, MAPI_UNICODE, &cValues, 
&pspvEmail);
if (pspvEmail->ulPropTag == PR_SENDER_EMAIL_ADDRESS ) 
wcout <<"  "<< pspvEmail->Value.lpszW << endl;

ULONG cValuesBody = 0;
SPropValue *pspvBody; 
SizedSPropTagArray(1, sptaEmail) = { 1, PR_BODY };
pMsg->GetProps((SPropTagArray *) &sptaEmail, MAPI_UNICODE, &cValues, 
&pspvBody);
if (pspvBody->ulPropTag == PR_BODY ) 
wcout <<"  "<< pspvBody->Value.lpszW << endl;
总是判断不成立,pspvBody->ulPropTag值是10,取不到相关数据。分不多,请高手帮忙。
--------------------编程问答-------------------- 自己顶 --------------------编程问答-------------------- 获取邮件的内容不能调用pMsg->GetProps((SPropTagArray *) &sptaEmail, MAPI_UNICODE, &cValues, 
&pspvBody); 来获取,必须通过pmsg->OpenProperty(PR_BODY, NULL, STGM_WRITE, MAPI_MODIFY, 
        (LPUNKNOWN*)&pstm);
    EXIT_ON_FAILED(hr);

    pstm->Read(pszBody,(wcslen(pszBody)+ 1)* sizeof(WCHAR), NULL);
    pstm->Release();
补充:移动开发 ,  Windows Phone
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,