Office as a Development Platform Tim Heuer [email protected] http://timheuer.com/ 602-405-4567 Microsoft Confidential That was then… Microsoft Confidential.

Download Report

Transcript Office as a Development Platform Tim Heuer [email protected] http://timheuer.com/ 602-405-4567 Microsoft Confidential That was then… Microsoft Confidential.

Office as a Development
Platform
Tim Heuer
[email protected]
http://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 Applications
that make line-of-business systems, enterprise
data 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 Applications
Use the Microsoft Office System
to find and surface Line of Business Information
Composition point for the S+S vision
Pull through the entire stack
More info at http://www.microsoft.com/office/oba and
http://msdn.microsoft.com/oba
Microsoft Confidential
Visual Studio Tools for Office (VSTO)
Document-level solutions
Word, Excel, InfoPath 2003 onwards
Managed controls on the doc surface
Doc-level Actions Pane
ServerDocument – manipulate
documents without automating Office
Word content control support
Application-level Add-ins
Appdomain isolation
Office 2003 & 2007 Office system apps
App-level custom task pane
Ribbon customization
Word content controls
Outlook form region customization
Highly streamlined developer experience
New designers for ribbon and Outlook form region
VBA => VSTO interoperability
ClickOnce deployment and security
Support for Workflow and Microsoft SharePoint
Microsoft Confidential
Developer Benefits
RAD design experience
for building Office-based apps
Utilize key
2007 Office system
UI features
+
=
Streamlined tasks
& processes
Build OBAs that leverage enterprise resources
Microsoft Confidential
Fluent UI and customization
Outlook Customization
Word Content Controls
Task Pane integration
Microsoft Confidential
UI Customization in Visual Studio
Increased visual designer capability
Extended support for customizable
task/action panes
Extended Outlook Form Region
capabilities
Ribbon UI designer tools
Microsoft Confidential
Example: Office Fluent Ribbon Extension
Tab
Group
Ribbon
Ribbon Designer
Ribbon
Controls
Design Surface
Microsoft Confidential
Control
Ribbon UI Customization
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 designer
Configure your form region with a simple, intuitive
wizard
Run 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 addin
Microsoft Confidential
Outlook Form Regions
Microsoft Confidential
Outlook Form Regions
Microsoft Confidential
Word Content Controls
New experience for
developing structured
documents in Word 2007
New UI for developers to
access Word Content
Controls
Programmable through
Word Object Model
Support for XML
Mapping
Microsoft Confidential
Toolbox
Controls
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
•
Microsoft Confidential
Populate user controls with Winform controls
Word Content Controls
and Task Panes
Microsoft Confidential
Much more…
Smart Tags
SharePoint Workflow/WebParts
Office Communicator/Presence Integrations
Office Open XML
Excel Server
InfoPath
Microsoft Confidential
For More Information
Cheat Sheets
MsoId - http://tinyurl.com/24zd8u
OfficeImageId - http://tinyurl.com/29dljb
OBA Central
www.obacentral.com
OBA for Architects
http://msdn2.microsoft.com/en-us/architecture/aa699381.aspx
OBA Dev Center
http://msdn2.microsoft.com/en-us/office/aa905528.aspx
Microsoft Confidential
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
Microsoft
SharePoint®
Server 2007
Microsoft
Office
Excel®, and
Word
Visual Studio
Office
IDE
Hosting
Workflow
Document
Solutions
Excel,
InfoPath,
Outlook®,
PowerPoint
®, Visio,
Word,
(Access,
Project)
Excel,
Outlook,
PowerPoint,
Word,
(Access)
Excel,
Outlook,
PowerPoint,
Word,
(Access)
Add-ins
Ribbon
Ribbon
XML
Project Templates
Item Wizards
Visual Studio
Microsoft Confidential
Outlook
Form
Regions
VSTO Runtime Stack
Microsoft Office Client Host
Doc-Level Solution
Doc
Task
Pane
Host
Item
Control
s
Common VSTO/A Runtime
VSTO Runtime
Windows
Forms
Controls
Custom
Ribbon
AppDomain
Management
.NET CLR
Microsoft Confidential
App-Level Add-in
Custom
Task
Pane
Security
Enforcement
Managed Add-in
Framework (MAF)
Custom
Form
Region
Deployment
and Updating
ClickOnce
Deployment & Security
ClickOnce support
Complete end-to-end customization installation
experience
Install from CD, removable drive storage, the web or network
shares.
Richer version-independent security model
No longer reliant on CASPOL
Offline access via the ClickOnce Cache
Supports both web deployments and network shares
Microsoft Confidential
ClickOnce
Low-impact deployment mechanism
Self-contained
Solutions installed per user
Prerequisites are installed if the user is an
admin
Supports solution update / rollback without
user intervention
Offline availability of solution
Microsoft Confidential
Security
Customization
No longer use ‘CASPOL’
Version-independent ClickOnce model
Works with future versions of .NET, VSTO Runtime & Office
Security evaluated on the deployment manifest
Check if the Deployment Manifest URL is in the IE
Restricted sites
Evaluate certificate used to sign the deployment manifest
Consult the inclusion list
Security evaluated on installs & updates
Documents
Office 2007 Trusted Folder List
Customization still needs to be trusted
Microsoft Confidential
Custom Task Panes: MDI vs. SDI
New custom task pane model not tied to the
document
Its 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
2007
Preserves the investment in VBA
Enables 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 Interop
Interop implemented at design time
Developers can then call managed code from VBA with
IntelliSense after building the project
Microsoft Confidential