Deploy and publish Expression Blend applications

After you use Microsoft Expression Blend or Microsoft Visual Studio 2010 to build your application, you can deploy (or publish) your application so that other people can use it.

What you need to publish a WPF application

To deploy a Windows Presentation Foundation (WPF) application that you have created in Expression Blend or Visual Studio 2010, you have to use the deployment tools of Visual Studio 2010. 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 website. You can also use Windows Installer or Xcopy to enable people to open the .xaml files on their local computer.


    If you want to host a XAML file on a website, 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.

  • WPF Browser Application   Your application is compiled and you want to make it available from a website. 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 2010 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 Cc295109.xtlink_newWindow(en-us,Expression.40).png on MSDN.

For more information about Xcopy, Windows Installer, ClickOnce, and standalone and browser-hosted applications, see Deploying a Windows Presentation Foundation Application Cc295109.xtlink_newWindow(en-us,Expression.40).png and the "Deploying a XAML Browser Application" section of Windows Presentation Foundation Browser-Hosted Applications Overview Cc295109.xtlink_newWindow(en-us,Expression.40).png on MSDN.

What a user needs to run your WPF application

For an end user to be able to run your Expression Blend application on a computer, the user must have the building blocks of the WPF installed. If the user is running Windows Vista or Windows 7, these building blocks are already installed by default. A user running Windows XP or Windows Server 2003 must have the latest service pack installed, and also the Microsoft .NET Framework Redistributable Package, which contains the WPF building blocks (assemblies).

If your WPF application is a WPF Browser Application or markup-only (has no code), the user currently has to use Internet Explorer version 6.0, 7.0, or 8.0 to view your application, and also the Microsoft .NET Framework.

What you need to publish a Silverlight application

To deploy a Microsoft Silverlight application, you can simply copy it to a web folder, and then call it from a web page.

For more information, see Deploy a Silverlight application to a website.

What a user needs to run your Silverlight application

When users try to run your Silverlight application, if they do not already have the Silverlight runtime installed, they will be prompted to install it from the Silverlight website Cc295109.xtlink_newWindow(en-us,Expression.40).png.

Sharing code

Instead of deploying a complete application, you might want to share pieces of your application, such as XAML documents, XAML resources, user controls, custom class definition files, or custom control library files (.dll).

For more information, see Sharing code.


An Expression Blend application is essentially a WPF or Silverlight 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 Cc295109.xtlink_newWindow(en-us,Expression.40).png topics in the Windows Presentation Foundation Cc295109.xtlink_newWindow(en-us,Expression.40).png section of MSDN.

Send feedback about this topic to Microsoft. © 2011 Microsoft Corporation. All rights reserved.