Microsoft MVP

Email y Rss

email rss

Klout

Seguidores en facebook

Timeline de mi Twitter

Tienes preguntas?

Ideas de un Conejo
Más allá de los sistemas de información: (C#)=> videojuegos, soluciones a problemas interesantes y Sistemas Operativos
XNA
C#
Eventos
Sistemas Operativos
Review
Varios
PL/SQL
Acerca de

Cómo encontrar los archivos pst de outlook? – C#

February 2nd, 2010 by JuanK

TweetFollow @JuanKRuiz

Share

Con ayuda de las facilidades de interoperabilidad que ofrece .Net Framework y desde luego con ayuda de Visual Studio este proceso es bastante sencillo.

 

El primer paso es desde luego agregar una referencia al objeto COM de Outlook para que Visual Studio nos importe el componente y esto nos permita acceder al objeto COM como lo haríamos normalmente con cualquiero otra librería para usar con el framework. El componente COM a que debemos acceder es (o equivalente de acuerdo a la versión de office instalada): 

image

Como buena práctica resulta importante colocarle un alias al namespace, por ejemplo:

using Outlook = Microsoft.Office.Interop.Outlook; 

Los pasos importantes siguientes se resumen así:

  1. Instanciar un objeto de la aplicación (outlook)
  2. Obtener los stores (almacenamientos de datos) para la sesión actual
  3. Verificar que exista un FilePath, esto es necesario puesto que si el store esta en exchange el FilePath es nulo.
  4. Verificar que el FilePath termine en “.pst”, pues algunos stores de caché tienen extensiones diferentes.
  5. El resto es maquillaje
using System;
using System.Text;
using Outlook = Microsoft.Office.Interop.Outlook;

class Program
{
    static void Main(string[] args)
    {
        StringBuilder sb = new StringBuilder();
        Outlook._Application outlookObj = new Outlook.Application();

        foreach (Outlook.Store store in outlookObj.Session.Stores)
            if (store.FilePath != null && store.FilePath.EndsWith(".pst"))
                sb.AppendLine(store.FilePath);

        Console.WriteLine(sb.ToString());
        Console.ReadLine();
    }
}

Happy Learning!

Print Friendly
Share

TweetFollow @JuanKRuiz

  • 10 Comentarios »
  • Publicado en la categoría 'C#'

10 comentarios to “Cómo encontrar los archivos pst de outlook? – C# ”


  • javier Says:
    October 20th, 2008 at 2:55 pm  

    Muy buena aportación.
    Pero comento que tambien tengo como hacerlo en Microsoft Outlook 2007.
    Gracias por el apoyo.
    Hasta pronto

  • JuanK Says:
    October 20th, 2008 at 2:58 pm  

    mmm
    ok
    pero no te entiendo…

    este código lo utilicé en outlook 2007.

  • javier Says:
    October 20th, 2008 at 4:39 pm  

    Disculpame muchisimo..
    Realmente quize decir outlook 2003
    JEJEJEJE
    De todos modos gracias

  • JuanK Says:
    October 20th, 2008 at 4:46 pm  

    jajjaaj ok
    pero…
    también lo probé en outlook 2003 :S y me funciono :S

    te pasó algo diferente en versión 2003?

  • javier Says:
    October 20th, 2008 at 4:49 pm  

    siii.
    Resulta que el clase Store de el namespace outlook no jala en la versión del 2003
    Solo si instalas el 2007

  • JuanK Says:
    October 20th, 2008 at 4:51 pm  

    mmm
    sospechoso…

    si incluyes esto:

    using Outlook = Microsoft.Office.Interop.Outlook;

    si que jala…

  • javier Says:
    October 20th, 2008 at 4:54 pm  

    Solo si incluyes como referencia COM la libreria Microsoft.Outlook 12.0 object library
    mas la que incluye el office 2003 es la 11

  • JuanK Says:
    October 20th, 2008 at 5:07 pm  

    mmm
    muy raro, a mi si me sale, puede ser porque dede luego estan los dos instalados…
    tu que usas?

    MAPI.InfoStore

    ?

  • javier Says:
    October 20th, 2008 at 5:14 pm  

    Al menos tu pudistes poner ambos outlooks
    Yo me aguanto con uno.
    En fin

    No sabría decirte si uso MAPI.InfoStore o no… ya que se muy poco.
    pero si se que no sale Store en la librería 11 de OutLook 2003

  • Alexis Says:
    July 6th, 2010 at 10:06 am  

    He ejecutado el programa en C# de .net y me da errores, ademas no tengo la referencia 9.3 de Outlook, la que tengo es la 9.2

    Si pueden ayudarme

Deja un comentario

Redes Sociales

Follow @JuanKRuiz
Answer Questions

Busca en el blog

Artículos Relacionados

No hay artículos similares

Artículos Relacionados

No hay artículos similares

Nube de Temas

API - C# - codigo - Fiber - Forms - GeSHi - icon - icono - IE - IE9 - imagenes - IT - operativo - Pinned - PowerShell - Proceso - rendimiento - RSS - sistema - Sistemas Operativos - Site - stack - Thread - velocidad - Visual - WCF - Windows - WndProc - WPF - XNA

Blogs recomendados

  • VBCodigoPocketPC Espacio para tratar temas de programacion para dispositivos moviles, Pocket PC, Compact Framework, Embbeded Visual Basic, Visual Basic.NET , C# (C Sharp)
  • Róbinson Moscoso Estaré publicando acá cosas sobre tecnologia .NET, situacioines cotidianas de las que voy aprendiendo… sirve como extensión de memoria.
  • .Net C# Blog de Nelsón Venegas
  • Warnov Microsoft Developer Evangelist
  • IT LIfe Blog de mi Hermano que esta en el lado claro: IT
  • Sorey Garcia Una chica del común con la firme intención de no serlo
  • Black Byte videojuegos, modelado y animación 3d
  • Road to IT World Cosas interesantes de IT
  • Marcela Chitiva Un poco de esto… un poco de aquello
  • Surviving the Nigth El mejor blog para aquellos que nos gustan los “internals”
  • Meta

    1. Log in
    2. WordPress

    Ideas de un Conejo is powered by Wordpress. Theme designed by Juan Carlos Ruiz.