Compartir a través de


Problemas conocidos de Outlook 2010 al usar el modelo de objetos

Número de KB original: 2265515

Resumen

En este artículo se describen los problemas conocidos que pueden producirse al usar el modelo de objetos de Microsoft Outlook 2010.

No se puede crear el objeto Outlook.Application a partir de un proceso con privilegios elevados

No se puede automatizar Outlook mediante un proceso que se ejecuta con permisos elevados en Windows Vista, en Windows 7 o en cualquier otro sistema operativo que permita ejecutar procesos con permisos elevados. Se trata de una limitación subyacente del COM. Tanto Outlook como programas personalizados que automatizan Outlook deben ejecutarse en el mismo nivel de integridad.

Los eventos BeforeItemMove y BeforeFolderMove no se producen

Hay varios escenarios en los que los eventos BeforeItemMove y BeforeFolderMove no se producen. Entre los escenarios conocidos se incluyen la eliminación de citas de la barra De tareas pendientes, la eliminación de reuniones del calendario y la barra de tareas pendientes, la implementación de los eventos en carpetas no predeterminadas y la eliminación de elementos mediante el comando Omitir conversación. Estos problemas se han corregido en la actualización acumulativa de diciembre de 2010 para Outlook 2010.

Error en el método GetProperty en modo en línea

Si usa Microsoft Exchange 2010 en modo en línea y usa el GetProperty método para recuperar una propiedad de un elemento no guardado, es posible que se produzca un error en el método. Esto se debe a un cambio en la forma en que Exchange 2010 controla las propiedades con nombre. Outlook 2007 también se ve afectado. Las soluciones alternativas actuales incluyen las siguientes:

  • Usar Outlook en modo almacenado en caché.
  • Asegúrese de que el elemento está en un estado guardado antes de llamar al GetProperty método .

Es posible que la ventana del inspector no se cierre correctamente.

Si implementa la GetVisibleCallback función en Microsoft Visual Studio Tools para Microsoft Office (VSTO), es posible que el usuario no pueda cerrar correctamente una ventana del inspector. Este problema se corrigió en la actualización acumulativa de febrero de 2011 para Outlook 2010.

El evento BeforeCheckNames se produce en un momento diferente al que se produce en Outlook 2007

En Outlook 2010, el evento BeforeCheckNames se produce después de que los destinatarios se resuelvan en lugar de antes de resolverlos. Esto significa que cancelar el evento no tiene ningún efecto. Este problema se corrigió en la actualización acumulativa de Outlook 2010 de febrero de 2011.

Es posible que el modelo de objetos de vistas no se corresponda con la vista real en la interfaz de usuario.

Hay escenarios en los que, si cambia las vistas mediante programación o recupera la configuración de la vista, es posible que la configuración del modelo de objetos no se corresponda con la configuración de vista real que Outlook muestra en la interfaz de usuario. Se realizaron mejoras en la actualización acumulativa de Outlook 2010 de febrero de 2011 para resolver este problema.

Los datos adjuntos no se mantienen correctamente cuando se usa la ventana Insertar elemento

Si usa el modelo de objetos de Outlook para agregar y quitar datos adjuntos, es posible que tenga datos adjuntos adicionales si un usuario inserta datos adjuntos de un elemento mediante el comando Insertar elemento. Esto se debe a un error en la forma en que el cuadro de diálogo trata todos los datos adjuntos como sospechosos incluso si no son sospechosos. Por lo tanto, los datos adjuntos adicionales se guardan junto con el mensaje. Este problema se corrigió en la actualización acumulativa de febrero de 2010 para Outlook 2010.

No se pueden insertar adjuntos de elementos mediante una cuenta POP/IMAP

Si usa el Attachments.Add método para agregar datos adjuntos de elementos de Outlook mediante una cuenta POP/IMAP, se produce un error en la llamada. Este problema se corrigió en la actualización acumulativa de diciembre de 2010 para Outlook 2010.

MailItem.Recipients.ResolveAll la función quita los destinatarios del campo To

Si el usuario agrega un destinatario sin resolver a un mensaje en modo de redacción y, a continuación, se llama al método Recipients.ResolveAll para ese elemento, se quitan los destinatarios. No hay planes para cambiar este comportamiento.

Se produce un error en el GetAssociatedAppointment método para una convocatoria de reunión en la carpeta Elementos enviados.

Si intenta recuperar una cita de una convocatoria de reunión en la carpeta Elementos enviados, se produce un error en la llamada. Este problema se corrigió en la actualización acumulativa de febrero de 2011 para Outlook 2010.

Es posible que los datos de la cita no se actualicen si se abre una ventana del inspector

Debido a cambios internos en la forma en que Outlook 2010 controla y almacena en caché las citas, es posible que el modelo de objetos no proporcione información actualizada sobre las excepciones a las citas si la cita correspondiente está abierta en una ventana del inspector. Este comportamiento se produce incluso si se desreferencia y se recupera nuevamente el artículo de la tienda. Para solucionar este problema, asegúrese de que la ventana de citas está cerrada. No hay planes para cambiar este comportamiento.

Si intenta obtener el objeto Folder de un NavigationFolder objeto, puede recibir un mensaje de error "Error de operación". Este problema se produce con las características de carpeta del calendario compartido que son nuevas en Outlook 2010. Recuperar el NavigationFolder.Folder objeto antes de que Outlook haya inicializado hace que se produzca este problema. Esta inicialización no tiene lugar de forma predeterminada. Para solucionar este problema, primero haga referencia a la carpeta de calendario predeterminada y llame al GetExplorer método . Esto hace que Outlook inicialice indirectamente los calendarios compartidos. En el siguiente ejemplo de código de Outlook VBA se muestra este problema y la solución alternativa:

Sub GetCalendars()
  ' Work around
  Set oCalFolder = Session.GetDefaultFolder(olFolderCalendar)
  Set oCalExp = oCalFolder.GetExplorer

  Dim oModules As Outlook.CalendarModule
  Dim oMyCalendarGroup As Outlook.NavigationGroup
  Dim oPeopleNavGroup As Outlook.NavigationGroup
  Set oModules = ActiveExplorer.NavigationPane.Modules.GetNavigationModule(OlNavigationModuleType.olModuleCalendar)
  Set oMyCalendarGroup = oModules.NavigationGroups.GetDefaultNavigationGroup(OlGroupType.olMyFoldersGroup)
  Set oPeopleNavGroup = oModules.NavigationGroups.GetDefaultNavigationGroup(OlGroupType.olPeopleFoldersGroup)
  GetNavFolders oMyCalendarGroup
  GetNavFolders oPeopleNavGroup
End Sub

Private Sub GetNavFolders(ByVal obj As Outlook.NavigationGroup)
  Set oNavFolders = obj.NavigationFolders
  Dim oNavFolder As Outlook.NavigationFolder
  For Each oNavFolder In oNavFolders
    Debug.Print oNavFolder.DisplayName & "==>" & oNavFolder.Folder ' <-- this errors
  Next
End Sub