session code: iw-02 building powerful applications for the microsoft office system using microsoft...
TRANSCRIPT
Session Code: IW-02
Building Powerful Applications for the Microsoft Office System Using Microsoft Visual Studio Tools for the Microsoft Office System (VSTO)
Tim Huckaby
CEO, InterKnowlogy
Microsoft RD & MVP
About…
• InterKnowlogy (www.InterKnowlogy.com)
● Custom Application Development / Consulting / Software & Systems Engineering Firm headquartered in Carlsbad, CA
● Design, Architect, Build and Deploy Enterprise Class Applications ● Industry Experts:
• Most of the employees are published• Microsoft .NET Application development since 2000!• Microsoft .NET Smart Client pioneers / industry leaders• Information Worker Solutions (VSTO & SharePoint)• Integration / Messaging, B2B / B2C, Wireless / Mobility • Leading Edge: Surface, WPF, Silverlight, SharePoint, OBA, Surface• Cutting Edge Solutions on emerging Microsoft technologies• Largest Client: Microsoft
Designing, Building and Deploying Smart Client Applications on VSTO 2003, 2005, 2005SE, 2008 (1.0, 2.0 & 2.5, 3.0)
Document-centric solutions in Word and Excel
Add-in Solutions
Deployment, but not Security…
Demos, Demos, Demos…
Guidance on how to get smart on VSTO
That was then…
This is now…
• Consists of clients, servers, services and tools• Provides a single infrastructure for
– Communication & collaboration– Business Intelligence– Content management solutions
• Enables developers to bridge information gap between users and data in back-end enterprise systems – SQL Server, SAP, ERP, CRM, etc.
The The 2007 Microsoft Office system2007 Microsoft Office systemis a unified solutions platform for buildingis a unified solutions platform for building
Office Business Applications that make Line-of-Office Business Applications that make Line-of-Business systems, enterprise data and workflows Business systems, enterprise data and workflows
accessible and relevant to users.accessible and relevant to users.
8
Visual Studio Tools for Office (VSTO) 2003 (1.1)
AdventureWorks Excel Demo
Tim HuckabyCEO, InterKnowlogyMicrosoft RD & MVP
• Makes Office a valuable, first-class project type in Visual Studio• Enables developers to create & extend Office Business Applications• Enables developers to leverage key Office UI features and support
collaboration and workflow• Provides Office developers with the benefits and advantages of the
Visual Studio professional development environment • Enables developers to leverage existing programming skills• Developers can leverage their company’s current investment in
Office 2003 Pro and new investment in 2007 Office system
Visual Studio Tools for OfficeVisual Studio Tools for Office enables developers to leverage Visual Studio andenables developers to leverage Visual Studio and
the Microsoft Office platform to build scalablethe Microsoft Office platform to build scalableline-of-business solutions based on Microsoft Office line-of-business solutions based on Microsoft Office
10
Visual Studio Tools for Office (VSTO) 2005 "Hello World" Word
Demo
Tim HuckabyCEO, InterKnowlogyMicrosoft RD & MVP
VSTO Deployment Model
• Separation of document, code and assembly – Code is part of a Visual Studio project– Only the assembly is deployed with the document
• Assembly is “linked” to the document– VSTO 2003: Custom properties– VSTO 2005+: App manifest embedded in document
Office Application Solutions (Add-In)
Document-Centric Solutions
Office Client Development with VSTO2 Common Application Models
OM
MyCodeMyCode
OM
MyCodeMyCode MyMenu
MyMenu
MyTaskPaneMyTaskPane
13
Visual Studio Tools for Office (VSTO) 2005 Excel Guided Tour
Tim HuckabyCEO, InterKnowlogyMicrosoft RD & MVP
Key VSTO Features• Visual designers for key UI features
• Workflow & Microsoft SharePoint Support
• Data binding in Word Content Controls
• Application-level add-ins for most Office client apps (both 2003 & 2007)
• Document-level add-ins for Excel & Word 2007
• Improved deployment and security
The ActionsPane
• Document Actions task pane– Specific task pane available to document customizations
(new in Word and Excel 2003+)
• ActionsPane– Programmable object exposed by VSTO 2005 from
Excel Workbook and Word Document classes– Fully encapsulates an implementation of
ISmartDocument– Provides a Windows Forms-based programming model
for accessing the Document Actions task pane
Visual Studio Tools for Office (VSTO) 2003 (1.1)AdventureWorks Excel Demo
VSTO Roadmap
VSTO 2003VSTO 2003 Document-level code behind Brings Microsoft Office into the managed world Strict security model
VSTO 2005VSTO 2005 Custom ActionsPane Host Controls on doc surface Cached Data in the document Server-side data processing App-level add-ins for Outlook
+ VSTO 2005 Second + VSTO 2005 Second EditionEdition
More App-level add-ins
Visual designers for key UI featuresWorkflow & Microsoft SharePoint supportData-bound Word Content ControlsApp-level add-ins for most client programs (both 2003 & 2007)Doc-level add-ins for Excel and Word 2007ClickOnce deployment & security
Visual Studio 2008 (VSTO v3.0)Visual Studio 2008 (VSTO v3.0)
17
Visual Studio Tools for Office (VSTO) 2005 Adventure Works Customer
Sales Dynamic Word Doc Creation
Tim HuckabyCEO, InterKnowlogyMicrosoft RD & MVP
VSTO Versions & Roadmap• VSTO 2003 (version 1.0)
– Office 2003 with .NET 1.1
• VSTO 2005 (version 2.0)– Office 2003 with .NET 2.0
• VSTO 2005 SE (version 2.5)– Office 2007 with .NET 2.0 & 3.0
• VSTO 2008 (version 3.0)– Office 2007 with .NET 3.5
Deployment Models
Local/LocalLoading document does not require network access
Users have to install solution
Users have personal copy of document
Updates require redistribution
Local/NetworkLoading document generally requires network access
Users have personal copy of document
Assembly updates can be made in a central location
Document updates require redistribution
Network/NetworkLoading document generally requires network access
Users share document instance
Updates can be made in a central location
20
Visual Studio Tools for Office (VSTO) 2005 Excel Win32
Services
Tim HuckabyCEO, InterKnowlogyMicrosoft RD & MVP
Product Team Blogs• Eric Carter: .NET4Office
http://blogs.msdn.com/eric_carter/• Peter Torr: Office Development, Security, Randomness…
http://blogs.msdn.com/ptorr/• Eric Lippert: Fabulous Adventures in Coding
http://blogs.msdn.com/EricLippert • Paul Stubbs: Office Development with .NET
http://blogs.msdn.com/pstubbs/• VSTO Team Blog
http://blogs.msdn.com/vsto/
Newsgroups• VSTO
microsoft.public.vsnet.vstools.officeMSDN Forums: VSTO http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=16&SiteID=1
.
Additional Information• MSDN Developer Centers
– VS.NET and Office Development http://msdn.microsoft.com/vstudio/office/
– Office Development http://msdn.microsoft.com/office
• Hands-on Labs for VSTO 2005 http://www.microsoft.com/downloads/details.aspx?FamilyID=f2323aaf-fe87-4203-9ed8-72466566e105&displaylang=en
• VSTO 2005 Web casts http://msdn.microsoft.com/office/understanding/vsto/multimedia/default.aspx
Resources• VSTO Forum
– http://forums.microsoft.com/msdn/ShowForum.aspx?ForumID=16
• VSTO-related blogs– VSTO-related Blog Search –
http://search.live.com/macros/pstubbs/vsto – Office Zealot Site –
http://www.officezealot.com/VSTO/bloghome.aspx
For More Information• Visit the VSTO Developer Center
– http://msdn.microsoft.com/office/tool/vsto/default.aspx
• VSTO Help documentation on MSDN– http://msdn2.microsoft.com/library/d2tx7z6d(en-
us,vs.80).aspx
Office Object Model Reference
• Excel Object Model Referencehttp://msdn.microsoft.com/en-us/library/bb149081.aspx
• Outlook Object Model Referencehttp://msdn.microsoft.com/en-us/library/bb176619.aspx
• PowerPoint Object Model Referencehttp://msdn.microsoft.com/en-us/library/bb251394.aspx
• Visio Automation Object Model Referencehttp://msdn.microsoft.com/en-us/library/aa730930.aspx
• Word Object Model Referencehttp://msdn.microsoft.com/en-us/library/bb244515.aspx
Summary
• VSTO is the key enabler for the .NET stack to build Office Business Applications– Connect documents to live business data– Provide structure using XML Schemas – Provide deeper UI integration using the
Document Actions task pane
• VSTO is the tool of choice for professional developers creating Add-ins & document-centric solutions for the Office Stack– Integrated design-time experience– Developer productivity through programming
model enhancements– All the power of Visual Studio and the .NET Framework
Tim Huckaby, InterKnowlogy
• More info on InterKnowlogy:– www.InterKnowlogy.com
• Contact me: Tim Huckaby
– E-mail: [email protected] [email protected]
– Phone: 760-444-8640– Blog: http://blogs.InterKnowlogy.com/TimHuckaby
• About Tim Huckaby– CEO, InterKnowlogy– Microsoft® Regional Director – Southern California– Microsoft® .NET Partner Advisory Council Founder / Member– Microsoft® MVP - .NET– Microsoft® Surface Partner Advisory Council– INETA Speaker – International .NET Users Group Association– Windows and .NET Magazine Advisory Board Member– .NET Developers Journal Magazine Advisory Board Member– Author / Speaker
Evaluation form
Vul je evaluatieformulier in en maak kans op een van de prachtige prijzen!!
Fill out your eveluation form and win one of the great prizes!!
Session Code: <IW02>