Nasıl yapılır: Program Aracılığıyla Belirli bir Kişi Arama
Bu örnekte, adı ve soyadına göre belirli bir kişi için Outlook kişiler klasörü aranılır. Örnekte, John Evans isimli kişinin kişiler klasöründe varolduğu varsayılır.
Uygulama hedefi: Bu konudaki bilgiler, Outlook 2013 ve Outlook 2010 için uygulama düzeyi projelere yöneliktir. Daha fazla bilgi edinmek için, bkz. Office Uygulaması ve Proje Türüne Göre Kullanılabilir Özellikler.
Örnek
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;
}
}