Přihlásit se pomocí účtu Microsoft
Přihlaste se nebo si vytvořte účet.
Dobrý den,
Vyberte jiný účet.
Máte více účtů.
Zvolte účet, pomocí kterého se chcete přihlásit.

Shrnutí

Tento článek popisuje, jak pomocí knihovny objektů Microsoft Outlook 10.0 načíst určité zprávy pomocí metody Najít a metody Omezit v aplikaci Microsoft Visual C#.

Další informace

Pokud chcete pomocí knihovny objektů Microsoft Outlook 10.0 načíst konkrétní zprávy, postupujte takto:

  1. Spusťte Microsoft Visual Studio .NET nebo Microsoft Visual Studio 2005.

  2. V nabídce Soubor přejděte na Nový a potom klikněte na Project.

  3. V seznamu Typy projektů Visual C# klikněte na Aplikace konzoly.

    Ve výchozím nastavení se vytvoří soubor Class1.cs.

    Poznámka: V aplikaci Microsoft Visual C# 2005 klikněte na Visual C#" v seznamu Typy projektů Visual C #. Ve výchozím nastavení se vytvoří Program.cs.

  4. Přidejte odkaz na knihovnu objektů Microsoft Outlook 10.0. Postupujte takto:

    1. V nabídce Project klikněte na Přidat odkaz.

    2. Klikněte na kartu COM, vyhledejte knihovnu objektů Microsoft Outlook 10.0 a potom klikněte na Vybrat.

      Poznámka: V aplikaci Microsoft Visual C# 2005. není možné kliknout na Vybrat.

    3. V dialogovém okně Přidat odkazy klikněte na OK.

    4. Pokud se zobrazí výzva ke generování obálky pro knihovny, které jste vybrali, klikněte na Ano.

  5. V okně kódu nahraďte kód následujícími:

    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. Vyhledejte textový řetězec TODO v kódu a upravte kód pro vaše prostředí.

  7. Stisknutím klávesy F5 vytvořte a spusťte program.

Odkazy

Další informace o funkcích zabezpečení Outlook 2002 najdete v následujícím článku znalostní báze Microsoft Knowledge Base:

290500 Popis funkcí zabezpečení e-mailů souvisejících s vývojáři v aplikaci Outlook 2002


Další informace o problémech, ke kterým může dojít při použití vlastnosti Počet velkých kolekcí, najdete v následujícím článku znalostní báze Microsoft Knowledge Base:

294385 OL2002: Nesprávná vlastnost Počet při použití opakovaných událostí

Potřebujete další pomoc?

Chcete další možnosti?

Prozkoumejte výhody předplatného, projděte si školicí kurzy, zjistěte, jak zabezpečit své zařízení a mnohem více.

Komunity vám pomohou klást otázky a odpovídat na ně, poskytovat zpětnou vazbu a vyslechnout odborníky s bohatými znalostmi.

Byly tyto informace užitečné?

Jak jste spokojeni s kvalitou jazyka?
Co ovlivnilo váš názor?
Po stisknutí tlačítka pro odeslání se vaše zpětná vazba použije k vylepšování produktů a služeb Microsoftu. Váš správce IT bude moci tato data shromažďovat. Prohlášení o zásadách ochrany osobních údajů.

Děkujeme vám za zpětnou vazbu.

×