Ringkasan
Artikel ini menguraikan cara menggunakan Pustaka Objek Microsoft Outlook 10.0 untuk mengambil pesan tertentu dengan menggunakan metode Temukan dan metode Batasi di Microsoft Visual C#.
Informasi Selengkapnya
Untuk menggunakan Pustaka Objek Microsoft Outlook 10.0 untuk mengambil pesan tertentu, ikuti langkah-langkah ini:
-
Mulai Microsoft Visual Studio .NET atau Microsoft Visual Studio 2005.
-
Pada menu File, arahkan ke Baru, lalu klik Project.
-
Di daftar Tipe Proyek Visual C# , klik Aplikasi Konsol.
Secara default, file Class1.cs akan dibuat.
Catatan Di Microsoft Visual C# 2005, klik Visual C#" dalam daftar Tipe proyek Visual C #. Secara default, Program.cs dibuat. -
Tambahkan referensi ke Pustaka Objek Microsoft Outlook 10.0. Untuk melakukannya, ikuti langkah-langkah berikut:
-
Pada menu Project, klik Tambahkan Referensi.
-
Klik tab COM, temukan Microsoft Outlook Pustaka Objek 10.0, lalu klik Pilih.
Catatan di Microsoft Visual C# 2005. Anda tidak harus mengklik Pilih. -
Dalam kotak dialog Tambahkan Referensi, klik OK.
-
Jika Anda diminta membuat pembungkus untuk pustaka yang Anda pilih, klik Ya.
-
-
Di jendela kode, ganti kode dengan yang berikut:
using System;
using System.Reflection; // to use Missing.Value
namespace FilterAppointments
{
/// <summary>
/// Summary description for Class1.
/// </summary>
class Class1
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
public static int Main(string[] args)
{
try
{
// Create an Outlook application.
Outlook.Application oApp = new Outlook.Application();
// Get the Mapi NameSpace and the Logon.
Outlook.NameSpace oNS = (Outlook.NameSpace)oApp.GetNamespace("mapi");
// Log on using dialog to choose a profile.
oNS.Logon(Missing.Value, Missing.Value, true, true);
// Alternate Logon using specific profile
// TODO: Change the profile name where it is appropriate.
//oNS.Logon("YourValidProfile", Missing.Value, false, true);
// Get the Calendar folder.
Outlook.MAPIFolder oCalendar = oNS.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderCalendar);
// Get the Items collection in the folder.
Outlook.Items oItems = (Outlook.Items)oCalendar.Items;
Console.WriteLine("Total Items (unrestricted): " + oItems.Count);
//Include all occurrences of recurring items, and then sort them.
oItems.Sort ("[Start]", false);
oItems.IncludeRecurrences = true;
// Define the string for the search criteria.
String sCriteria;
// Set the criteria for the Date fields.
sCriteria = "[Start] <= '09/01/2002 08:00 AM' and [End] >= '2/15/2002 08:00 PM'";
// Set the criteria for a string field.
// sCriteria = "[Subject] = 'Weekly recurring meeting'";
// Set the criteria for a numeric field.
// Look for meetings that have not been responded to.
// sCriteria = "[ResponseStatus] = " + (Int32)Outlook.OlResponseStatus.olResponseNotResponded)
// Use the Restrict method to reduce the number of items to process.
Outlook.Items oRestrictedItems = oItems.Restrict(sCriteria);
oRestrictedItems.Sort ("[Start]", false);
oRestrictedItems.IncludeRecurrences = true;
Console.WriteLine("Total Items Unrestricted : " + oRestrictedItems.Count);
Outlook.AppointmentItem oAppointment;
//Get each item until item is null.
Outlook.AppointmentItem oAppt;
oAppt = (Outlook.AppointmentItem)oRestrictedItems.GetFirst();
while (oAppt != null)
{
// Console.WriteLine(i.ToString());
Console.WriteLine(" Subject: " + oAppt.Subject.ToString());
Console.WriteLine(" Start time: " + oAppt.Start.ToString());
Console.WriteLine(" End time: " + oAppt.End.ToString());
Console.WriteLine(" Occurrences: " + oAppt.RecurrenceState.ToString());
Console.WriteLine("\n\n");
oAppt = (Outlook.AppointmentItem)oRestrictedItems.GetNext();
}
// Use the Find method to get single match.
sCriteria = "[Start] >= '09/30/2001'";
Console.WriteLine("Criteria: " + sCriteria.ToString());
oAppointment = (Outlook.AppointmentItem)oItems.Find(sCriteria);
Console.WriteLine("Used Find with Date fields");
if (oAppointment is Outlook.AppointmentItem)
Console.WriteLine("Found -> " + oAppointment.Subject.ToString());
else
Console.WriteLine("No object found");
// Log off
oNS.Logoff();
// Clean up
oAppointment = null;
oRestrictedItems = null;
oItems = null;
oCalendar = null;
oNS = null;
oApp = null;
}
//Simple error handling
catch (Exception e)
{
Console.WriteLine("{0} Exception caught.", e);
}
//Default return value
return 0;
}
}
} -
Cari string teks TODO dalam kode, lalu ubah kode untuk lingkungan Anda.
-
Tekan tombol F5 untuk menyusun dan menjalankan program.
Referensi
Untuk informasi selengkapnya tentang fitur keamanan Outlook 2002, klik nomor artikel berikut ini untuk melihat artikel dalam Basis Pengetahuan Microsoft:
290500 Deskripsi fitur keamanan email terkait pengembang di Outlook 2002Untuk
informasi tambahan tentang masalah yang mungkin terjadi saat Anda menggunakan properti Hitung dari kumpulan besar, klik nomor artikel berikut untuk menampilkan artikel dalam Pangkalan Pengetahuan Microsoft:
294385 OL2002: Properti Hitung yang salah menggunakan janji temu berulang