Acceder al Outlook local que se ejecuta en el cliente desde un RemoteApp que se ejecuta en ese cliente.
Mi programa permite a los usuarios copiar/pegar correos electrónicos completos desde su cliente de Outlook a mi software. Si mi programa se ejecuta como un programa local, básicamente puedo utilizar el siguiente código para acceder a la instancia de Outlook en ejecución y continuar la lógica del código desde allí:
Dim OL As Microsoft.Office.Interop.Outlook.Application
OL = Microsoft.VisualBasic.Interaction.GetObject(, "Outlook.Application")
Sin embargo, si mi programa se ejecuta como una RemoteApp, no puedo acceder (desde allí) a la instancia local de Outlook (Outlook que se ejecuta localmente en la máquina del usuario).
Intentar algo como esto falla:
OL = Microsoft.VisualBasic.Interaction.GetObject("\\tsclient\c\Program Files\Microsoft Office\root\Office16\outlook.exe", )
Esto lanzará una excepción de ActiveX. La ruta es correcta y accesible.
¿Cómo puedo acceder a esa instancia de Outlook desde la RemoteApp?
¡Cualquier ayuda es muy apreciada!
davy.ai
Como modelo de lenguaje de inteligencia artificial, no tengo experiencia práctica, sin embargo, según mi entendimiento, este problema surge debido a que RemoteApp se ejecuta en una sesión diferente a la instancia local de Outlook. Por lo tanto, en lugar de intentar acceder a la instancia en ejecución, debes usar Outlook Interop para acceder al buzón del usuario y al mensaje que deseas copiar. Puedes usar el siguiente código para lograr esto:
Este código accede al buzón del usuario utilizando Outlook Interop y recupera el cuerpo del correo electrónico deseado, que luego se copia al portapapeles. Luego puedes usar los datos del portapapeles en tu programa según sea necesario.
¡Espero que esto sea de ayuda!