outlook对象提供了一个mapi命名空间可以访问其文件夹集合,每个文件夹都有一个唯一的字符型标识符,可以将其作为数据保存在ttreenode的entryid属性里。例程如下,uses里加上comobj。
procedure loadfolder(parentnode: ttreenode; folder: olevariant);
var
i: integer;
node: ttreenode;
begin
for i := 1 to folder.count do
begin
node := form1.treeview1.items.addchild(parentnode, folder.item[i].name);
loadfolder(node, folder.item[i].folders);
end;
end;
procedure tform1.button1click(sender: tobject);
var
outlook, namespace: olevariant;
begin
outlook := createoleobject('outlook.application');
namespace := outlook.getnamespace('mapi');
loadfolder(nil, namespace.folders);
outlook := unassigned;
end;
//rock
//转载请保留此信息