microsoft confidential office as a development platform tim heuer [email protected]

31
icrosoft Confidential Office as a Development Platform Tim Heuer [email protected] http://timheuer.com/ 602-405-4567

Upload: mabel-turner

Post on 11-Jan-2016

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

Office as a Development PlatformOffice as a Development Platform

Tim [email protected]://timheuer.com/602-405-4567

Page 2: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

That was then…

Page 3: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

An Office Client Today…

Page 4: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

An Office Client Today…

Page 5: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

An Office Client Today…

Page 6: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

A unified solutions platform for building Office Business Applicationsthat make line-of-business systems, enterprisedata and workflows accessible and relevant to users.

Fully integrated Visual Studio Tools for Office technologies enable developers to build Office Business

Applications and scalable enterprise grade solutions based on Microsoft Office.

Page 7: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

Office Business Applications (OBA)

New Breed of ApplicationsUse the Microsoft Office System to find and surface Line of Business InformationComposition point for the S+S visionPull through the entire stackMore info at http://www.microsoft.com/office/oba and http://msdn.microsoft.com/oba

Page 8: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

Visual Studio Tools for Office (VSTO)

Document-level solutionsWord, Excel, InfoPath 2003 onwardsManaged controls on the doc surfaceDoc-level Actions Pane

Application-level Add-insAppdomain isolationOffice 2003 & 2007 Office system appsApp-level custom task pane

Highly streamlined developer experienceNew designers for ribbon and Outlook form regionVBA => VSTO interoperabilityClickOnce deployment and securitySupport for Workflow and Microsoft SharePoint

ServerDocument – manipulate documents without automating OfficeWord content control support

Ribbon customizationWord content controlsOutlook form region customization

Page 9: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

Utilize key2007 Office system

UI features

RAD design experiencefor building Office-based apps

Build OBAs that leverage enterprise resources

=Streamlined

tasks& processes

+

Developer Benefits

Page 10: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

Fluent UI and customizationOutlook CustomizationWord Content ControlsTask Pane integration

Page 11: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

UI Customization in Visual Studio

Increased visual designer capabilityExtended support for customizable task/action panesExtended Outlook Form Region capabilitiesRibbon UI designer tools

Page 12: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

Example: Office Fluent Ribbon Extension

Tab

Ribbon

Group Control

Ribbon Designer

RibbonControls

Design Surface

Page 13: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

Ribbon UI Customization

demo

Page 14: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

Outlook Form Regions

Visual Studio simplifies and speeds up Outlook form region design and configuration process with a visual designer and a wizard

Achieve maximum form region design flexibility with VS visual designerConfigure your form region with a simple, intuitive wizardRun and Debug your form region right from VS (F5)No need to manually handle manifest XML, OFS files, registry entries, etc. Option to import Outlook-created OFS file

Implement a custom form region with an add-in

Page 15: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

Outlook Form Regions

Page 16: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

Outlook Form Regions

demo

Page 17: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

Word Content Controls

New experience for developing structured documents in Word 2007New UI for developers to access Word Content ControlsProgrammable through Word Object ModelSupport for XML Mapping

ToolboxControls

Page 18: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

Custom Task Panes

• Visual Studio 2008 provides app-level custom task panes • Create custom task panes with an add-in• Add-in support & task pane support for

• Project, Excel, InfoPath, Outlook, PowerPoint, Word

• Custom task panes appear in the main application window or (Outlook) inspectors

• Populate custom task pane with UserControls• Populate user controls with Winform controls

Page 19: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

Word Content Controlsand Task Panes

demo

Page 20: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

Much more…

Smart TagsSharePoint Workflow/WebPartsOffice Communicator/Presence IntegrationsOffice Open XMLExcel ServerInfoPath

Page 21: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

For More Information

Cheat SheetsMsoId - http://tinyurl.com/24zd8u

OfficeImageId - http://tinyurl.com/29dljb

OBA Centralwww.obacentral.com

OBA for Architectshttp://msdn2.microsoft.com/en-us/architecture/aa699381.aspx

OBA Dev Centerhttp://msdn2.microsoft.com/en-us/office/aa905528.aspx

Page 22: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

appendix

Page 23: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

SharePoint Workflow Support

Visual Studio 2008 supports creation of SharePoint workflow to help manage business process and information flow

Reduces complexity and greatly speeds development of SharePoint workflow

Page 24: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

VSTO Design-time Stack

Visual Studio

Project Templates

OfficeIDE

Hosting

Item Wizards

WorkflowDocumen

t Solutions

Add-ins RibbonRibbon

XMLForm

Regions

Microsoft SharePoint® Server

2007

Visual Studio

Microsoft Office

Excel®, and Word

Excel, InfoPath, Outlook®,PowerPoint®, Visio,

Word, (Access, Project)

Excel, Outlook,

PowerPoint, Word,

(Access)

Excel, Outlook,

PowerPoint, Word,

(Access)Outlook

Page 25: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

VSTO Runtime

VSTO Runtime Stack

Microsoft Office Client Host

Doc Task Pane

Host Item

Controls

Windows FormsControl

s

Doc-Level Solution App-Level Add-in

Custom

Ribbon

Custom Task Pane

Custom

Form Region

Common VSTO/A Runtime

.NET CLR Managed Add-in Framework (MAF)

AppDomain Management

Deployment and Updating

Security Enforcement

ClickOnce

Page 26: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

Deployment & Security

ClickOnce supportComplete end-to-end customization installation experience

Install from CD, removable drive storage, the web or network shares.

Richer version-independent security modelNo longer reliant on CASPOL

Offline access via the ClickOnce CacheSupports both web deployments and network shares

Page 27: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

ClickOnce

Low-impact deployment mechanismSelf-containedSolutions installed per user

Prerequisites are installed if the user is an adminSupports solution update / rollback without user interventionOffline availability of solution

Page 28: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

Security

CustomizationNo longer use ‘CASPOL’Version-independent ClickOnce model

Works with future versions of .NET, VSTO Runtime & Office

Security evaluated on the deployment manifestCheck if the Deployment Manifest URL is in the IE Restricted sitesEvaluate certificate used to sign the deployment manifestConsult the inclusion listSecurity evaluated on installs & updates

DocumentsOffice 2007 Trusted Folder ListCustomization still needs to be trusted

Page 29: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

Custom Task Panes: MDI vs. SDI

New custom task pane model not tied to the documentIts behavior is dependent upon the distinction between MDI and SDI

MDI (Multiple Document Interface) SDI (Single Document Interface)

Applications: Excel, PowerPoint InfoPath, Outlook, Word

Window behavior:

Single application frame, document windows inside

Each document window is in its own application frame

Task pane behavior:

Single task pane associated with the application frame

Each document window has its own task pane

Page 30: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

VBA & Managed Code Interoperability

VBA can now call managed code with IntelliSense This feature works for Word and Excel in Office 2007Preserves the investment in VBAEnables incremental extension of VBA solutions using VB or C#Brings the power of .NET to your VBA solutions

Page 31: Microsoft Confidential Office as a Development Platform Tim Heuer timheuer@microsoft.com

Microsoft Confidential

Call Managed Code from VBA

Developers enable VBA via COM InteropInterop implemented at design timeDevelopers can then call managed code from VBA with IntelliSense after building the project