It’s always better live. MSDN Events
Developer Productivity Improvements with
Visual Studio 2008 and Office Business Applications
What Will We cover?
Overview of Visual Studio Tools for Office (VSTO)ArchitectureNew built in add-ins
Level 300
Helpful Experience
Developing Visual Studio ApplicationsMicrosoft Office and Office Business Applications
Agenda
Office As A Developer PlatformThe “Results Gap” with LOB AppsOffice Business ApplicationsVSTO Overview
SharePoint WorkFlow ToolsRibbon DevelopmentCustom Task PaneClickOnce Deployment
Office as a Developer Platform
Familiar user interface500+ million users worldwideOffice Open XML file formatsMicrosoft Office SharePoint Server 2007
Enabling collaborationPortalsEnterprise searchEnterprise content managementBusiness process supportBI delivery platform
Agenda
Office As A Developer PlatformThe “Results Gap” with LOB AppsOffice Business ApplicationsVSTO Overview
SharePoint WorkFlow ToolsRibbon DevelopmentCustom Task PaneClickOnce Deployment
LOB Apps
The “Results Gap”
LOB Apps
OfficeBusiness
Applications
Agenda
Office As A Developer PlatformThe “Results Gap” with LOB AppsOffice Business ApplicationsVSTO Overview
SharePoint WorkFlow ToolsRibbon DevelopmentCustom Task PaneClickOnce Deployment
Estimate custom design
Unstructured
CreateLead
Qualified?
RetireLead
CreateOppt’y
CreateQuote
Closed? CompleteSale
Create Invoice
Get specs from customer
Validate specs with Tech Sales
Cost out the solution
Decide discount strategy
Assemble proposed response
Approve proposed response
Structured
“Classic” Enterprise Applications
Office Business Applications
Estimate custom design
Unstructured
Office SharePoint Server
Word Excel Outlook InfoPath
• Document-level code behind• Brings Microsoft Office into the managed world• Strict security model
• Custom ActionsPane• Host Controls on doc
surface• Cached Data in the
document• Server-side data
processing• App-level add-ins for
Outlook
VSTO 2008 • New designers: ribbon, custom task pane, Outlook form region
• App-level add-ins for most client programs• ClickOnce deployment and security• VBA/VSTO interoperability• Workflow & Microsoft SharePoint support• VSTO integral part of Visual Studio 2008
Professional
VSTO 2005&
VSTO 2005 SE
VSTO 2003
Visual Studio Tools for Office
Office Applications
Visual Studio 2008 Professional includes Visual Studio Tools for OfficeVisual designers for Ribbon, Task & Action pane, SharePoint WorkflowIntegrated Workflow & Microsoft SharePoint SupportData binding in Word Content ControlsApplication-level add-ins for most client programs (both 2003 & 2007)Document-level add-ins for Excel & Word 2007Improved deployment and security using ClickOnce
Agenda
Office As A Developer PlatformThe “Results Gap” with LOB AppsOffice Business ApplicationsVSTO Overview
SharePoint WorkFlow ToolsCustom Task PaneRibbon DevelopmentClickOnce Deployment
SharePoint Workflow Tools
What is a workflow?A reliable repeatable pattern of activity enabled by a systematic organization of resources and information flows E.g. Document approval process
Workflow Foundation (WF) integrated
Programming model, engine and tools to build workflow enabled applicationsConsists of a Microsoft .NET Framework v3.0 (formerly WinFX)
SharePoint Workflow Tools
VSTO vs. SharePoint DesignerLimited reusability
Develop, deploy, and debug SharePoint workflows
“Simple F5 Experience“
Focus on your business logic right away
It’s always better live. MSDN Events
Creating A SharePoint WorkFlow
Custom Task Pane
Adds custom functionalityDynamically set properties
Show/Hide, dock position
Responds to event handlersOn hide, on show, on data bind
To create a Custom Task Pane,Create UserControl for UI and functionalityAdd UserControl to CustomTaskPaneCollection
It’s always better live. MSDN Events
Building a custom Task Pane
Ribbon Development
Office has built-in support for XML-based customization modelVSTO 2005 SE support:
Simplifies hookup from .NET via pre-generated classes and sample XML
VSTO 2008 support: Adds full-blown visual designer support“Export to XML” optionA more robust programming layer
It’s always better live. MSDN Events
Building a custom Ribbon
ClickOnce Deployment
Two competing goals in application development
Interactive, stateful, rich client applicationThin client application model
ClickOnce deployment overcomes:
Difficulties in updating applicationsImpact to the user’s computerSecurity permissions
ClickOnce Deployment
Three ways to publish a ClickOnce application
From a Web page, network share, media
ClickOnce applications are self-updatingClickOnce applications are isolated and self-contained.
Cannot break existing applications
ClickOnce Deployment
Feature ClickOnce Windows Installer
Installation-time user interface Single prompt Multipart Wizard
Installation of assemblies on demand
Yes No
Installation of shared files No Yes
Installation of drivers No Yes(with custom
actions)
Installation of GAC No Yes
Installation for multiple users No Yes
It’s always better live. MSDN Events
Setting Up ClickOnce Deployment
Session Summary
Office as a develop platform
Office business applications bridges the “Results Gap”
Visual Studio Tools for OfficeSharePoint Workflow
Custom Task Pane
Ribbon Development
ClickOnce Deployment
For More Information
Office Developer Centerhttp://msdn2.microsoft.com/en-us/office/aa905533.aspx
VSTO Bloghttp://blogs.msdn.com/vsto
MSDN Web sitemsdn.microsoft.com