16,472
社区成员
发帖
与我相关
我的任务
分享
#import “C:/Program Files/Common Files/Microsoft Shared/OFFICE11/mso.dll” rename_namespace(”Office”), named_guids
#import “C:/Program Files/Microsoft Office/Office11/MSOUTL.olb” rename_namespace(”Outlook”), named_guids
using namespace Office;
using namespace Outlook;
::CoInitialize(NULL);
{
_ApplicationPtr spOutlook("Outlook.Application");
_NameSpacePtr spNamespace = spOutlook->GetNamespace("MAPI");
MAPIFolderPtr spFolder = spNamespace->GetDefaultFolder(olFolderContacts);
_ItemsPtr spItems = spFolder->GetItems();
_ContactItemPtr spContact;
char s[200]={0};
for(int i=1;i<=spItems->Count;++i)
{
spContact = spItems->Item(i);
sprintf(s, "%s%s", _com_util::ConvertBSTRToString(spContact->Subject), _com_util::ConvertBSTRToString(spContact->MobileTelephoneNumber));
//AfxMessageBox(_T(s));
}
spContact = NULL;
spItems = NULL;
spFolder = NULL;
spNamespace = NULL;
spOutlook = NULL;
}
::CoUninitialize();
Variant Outlook = CreateOleObject( "Outlook.Application" );
Variant MAPINamespace = Outlook.OleFunction( "GetNamespace", "MAPI" );
Variant contactsFolder = MAPINamespace.OleFunction( "GetDefaultFolder", olFolderContacts );
Variant contactItems = contactsFolder.OlePropertyGet( "Items" );
Variant contactItemsCount = contactItems.OlePropertyGet( "Count" );
for( int i = 1; i <= contactItemsCount; i++ )
{
Variant contactItem = contactItems.OleFunction( "Item", i );
for( int j = 0; propertyList.setCurrent( j ); j++ )
{
Variant propertyValue = contactItem.OlePropertyGet( "FullName" );
}
}