1
Programación Web / Ayuda con asp.net
« en: Diciembre 01, 2011, 11:48:52 am »
Necesito hacer una web que lea los eventos del calendario de Outlook y los muestre en una pantalla de plasma (espero con un web browser, sino en un pc con la salida a la pantalla). Habia pensado en hacerla en ASP, pero no tengo mucha idea. Aunque me va a venir bien para aprender un poco. De momento saque algun codigo de la red y lo fui modificando. Este codigo supuestamente saca los items de inbox y los muestra en una pagina web:
Esta en C# (simplemente porque lo encontre asi, no me importa usar vb) pero al ejecutarlo me da el siguiente error:
The Type or namespace name 'outlook' could not be found (are you missing a using directive or an assembly reference?)
Tengo instalado el Office 2010 y el Visual Studio 2008. El office tenia instalado el 2007 y lo actualice a 2010. En el sistema tengo instalado el microsoft.office.interop.outlook, pero quizas no lo tengo bien configurado en el visual studio, no lo se.
Si alguien me puede ayudar se lo agradezco.
Código: [Seleccionar]
using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using outlook;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Outlook.Application oOutlook;
Outlook.NameSpace oNs;
Outlook.MAPIFolder oFldr;
long iAttachCnt;
try
{
oOutlook = new Outlook.Application();
oNs = oOutlook.GetNamespace("MAPI");
//getting mail folder from inbox
oFldr = oNs.GetDefaultFolder(OlDefaultFolders.olFolderInbox);
Response.Write("Total Mail(s) in Inbox :" + oFldr.Items.Count + "<br>");
Response.Write("Total Unread items = " + oFldr.UnReadItemCount);
foreach (Outlook.MailItem oMessage in oFldr.Items)
{
StringBuilder str = new StringBuilder();
str.Append("<table style=’border:1px solid gray;font-family:Arial;font-size:x-small;width:80%;’ align=’center’><tr><td style=’width:20%;’><b>Sender :</b></td><td>");
str.Append(oMessage.SenderEmailAddress.ToString() + "</td></tr>");
//basic info about message
str.Append("<tr><td><b>Date :</b></td><td>" + oMessage.SentOn.ToShortDateString() + "</td></tr>");
if (oMessage.Subject != null)
{
str.Append("<tr><td><b>Subject :</b></td><td>" + oMessage.Subject.ToString() + "</td></tr>");
}
//reference and save all attachments
iAttachCnt = oMessage.Attachments.Count;
if (iAttachCnt > 0)
{
for (int i = 1; i <= iAttachCnt; i++)
{
str.Append("<tr><td><b>Attachment(" + i.ToString() + ") :</b></td><td>" + oMessage.Attachments[i].FileName + "</td></tr>");
}
}
str.Append("</table><br>");
Response.Write(str.ToString());
}
}
catch (System.Exception ex)
{
Response.Write("Execption generated:" + ex.Message);
}
finally
{
GC.Collect();
oFldr = null;
oNs = null;
oOutlook = null;
}
}
}Esta en C# (simplemente porque lo encontre asi, no me importa usar vb) pero al ejecutarlo me da el siguiente error:
The Type or namespace name 'outlook' could not be found (are you missing a using directive or an assembly reference?)
Tengo instalado el Office 2010 y el Visual Studio 2008. El office tenia instalado el 2007 y lo actualice a 2010. En el sistema tengo instalado el microsoft.office.interop.outlook, pero quizas no lo tengo bien configurado en el visual studio, no lo se.
Si alguien me puede ayudar se lo agradezco.


. Pregunta que os quería hacer... ¿Hay alguna clave en el registro de windows que asocie una extension a un programa? Ejemplo, algo que asocie los mp3 con winamp por ejemplo. Estoy seguro que si, pero por mas que googleo y miro una y otra vez el registro no lo encuentro.
) y segun entro en mi puesto de trabajo la primera en la frente. Me piden a ver si hay alguna forma de, al iniciar el Word, aparezca una ventana, o un form o algo que tenga un combobox o un listbox en donde se pueda seleccionar una lista de templates que hay en una carpeta ya creada. Aun por encima me dicen que ya lo consiguieron en la sede en Bruselas, que a ver que puedo hacer. Es muy importante que lo consiga, de esto depende en gran medida que me quede en la empresa.