방법: 프로그래밍 방식으로 특정 연락처 검색
이 예제에서는 Outlook 연락처 폴더에서 성과 이름으로 특정 연락처를 검색합니다.이 예제에서는 John Evans라는 이름의 연락처가 연락처 폴더에 있다고 가정합니다.
적용 대상: 이 항목의 정보는 Outlook 2013 및 Outlook 2010의 응용 프로그램 수준 프로젝트에 적용됩니다. 자세한 내용은 Office 응용 프로그램 및 프로젝트 형식에 따라 사용 가능한 기능을 참조하십시오.
예제
Private Sub ThisAddIn_Startup(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles Me.Startup
FindContactEmailByName("John", "Evans")
End Sub
Private Sub FindContactEmailByName(ByVal firstName As String, _
ByVal lastName As String)
Dim outlookNameSpace As Outlook.NameSpace = Me.Application.GetNamespace("MAPI")
Dim contactFolder As Outlook.MAPIFolder = _
outlookNameSpace.GetDefaultFolder( _
Outlook.OlDefaultFolders.olFolderContacts)
Dim contactItems As Outlook.Items = contactFolder.Items
Try
Dim contact As Outlook.ContactItem = _
CType(contactItems.Find(String.Format _
("[FirstName]='{0}' and [LastName]={1}", _
firstName, lastName)), Outlook.ContactItem)
If contact IsNot Nothing Then
contact.Display()
Else
MsgBox("The contact information was not found.")
End If
Catch ex As Exception
Throw ex
End Try
End Sub
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
FindContactEmailByName("John", "Evans");
}
private void FindContactEmailByName(string firstName, string lastName)
{
Outlook.NameSpace outlookNameSpace = this.Application.GetNamespace("MAPI");
Outlook.MAPIFolder contactsFolder =
outlookNameSpace.GetDefaultFolder(
Microsoft.Office.Interop.Outlook.
OlDefaultFolders.olFolderContacts);
Outlook.Items contactItems = contactsFolder.Items;
try
{
Outlook.ContactItem contact =
(Outlook.ContactItem)contactItems.
Find(String.Format("[FirstName]='{0}' and "
+ "[LastName]='{1}'", firstName, lastName));
if (contact != null)
{
contact.Display(true);
}
else
{
MessageBox.Show("The contact information was not found.");
}
}
catch (Exception ex)
{
throw ex;
}
}