Office And Vsto 200

Preview:

DESCRIPTION

This slide deck is for developers who are interested in learning how to program Office using VSTO

Citation preview

Building Powerful Applications for the Microsoft Office System Using Microsoft Visual Studio Tools for the Microsoft Office System (VSTO)

MSDN EventsAutumn, 2008

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 in PowerPoint

Deployment, but not Security…

Demos, Demos, Demos…

Guidance on how to get smart on VSTO

Session Objectives And Agenda

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 2007 Microsoft Office system

is a unified solutions platform for building

Office Business Applications that make Line-of-

Business systems, enterprise data and workflows

accessible and relevant to users.

Visual Studio Tools for Office

AdventureWorks Excel

• 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

• Allows Developers to leverage their company’s investments in

the Office system

Visual Studio Tools for Office

enables developers to leverage Visual Studio and

the Microsoft Office platform to build scalable

line-of-business solutions based on Microsoft Office

Visual Studio Tools for Office

"Hello World" Word

Visual Studio Tools for Office Excel

Guided Tour

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 VSTO

2 Common Application Models

OM

MyCode

OM

MyCodeMyMenu

MyTaskPane

VSTO 2008 PowerPoint

Document Creation

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

Visual Studio Tools for Office (VSTO)

2005 Adventure Works Customer

Sales Dynamic Word Doc Creation

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)

2005 Excel Win32 Services

VSTO Roadmap

VSTO 2003

Document-level code behind

Brings Microsoft Office into the managed worldStrict security model

VSTO 2005Custom ActionsPane

Host Controls on doc surfaceCached Data in the documentServer-side data processing

App-level add-ins for Outlook

+ VSTO 2005 Second Edition

More App-level add-ins

Visual designers for key UI features

Workflow & Microsoft SharePoint supportData-bound Word Content Controls

App-level add-ins for most client programs

(both 2003 & 2007)Doc-level add-ins for Excel and Word 2007

ClickOnce deployment & security

Visual Studio 2008 (VSTO v3.0)

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

VSTO 2008 Excel WPF Custom

Orders Spreadsheet Creation

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

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.office

– MSDN 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?Famil

yID=f2323aaf-fe87-4203-9ed8-

72466566e105&displaylang=en

• VSTO 2005 Web casts

http://msdn.microsoft.com/office/understanding/vsto/multi

media/default.aspx

Resources

• VSTO Forum

– http://forums.microsoft.com/msdn/ShowForum.aspx?ForumID=1

6

• 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

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

Recommended