Доброго времени суток. Вопрос про MAPI. Нужно получить email текущего юзверя. Пытался так:
| Код | Name := 'MAPIOBJECT'; p_Session : Outlook2000.NameSpace; p_Session.GetIDsOfNames(GUID_NULL, @pName, 1, LOCALE_SYSTEM_DEFAULT, @rgDispId);
p_Session.Invoke(rgDispId, GUID_NULL, 0, DISPATCH_PROPERTYGET, dispparams, @vaResult, nil, nil); ... spSession.OpenEntry(ent.cb, PENTRYID(ent.lpb), IID_IMailUser, MAPI_BEST_ACCESS, dwCount, @spMailUser); MapiX.MAPIAllocateBuffer(sizeof(ULONG) + sizeof(ULONG)*iColsCount, @pCols); pCols.cValues := iColsCount; for i:=0 to iColsCount-1 do pCols.aulPropTag[i] := ulProperties[i]; spMailUser.GetProps(pCols, 0, dwCount, pProperty); pProp := pProperty; for i:=0 to dwCount-1 do begin if pProp.ulPropTag = PR_EMAIL_ADDRESS then Result := pProp.Value.lpszA; pProp := PSPropValue(Integer(pProp) + sizeof(TSPropValue)); end;
|
Но в Resulte строка 'Unknown'. Кто знает - поможите. |