La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Visual Studio 2005 Tools per Office System: Supporto per Outlook e InfoPath Fabio Santini La nuova versione dei Visual Studio 2005.

Presentazioni simili


Presentazione sul tema: "Visual Studio 2005 Tools per Office System: Supporto per Outlook e InfoPath Fabio Santini La nuova versione dei Visual Studio 2005."— Transcript della presentazione:

1 Visual Studio 2005 Tools per Office System: Supporto per Outlook e InfoPath Fabio Santini La nuova versione dei Visual Studio 2005 Tools per Office introduce il supporto per Outlook ed estende quello già presente per Infopath. Durante questa sessione vedremo come costruire addins per Outlook e di come interagire con il suo modello ad oggetti per creare soluzioni che si integrino perfettamente con il proprio client di posta. Vedremo anche come estendere le funzionalità di InfoPath utilizzando al posto dello script il.NET Framework e Visual Studio 2005, che di fatto ci permetterà di avere a disposizione la semplicità duso di InfoPath e la potenza di.NET.

2 Agenda Visual Studio Tool for Office : Outlook add-ins Situazione attuale ArchitetturaDemo InfoPath Toolkit per Visual Studio Come funziona ? La gestione degli eventi Offline Submit

3 Visual Studio 2005 Tools for the Microsoft Office System (VSTO) Personalizzazione a livello di Documento Microsoft Excel 2003 Microsoft Word 2003 Microsoft InfoPath 2003 Add-ins a livello di applicazione Microsoft Outlook 2003 Supporto a Design-time (specifico per ogni app) Supporto a Runtime (uguale per tutte le app)

4 VSTO Outlook Add-ins

5 demo VSTO Hello Outlook Add-in

6 Problemi con Add-ins Managed Più modi per caricare un add-ins Unshimmed (lo standard) Shim semplice Shim COM privato Unshimmed add-ins non vanno bene soprattutto per la stabilità e la sicurezza Lo Shim COM è difficile da implementare e da distribuire Linterfaccia IDTExtensibility2 è complessa Outlook ha un problema

7 Unshimmed non è la scelta giusta Caricato nel DefaultDomain Tutti gli add-ins condividono lo stesso contesto di sicurezza Un mal funzionamento in un add-ins può compromettere tutti gli altri Non può essere scaricato dalla memoria Tutti gli add-ins sono registrati come MSCorEE Impossibile firmare MSCorEE.dll Poca sicurezza (trust su tutto )

8 Lo Shim COM è fragile Costruire un singolo componente COM per ogni add-in Non è supportato da MS Esempio scaricabile da MSDN con sorgenti Un Wizard per crearlo in automatico (genera codice sorgente) Il codice sorgente è in C++ Il codice sorgente è in C++ Ogni componente necessità di firma digitale se la sicurezza di Office è impostata ad High Il deployment è più complesso

9 Problemi con IDTExtensibility2 Utilizzata con Host diversi Non è strongly-typed OnConnection(… object o…) Excel.Application host = (Excel.Application)o; 5 metodi anche se normalmente se ne usano sempre 2 OnConnection inizializzazione OnAddInsUpdate NOP OnStartupComplete NOP OnBeginShutdown NOP OnDisconnection pulizia

10 Un problema con gli Add-ins in Outlook Paradosso del coccodrillo coccodrillo Perchè non ancora sistemato ? Diversi oggetti esterni mantengono un puntatore ad Outlook ed è quindi difficile gestire corretamente lo shutdown Lutente che lavora con linterfaccia grafica Exchange che invia le Active Sync Word come editor di Multi-oggetto ( , Calendar, Task, etc.) Outlook non chiama OnDisconnection se l add-ins mantiene un puntatore al suo OM L Add-ins mantiene un puntatore all OM di Outlook fino a quando non riceve levento OnDisconnection Difficile consistenza tra il modello di reference counting di COM e la garbage collection di.NET

11 Le opportunità Molte persone vivono in Outlook I task e le spesso sono una parte integrale di processi di business nei workflow documentali Il desiderio di avere un unico front-end a fronte di molti sistemi di back-end Interfaccia grafica già conosciuta

12 Soluzione: VSTO per Outlook Add-in Un shim supportato Utilizza il runtime VSTO runtime Isolamento degli AppDomain Sicurezza separata per ogni add-ins Installazioni e Aggiornamenti tramite Manifest Modello di sicurezza.NET Risolto il problema di Outlook Nuovo progetto Visual Studio Snippets, esempi di codice, whitepaper

