microsoft confidential office as a development platform tim heuer [email protected]
TRANSCRIPT
Microsoft Confidential
Office as a Development PlatformOffice as a Development Platform
Tim [email protected]://timheuer.com/602-405-4567
Microsoft Confidential
That was then…
Microsoft Confidential
An Office Client Today…
Microsoft Confidential
An Office Client Today…
Microsoft Confidential
An Office Client Today…
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.
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
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
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
Microsoft Confidential
Fluent UI and customizationOutlook CustomizationWord Content ControlsTask Pane integration
Microsoft Confidential
UI Customization in Visual Studio
Increased visual designer capabilityExtended support for customizable task/action panesExtended Outlook Form Region capabilitiesRibbon UI designer tools
Microsoft Confidential
Example: Office Fluent Ribbon Extension
Tab
Ribbon
Group Control
Ribbon Designer
RibbonControls
Design Surface
Microsoft Confidential
Ribbon UI Customization
demo
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
Microsoft Confidential
Outlook Form Regions
Microsoft Confidential
Outlook Form Regions
demo
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
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
Microsoft Confidential
Word Content Controlsand Task Panes
demo
Microsoft Confidential
Much more…
Smart TagsSharePoint Workflow/WebPartsOffice Communicator/Presence IntegrationsOffice Open XMLExcel ServerInfoPath
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
Microsoft Confidential
appendix
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
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
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
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
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
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
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
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
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