Ich lese mit folgendem Code die Outlook-Ordnerstruktur in ein TreeView ein, was auch sehr gut und schnell funktioniert:
Delphi-Quellcode:
procedure TForm2.btn2Click(Sender: TObject);
begin
RetrieveOutlookFolders(TreeView1);
end;
procedure TForm2.RetrieveOutlookFolders(tvFolders: TTreeView);
procedure LoadFolder(ParentNode: TTreeNode; Folder: OleVariant);
var
i: Integer;
Node: TTreeNode;
begin
for i := 1
to Folder.Count
do
begin
Node := tvFolders.Items.AddChild(ParentNode, Folder.Item[i].
Name);
LoadFolder(Node, Folder.Item[i].Folders);
end;
end;
var
outlook, NameSpace: OLEVariant;
begin
Screen.Cursor := crHourGlass;
outlook := CreateOleObject('
Outlook.Application');
NameSpace := outlook.GetNameSpace('
MAPI');
LoadFolder(
nil, NameSpace.Folders);
outlook := Unassigned;
Screen.Cursor := crDefault;
end;
Nun möchte ich in diesem TreeView einen der Kontakte-Ordner auswählen und in diesem Ordner in Outlook neue Kontakte erzeugen. Weiß jemand, wie man das machen könnte?