> 請教一下,可以自己寫程式將資料寫入outlook的通訊錄嗎??
> 不要用outlook本身的匯入,匯出功能喔.
您可以使用 OLE Automation 的方式來取得通訊錄的資料,
如果您使用 Delphi 5,有現成的 Outlook 元件可以使用,
參考以下程式碼:
var
i: integer;
NmSpace: NameSpace;
ContactsFolder: MAPIFolder;
begin
Outlook.Connect;
NmSpace := Outlook.GetNamespace('MAPI');
NmSpace.Logon('', '', False, False);
ContactsFolder := NmSpace.GetDefaultFolder(olFolderContacts);
for i := 1 to ContactsFolder.Items.Count do
Memo1.Lines.Add((ContactsFolder.Items.Item(i) as
ContactItem).FullName);
end;
取得聯絡人物件時,用姓名就可以了:
var
AContactItem: ContactItem;
begin
AContactItem := ContactsFolder.Items.Item('Michael') as ContactItem;
ShowMessage(AContactItem.FileAs); // 取得"歸檔為"
AContactItem.FileAs := 'Michael Tsai'; // 修改"歸檔為"
AContactItem.Save; // 修改完必須呼叫 Save 方法
end;
新增一個聯絡人:
var
AContactItem: ContactItem;
begin
AContactItem := OutlookApp.CreateItem(olContactItem) as ContactItem;
AContactItem.FirstName := 'Huanlin';
AContactItem.LastName := 'Tsai';
AContactItem.FullName := 'Huanlin Tsai';
AContactItem.FileAs := 'Huanlin Tsai (Michael)';
AContactItem.Save;
end;
               (
geocities.com/huanlin_tsai)