明辉站/技术开发/内容

取得的Outlook目录并在TTreeView里显示出来

技术开发2023-08-02 阅读
[摘要]outlook对象提供了一个MAPI命名空间可以访问其文件夹集合,每个文件夹都有一个唯一的字符型标识符,可以将其作为数据保存在TTreeNode的EntryID属性里。例程如下,uses里加上ComObj。 procedure LoadFolder(ParentNode: TTreeNode; ...
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
//转载请保留此信息

……

相关阅读