Deploying and publishing Expression Blend applications
- What you need to publish your application
- What a user needs to run your application
- Sharing code
- Security
After you use Microsoft® Expression Blend™ or Microsoft® Visual Studio® 2005 to build your application, you need to deploy (or, publish) your application so that other people can use it.
What you need to publish your application
An Expression Blend application is essentially a Windows Presentation Foundation (WPF) application, so the methods of deployment are the same. To deploy an Expression Blend application, you need to use the deployment tools of Visual Studio 2005. The tool you use depends on the type of application you want to deliver:
- Standalone application—Your application is contained in a single executable file (.exe). You can deploy this application by copying it (by using Xcopy), by using Windows Installer, or by using ClickOnce.
- Markup-only Extensible Application Markup Language (XAML) application—Your application is not
compiled because it has no code files, only .xaml files. You can deploy this
application by putting the .xaml files on a Web site. You can also use Windows
Installer or Xcopy to allow people to open the .xaml files on their local
computer.
To host a XAML file on a Web site, the root element of the file must be a Page element (not a Window element), and the x:Class attribute (used to match a XAML file with a code-behind file) must be removed. - XAML browser application (XBAP)—Your application is compiled and you want to make it available from a Web site. You can deploy this application by providing the executable file (.exe), a deployment manifest file (.xbap), and an application manifest file (.exe.manifest). These files can be produced by Visual Studio 2005 when you build the project with the HostInBrowser property set to true in the project file (.csproj or .vbproj). For more information, see the How to: Create a Sample Project File for a Windows Presentation Foundation XAML Browser Application on MSDN.
For more information about Xcopy, Windows Installer, ClickOnce, and standalone and browser-hosted applications, see the Deploying a Windows Presentation Foundation Application topic, and the "Deploying a XAML Browser Application" section of the Windows Presentation Foundation Browser-Hosted Applications Overview topic, on MSDN.
What a user needs to run your application
For an end user to be able to run your Expression Blend application on their computer, the user must have the building blocks of the Windows Presentation Foundation (WPF) installed. If the user is running Windows Vista™, these building blocks are already installed by default. If the user is running Windows® XP or Microsoft® Windows Server® 2003, they must have the latest service pack installed, as well as the Microsoft .NET Framework 3.0 Redistributable Package, which contains the WPF building blocks (or, assemblies).
If your WPF application is an XBAP or markup-only, the user currently needs to use Internet Explorer® version 6.0 or 7.0 to view your application, as well as the Microsoft .NET Framework 3.0 redistributable package.
Sharing code
Apart from deploying a complete application, you might want to share pieces of your application, such as XAML elements, XAML resources, user controls, class definition files, or custom control library files (.dll). For more information, see Sharing Code in this User Guide.
Security
An Expression Blend application is essentially a Windows Presentation Foundation (WPF) application, so the services that secure applications are the same:
- Standalone applications execute with unrestricted permissions (CAS FullTrust permission set), whether you deploy them by using Windows Installer, XCopy, or ClickOnce.
- Browser-hosted applications execute with partial trust. This effectively isolates WPF browser-hosted applications from the client computer in the same way that you would expect typical Web applications to be isolated.
For more information about WPF application security, see the Security topics in the Windows Presentation Foundation section of MSDN.