13 VSTO Add-in Architecture

14 VSTO AddinLoader (Load)

15 Registro

16 Add-in Manifests

17 IDTExtensibility2 IStartup Caricamento Add-in Metodi IDTExtensibility2 Implementazione tipica Metodo IStartup OnBeginShutdown- OnDisconnection Rilascio puntatori Shutdown Scaricamento Add-in Metodi IDTExtensibility2 Implementazione tipica Metodo IStartup OnConnectionInizializzazioneStartup OnAddInsUpdate- OnStartupComplete-

18 VSTO AddinLoader (Unload)

19 demo Un esempio completo

20 Agenda InfoPath e i Visual Studio Tools for Office La gestione degli eventi Offline Submit

21 Programmare InfoPath La maggior parte delle form non richiede codice XML Schema Rules Formulas Data Validation Data Connections Conditional Formatting C# VB.NET

22 Requisiti Sviluppatori Visual Studio.NET 2003 o 2005 Beta 2 o 2005 RC InfoPath 2003 SP1 InfoPath Toolkit per Visual Studio (Macros) Macros Visual Studio.NET 2003 (Download) Download Visual Studio 2005 Beta 2 (Download o CD) DownloadCDDownloadCD Visual Studio 2005 RC (MSDN) Utente finale.NET Framework 1.1 o 2.0 Beta 2 InfoPath 2003 SP1

23 InfoPath e Visual Studio

24 Form Template Sorgenti (CS, VB) Definizione progetto (*PROJ) File del Form Template Progetto Visual Studio Assembly (DLL and PDB) Definizione Template (XSF) Data di default (XML) Schema (XSD) Viste (XSLT) Form Template InfoPath (XSN) Pubblica / Preview Dati della form Utente inserisce i dati nella form.XML

25 Gli eventi Open Edit Submit Close Utente C# VB.NET Gestione Eventi OnLoad OnAfterChange OnValidate OnBeforeChange OnClick Eventi OnSubmitRequest Altri eventi

26 hours Gli eventi durante lediting status issues items item rate source OnAfterChange(DataDOMEvent e) Bubbling Event Handler XMLDOM

27 Gli eventi durante lediting status issues Site item rate Source OnAfterChange(DataDOMEvent e) Bubbling Bubbling nasconde la sorgente dellevento e.Site per chi ha gestito levento e.Source dove realmente è stato scatenato levento Gli eventi arrivano 2 volte! Usare e.Operation Controllare Insert Event Handler XMLDOM

28 Gestire gli eventi

29 Offline Submit e caching Offline Submit (Esempi MSDN, Blog) Esempi MSDNBlogEsempi MSDNBlog Submit Online: usare DataAdapter Submit Offline: usare IsolatedStorage On Load: Fare submit dei dati presenti nell IsolatedStorage Offline sorgenti secondarie Online: DataAdapter verso IsolatedStorage Offline: Caricare dall IsolatedStorage

30 Lavorare offline

31 Resources VSTO Team Blogs: VSTO Outlook Add-in: …thru… Mads Blog:

32 Community Resources Microsoft Community Resources Non-Microsoft Community Resources Newsgroups Converse online with Microsoft Newsgroups, including Worldwide spx spx spx User Groups Meet and learn with your peers px px px Attend a free chat Attend a free web cast Most Valuable Professional (MVP)

33 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.

34 Paradosso del coccodrillo Un coccodrillo aveva afferrato un bambino che stava giocando sulle rive del Nilo. La madre imploro' il coccodrillo di restituirglielo. "Certo" disse il coccodrillo. "Se sai dirmi in anticipo esattamente cio' che faro', ti restituiro' il piccolo; pero', se non indovinerai, lo mangero' per pranzo". "Oh" disse la madre piangendo disperata, "tu divorerai il mio bambino". L'astuto coccodrillo ribatte': "Non posso ridarti il bambino, perche', se te lo rendo,faro' si' che tu abbia detto il falso, e ti avevo garantito che se tu avessi detto il falso, lo avrei divorato". "Le cose stanno esattamente al contrario", rispose astuta la madre. "Non puoi mangiare il mio bambino perche', se lo divori, farai si' che io abbia detto la verita' e tu avevi promesso che, se io avessi detto la verita', avresti restituito il bambino. So che sei un coccodrillo d'onore e che mantieni la parola data". back


Scaricare ppt "Visual Studio 2005 Tools per Office System: Supporto per Outlook e InfoPath Fabio Santini La nuova versione dei Visual Studio 2005."

Presentazioni simili


Annunci Google