怎么获得OutLook Express里所有的联系人?急 在VCKBASE上下载的例子编译也没有成功.....有人做过吗?急呀 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 LoadLibrary("wab32.dll")GetProcAddress()如果隐式链接到wab32.dll,则跳过上面的步骤WABOpen() --> IAddrBook/IWABObject 注意IWABObject这个对象必须保留起来,很多后续调用分配的内存必须由它来释放,否则会发生内存泄露或者释放出错IAddrBook::GetContentsTable(WAB_LOCAL_CONTAINERS|WAB_PROFILE_CONTENTS,...) --> IMAPITableIMAPITable::GetRowCount() --> rowsNumIMAPITable::QueryRows(rowsNum,...) --> SRowSetSRowSet::cRows 就是联系人个数SRowSet::aRow[i] 就是联系人SRow从SRow可能还得不到联系人的所有属性,但是能得到ENTRYID,做法是循环寻找属性,直到SRow::lpProps[].ulPropTag==PR_ENTRYID就表示是ENTRYIDIAddrBook::OpenEntry(ENTRYID,...) --> IMAPIProp 这个就是一个联系人的具体接口IMAPIProp::GetProps() 这个调用可以得到联系人的任意属性值上面的代码只能算是伪代码,只是说明一个大致过程,真正要读取一个联系人的所有资料,代码行数应该在百行以上,相当麻烦。 另,MSDN上关于这些资料太少了,仅仅简单介绍每个接口方法,没有说明具体原理,我也是到微软论坛咨询和长时间探索才得以解决的。 udp 可以用 AcceptEx吗? 为什么 一个线程读数据,一个线程写数据,要加锁? 线程while循环中使用WaitForSingleObject函数循环次数受限问题 VC数据库 如何实现多实例快捷键?? 如何实现添加图片过程中自动将图复制到指定目录下 高人请进,菜鸟莫入:如何替换系统正在占用的一个DLL 怎样让我自己生成的菜单响应消息,并且知道所选的是哪一个菜单? 在线书库增加了两本--程序员资源宝典之VC menu问题 求写上传文件程序的方法 请大家帮忙看看这个错误!
GetProcAddress()
如果隐式链接到wab32.dll,则跳过上面的步骤
WABOpen() --> IAddrBook/IWABObject 注意IWABObject这个对象必须保留起来,很多后续调用分配的内存必须由它来释放,否则会发生内存泄露或者释放出错
IAddrBook::GetContentsTable(WAB_LOCAL_CONTAINERS|WAB_PROFILE_CONTENTS,...) --> IMAPITable
IMAPITable::GetRowCount() --> rowsNum
IMAPITable::QueryRows(rowsNum,...) --> SRowSet
SRowSet::cRows 就是联系人个数
SRowSet::aRow[i] 就是联系人SRow
从SRow可能还得不到联系人的所有属性,但是能得到ENTRYID,做法是循环寻找属性,直到SRow::lpProps[].ulPropTag==PR_ENTRYID就表示是ENTRYID
IAddrBook::OpenEntry(ENTRYID,...) --> IMAPIProp 这个就是一个联系人的具体接口
IMAPIProp::GetProps() 这个调用可以得到联系人的任意属性值上面的代码只能算是伪代码,只是说明一个大致过程,真正要读取一个联系人的所有资料,代码行数应该在百行以上,相当麻烦。