1 / 30

Haciendo visible el camino a .NET IV Encuentro de programadores Microsoft & Danysoft

Clientes inteligentes Extensiones .NET de Office - VSTO Octavio Hernández | Danysoft. Haciendo visible el camino a .NET IV Encuentro de programadores Microsoft & Danysoft. Agenda del día. Introducción Presentación de VSTO Creación de proyectos Excel y Word Consideraciones de despliegue

tom
Download Presentation

Haciendo visible el camino a .NET IV Encuentro de programadores Microsoft & Danysoft

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Clientes inteligentesExtensiones .NET de Office - VSTOOctavio Hernández | Danysoft Haciendo visible el camino a .NETIV Encuentro de programadores Microsoft & Danysoft

  2. Agenda del día • Introducción • Presentación de VSTO • Creación de proyectos Excel y Word • Consideraciones de despliegue • Consideraciones de seguridad • Demostración práctica • Conclusiones

  3. Introducción

  4. Situación actual Aplicaciones web • Facilidad de instalación y mantenimiento • Multi-plataforma • Impacto en el cliente Aplicaciones Windows • Interfaz de usuario más rica • Acceso a recursos locales • Trabajo desconectado Office es el cliente rico más utilizado • Herramientas productivas y fáciles de usar • Problemas potenciales de mantenimiento, despliegue y seguridad .NET Framework • Potencia y flexibilidad del cliente ‘rico’ • Facilidad de despliegue y estabilidad del modelo basado en navegador

  5. VSTO

  6. Visual Studio Tools for Office • Permite a los desarrolladores utilizar MS Office como plataforma para el desarrollo y despliegue de soluciones de negocio, aprovechando toda la potencia de .NET y VS.NET. • Permite el desarrollo de clientes ricos para Office: • Seguros • Más fiables • Más potentes • Más fáciles y rápidos de desarrollar • Más fáciles de actualizar

  7. Visual Studio Tools for Office • Extiende el desarrollo .NET a las soluciones de negocio basadas en Office • Permite a los desarrolladores de C# y VB.NET utilizar VS.NET para asociar código a hojas Excel y documentos Word • Código separado del documento para simplificar el despliegue y mantenimiento • Utiliza la seguridad que ofrece .NET

  8. Requisitos para la instalación • NET Framework v 1.1 • VS.NET 2003 Profesional o superior • Ayuda MSDN • Microsoft Office 2003 Profesional • Ensamblados primarios de interoperabilidad (P.I.A.) para Excel, Word, Forms, Graph • VSTO

  9. Creación de proyectos Excel y Word

  10. Principales características • Plantillas de proyectos C# y VB.NET • Hoja Excel, documento y plantilla Word • Asistente de Proyectos Office • Puede utilizar un documento existente o crear uno nuevo • Hace referencia a los PIAs correspondientes al tipo de proyecto • Genera automáticamente el código para inicializar el proyecto y disparar los eventos de la aplicación Office • Crea la configuración de seguridad necesaria para la ejecución en la máquina de desarrollo

  11. Características de un proyecto VSTO Referencias a ensamblados Imports System.Windows.Forms Imports Office = Microsoft.Office.Core Imports Excel = Microsoft.Office.Interop.Excel Imports MSForms = Microsoft.Vbe.Interop.Forms ' Atributo de integración con Office. Identifica la clase inicial del documento. <Assembly: System.ComponentModel.DescriptionAttribute( _ "OfficeStartupClass, Version=1.0, Class=SampleXLProject.OfficeCodeBehind")> Public Class OfficeCodeBehind Friend WithEvents ThisWorkbook As Excel.Workbook Friend WithEvents ThisApplication As Excel.Application Private Sub ThisWorkbook_Open() Handles ThisWorkbook.Open Dim sheet1 As Excel.Worksheet = CType(ThisWorkbook.Worksheets(1), Excel.Worksheet) Dim rng As Excel.Range = sheet1.Range("A1") rng.Value = "Hello World!" End Sub Private Sub ThisWorkbook_BeforeClose(ByRef Cancel As Boolean) _ Handles ThisWorkbook.BeforeClose Cancel = False End Sub End Class Atributo para integración Office Variables Documento y Aplicación Eventos Open (New) y Close

  12. Componentes de un proyecto VSTO • Dos componentes: • Un documento Office que actúa como “front end” de la solución • Un ensamblado (code-behind DLL) que contiene el código compilado del proyecto • Un ensamblado por documento • El ensamblado se enlaza al documento mediante propiedades personalizadas • _AssemblyName0 • _AssemblyLocation0 • Ruta local, UNC o HTTP relativa o absoluta

  13. Carga del código • Cargador incorporado en Word y Excel • Cuando se abre el documento • El cargador busca las propiedades personalizadas • Se carga el CLR dentro del proceso • Se trae a memoria el código • Si el documento y el código son de confianza, el código es activado

  14. Custom Props? Trusted doc? Usuario abre documento SI Cargar CLR NO NO SI STOP ERROR STOP Crear AppDomain ERROR Trusted code? Disparar evento New/Open Conectar eventos SI Traer assembly ERROR NO ERROR Descargar AppDomain STOP Carga del código (2)

  15. Consideraciones de despliegue

  16. Elementos básicos • Requisitos para las máquinas clientes • Office 2003 Profesional • .NET Framework 1.1 • Las PIAs referenciadas por el ensamblado • Políticas de seguridad apropiadas

  17. Local / Local Despliegue Local/Local • A favor: • No se requiere acceso a la red • Los usuarios pueden modificar el documento • En contra: • Las actualizaciones al documento o ensamblado requieren la redistribución a cada usuario

  18. Despliegue Local/Red • A favor: • Las actualizaciones al ensamblado se simplifican • Los usuarios pueden modificar y personalizar el documento • En contra: • Las actualizaciones al documento requieren la redistribución a cada usuario Local / Red

  19. Red / Red Despliegue Red/Red • A favor: • Las actualizaciones al ensamblado y al documento se simplifican • En contra: • Los usuarios no pueden modificar o personalizar los documentos maestros

  20. Acceso offline al ensamblado • Los ensamblados que se despliegan a través de la red mediante direcciones http:// o https:// pueden beneficiarse de la funcionalidad de caché del Internet Explorer • Esto permite a los documentos locales utilizar un ensamblado cacheado cuando la red no esté disponible

  21. Consideraciones de seguridad

  22. Confianza del código • El CLR sólo ejecuta código de confianza • Por defecto, el código local es fiable • El código descargado de Internet se ejecuta con confianza parcial, a menos que se indique explícitamente que el sitio es de confianza. • Cuando el código obtiene permiso de ejecución, se ejecuta con los permisos del usuario • Pero es necesario protegerse de los ataques basados en que se ejecute código cuando los usuarios abran un documento

  23. Confianza del código (2) • VSTO redefine la política de seguridad por defecto del CLR. • El ensamblado requiere la asignación explícita de confianza total (FullTrust) • Política a nivel de usuario, si está en la máquina local • Política a nivel de máquina, si está en la red

  24. Confianza de los documentos • La confianza de los documentos también debe ser explícita • Esto ayuda a prevenir la reutilización maliciosa del código de confianza • Si el documento está: • En la máquina local – no se necesita una política • Enviado por e-mail – no es de confianza • En la red – se requiere una política de FullTrust a nivel de máquina para el documento. Se debe utilizar MSOSEC.DLL.

  25. Configuración de políticas • Se deben configurar las políticas de seguridad en cada máquina en la que la extensión gestionada de Office será cargada • Mecanismos para asignar los permisos: • Caspol.exe (línea de comandos) • Herramienta de configuración de .NET Framework • Despliegue con Windows Installer, SMS, etc.

  26. Conclusiones

  27. Conclusiones • VSTO permite extender el desarrollo .NET a Office 2003 • Los desarrolladores que utilicen VS.NET podrán crear ensamblados code-behind para hojas de Excel y documentos Word • El código está separado del documento, lo que simplifica el despliegue y mantenimiento • Se aprovecha la mayor seguridad que garantiza .NET Framework

  28. Novedades en VS2005 • Diseñador visual integrado en Visual Studio 2005 • Posibilidad de embeber controles de Windows Forms en documentos de Excel y Word • “Controles de vista”, para ser arrastrados sobre documentos Office en tiempo de diseño • Objeto ActionsPane, para crear paneles de tareas personalizados para documentos Office • Enlace a datos ADO.NET • “Islas” de datos, que hacen posible escenarios offline • Clase ServerDocument, que hace posible la programación del lado del servidor

  29. Más información • Danysoft • Información y artículos, www.danysoft.com • Servicios Profesionales, sp@danysoft.com • Software, utilidades, licencias y libros: www.danyshop.com , info@danysoft.com • VSTO • Sitio web sobre VSTO, msdn.microsoft.com/vstudio/office/ • Sección en SmartClient Developer Center, msdn.microsoft.com/smartclient/

  30. ¡Gracias por su asistencia! Para cualquier consulta, no dude en contactar con Danysoft: Servicios Profesionales: 902 343484 | sp@danysoft.com Software, utilidades y licencias: 902 123146 | info@danysoft.com www.danysoft.com

More Related