Prisijunkite prie „Microsoft“
Prisijunkite arba sukurkite paskyrą.
Sveiki,
Pasirinkti kitą paskyrą.
Turite kelias paskyras
Pasirinkite paskyrą, kurią naudodami norite prisijungti.

Suvestinė

Šiame straipsnyje aprašoma, kaip naudoti "Microsoft Outlook 10.0" objektų biblioteką konkretiems laiškams gauti naudojant metodą Rasti ir apriboti "Microsoft Visual C#".

Daugiau informacijos

Norėdami naudoti "Microsoft Outlook 10.0" objektų biblioteką konkretiems laiškams gauti, atlikite šiuos veiksmus:

  1. Paleiskite "Microsoft Visual Studio .NET" arba "Microsoft Visual Studio 2005".

  2. Meniu Failas nukreipkite žymiklį į Naujas, tada spustelėkite Project.

  3. Sąraše "Visual C# Projects" tipai spustelėkite Konsolės taikomoji programa.

    Pagal numatytuosius nustatymus sukuriamas "Class1.cs" failas.

    Pastaba "Microsoft Visual C# 2005" spustelėkite "Visual C#" sąraše "Visual C# Projects" tipai. Pagal numatytuosius nustatymus sukuriama Programa.cs.

  4. Įtraukite nuorodą į "Microsoft Outlook 10.0" objektų biblioteką. Norėdami tai padaryti, atlikite šiuos veiksmus:

    1. Meniu Project spustelėkite Įtraukti nuorodą.

    2. Spustelėkite skirtuką COM, raskite "Microsoft Outlook 10.0" objektų biblioteką, tada spustelėkite Pasirinkti.

      Pastaba Programoje "Microsoft Visual C# 2005". jums nereikia spustelėti Pasirinkti.

    3. Dialogo lange Įtraukti nuorodų spustelėkite Gerai.

    4. Jei būsite paraginti sugeneruoti pažymėtų bibliotekų pakuotes, spustelėkite Taip.

  5. Kodo lange pakeiskite kodą taip:

    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;
    }
    }
    }
  6. Kode ieškokite TODO teksto eilutės, tada modifikuokite savo aplinkos kodą.

  7. Paspauskite klavišą F5, kad kursite ir paleisite programą.

Nuorodos

Jei reikia daugiau informacijos apie "Outlook 2002" saugos funkcijas, spustelėkite toliau nurodytą straipsnio numerį ir peržiūrėkite "Microsoft" žinių bazės straipsnį:

290500 Su kūrėju susijusių el. pašto saugos funkcijų aprašas programoje "Outlook 2002"


Daugiau informacijos apie problemas, kurios gali kilti, kai naudojate didelių rinkinių ypatybę Count, spustelėkite toliau nurodytą straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:

294385 OL2002: neteisinga ypatybė Count naudojant pasikartojančias paskyras

Reikia daugiau pagalbos?

Norite daugiau parinkčių?

Sužinokite apie prenumeratos pranašumus, peržiūrėkite mokymo kursus, sužinokite, kaip apsaugoti savo įrenginį ir kt.

Bendruomenės padeda užduoti klausimus ir į juos atsakyti, pateikti atsiliepimų ir išgirsti iš ekspertų, turinčių daug žinių.

Ar ši informacija buvo naudinga?

Ar esate patenkinti kalbos kokybe?
Kas turėjo įtakos jūsų įspūdžiams?
Paspaudus mygtuką Pateikti, jūsų atsiliepimai bus naudojami tobulinant „Microsoft“ produktus ir paslaugas. Jūsų IT administratorius galės rinkti šiuos duomenis. Privatumo patvirtinimas.

Dėkojame už jūsų atsiliepimą!

×