共用方式為


Windows Presentation Foundation Windows Media Center 所裝載的應用程式概觀

更新:2007 年 11 月

Microsoft Windows Media Center (WMC) 是一項可與 Windows Vista Home Premium Edition、Windows Vista Ultimate 及 Microsoft Windows XP Media Center Edition 2005 一起安裝的數位媒體娛樂應用程式。WMC 可讓使用者管理及使用各式各樣的媒體,包括電視 (數位與高解析度)、DVD、音樂、視訊、廣播與相片。

Windows Media Center 螢幕擷取畫面

WMC個人電腦 (PC) 可立即使用,以檢視及播放數位媒體。這稱為「2' 使用者經驗」,因為使用者可使用滑鼠、鍵盤與顯示器在 PC 上操作 WMC。

不過 WMCPC 可設定為支援遙控器或遠端鍵盤輸入。在這種配置下,使用者不需位於 WMCPC 前即可加以操作。這稱為「10' 使用者經驗」,適用於包含大型顯示器與傳統家庭娛樂硬體 (如電視與音響) 的 WMC 組態。

WMC 所提供的核心功能包含一組可管理及播放數位媒體的應用程式。但您可以使用 WPF,為 Windows Vista 版的 WMC 建立自訂應用程式。

本主題將介紹 WMC 的 WPF 應用程式開發,並涵蓋下列內容:

  • 建置及部署簡單的 WPF 遊戲應用程式。

  • 同時支援 2' 與 10' WMC 使用者經驗。

  • 自訂 WPF 控制項以支援 WMC。

  • 對 WPF 使用新的 WMC 特定控制項。

  • 利用 .NET Framework 中的支援。

  • 透過 Managed API 與 WMC 整合。

  • 使用 Visual Studio 2005 加強開發程序。

如需為 WMC 開發應用程式的完整資訊,請參閱 Windows Media Center Software Development Kit (WMC SDK)。

這個主題包含下列章節。

  • 在 WMC 中裝載 WPF 應用程式
  • 啟動 WMC 的 WPF 應用程式
  • WMC 使用者經驗
  • 更新 WMC 的 WPF 控制項
  • WMC 的其他 WPF 控制項
  • 使用 .NET Framework 3.0 類別庫
  • 與 WMC Managed API 整合
  • 使用 Visual Studio 進行開發
  • 安裝 WMC 的 WPF 應用程式
  • 相關主題

在 WMC 中裝載 WPF 應用程式

WPF 可讓您開發兩種類型的應用程式:獨立與瀏覽器裝載。獨立應用程式會提供其本身的視窗與對話方塊來裝載應用程式內容。瀏覽器裝載應用程式有兩種類型:鬆散 XAML 應用程式與 XBAP;兩者皆裝載於 Internet Explorer 7。但 Internet Explorer 7 無法識別 WPF 的相關項目;若要讓 Internet Explorer 7 能夠裝載 WPF 內容,WPF 必須提供裝載 Proxy 給 Internet Explorer 之類的應用程式。此 Proxy 可代表其他應用程式裝載 WPF 內容,並且是透過 Internet Explorer 本身了解如何裝載的相同 Windows 基礎結構所建置。

WMC 也可裝載此 Proxy,因此也能夠裝載 WPF 瀏覽器裝載的應用程式。這表示,在一般情況下,您可以使用 WPF 應用程式開發平台,而在特殊情況下,您可使用瀏覽器裝載之應用程式的巡覽與安全性功能。

本主題的其餘部分將使用 WMC 的 WordGame! 應用程式 (請參閱 Windows Media Center 的 WordGame! 示範)。

啟動 WMC 的 WPF 應用程式

WordGame! 應用程式由下列三個檔案所組成 (所有 XBAP 的最低要求):

  • wordgamewmc.exe:XBAP。

  • wordgamewmc.exe.manifest:ClickOnce 應用程式資訊清單。

  • wordgamewmc.xbap:ClickOnce 部署資訊清單。

XBAP 可透過 ClickOnce 來啟動,而這需要以應用程式及部署資訊清單檔案來設定應用程式 (請參閱建置 WPF 應用程式 (WPF))。具體來說,在瀏覽到或按兩下 .xbap 檔案時,即會啟動該 XBAP。啟動時的預設行為是由 ClickOnce 代表 WPF 下載應用程式,接著 WPF 會啟動 Internet Explorer 並巡覽至應用程式,如下圖所示:

Word Game 螢幕擷取畫面

但是,若要啟動 WMC 應用程式,使用者必須瀏覽至或按兩下 WMC 連結檔案 (.mcl)。.mcl 檔案是一個設定於 Windows 中的 XML 組態檔,當使用者加以瀏覽或按兩下時,會由 WMC 主應用程式 (ehshell.exe) 所開啟 (請參閱 WMC SDK)。

注意事項:

.mcl 檔案在開發程序中具有其便利性,但不建議當做安裝及啟動 WMC 應用程式的機制。請參閱安裝 WMC 的 WPF 應用程式。

當 .mcl 檔案開啟時,WMC 主應用程式會剖析並處理 .mcl 檔案中所含的組態指令,其中最重要的是所開啟之應用程式的名稱。您可以使用此機制建立 .mcl 檔案,並將其設定為啟動 XBAP:

<application url="https://localhost/wordgamewmc/wordgamewmc.xbap" />

當 WMC 主應用程式處理此 .mcl 檔案時,WMC 主應用程式會巡覽至 .xbap 檔案。這會使 ClickOnce 將應用程式啟動至 WMC 主應用程式本身中,如下圖所示:

Word Game 螢幕擷取畫面

注意事項:

若要讓 WMC 裝載鬆散 XAML 應用程式,則應將 .mcl 檔案設定為 .xaml 檔案,如下所示:

<application
  url="https://localhost/loosexamlapplication/loosexamlpage.xaml" />

不需對 XBAP 本身做任何變更,只需加入單一組態檔,WMC 即可照原樣裝載 WPF 瀏覽器裝載的應用程式。

但 WMC 使用者經驗頗具獨特性,為保持一致性與樣式,應將 XBAPWMC 應用程式設計為與 WMC 使用者經驗整合。本主題的其餘部分將討論 WMC 使用者經驗的重要層面,以及如何將 XBAP 建置為會隨其改變。

WMC 使用者經驗

提供一致的使用者經驗,一向是應用程式開發的核心部分。對於 WMC 使用者,應用程式應嘗試達成下列方面的一致性:

  • 主題:應用程式之使用者介面的整體樣式。

  • 配置:控制定位與大小。

  • 巡覽:使用鍵盤、滑鼠與遙控器巡覽應用程式的使用者介面。

WMC 使用者經驗在 WMC SDK 中有詳細討論,下列主題則提供高階概觀。

主題

如下圖所示,WMC 主題具有數個獨特項目:

Windows Media Center 螢幕擷取畫面

其中最為獨特的項目包括藍色的光滑背景,以及大型淺色圓角字型。這樣可建立 2' 使用者 (就在顯示器正前方) 與 10' 使用者 (可能與電視相隔一段距離) 都能輕易分辨的外觀。雖然 WPF 應用程式應遵照此方式產生外觀,但 WMC 原本並不會公開 (Expose) 這項資訊供 WPF 應用程式使用。所幸 WPF 提供了用於設定樣式與主題的豐富基礎結構,可以視需要用來輕鬆地複寫 WMC 外觀。或者,您也可以使用 WPF 建立全新而極富視覺性的使用者經驗,只是仍要留意配置與巡覽方面的考慮事項。

例如,若要建立 WMC 樣式的頁面背景,您可以採用下列方式:

<Application
    xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
    StartupUri="HomePage.xaml">
  <!--MediaCenterThemes.xaml-->
  <Application.Resources>
    <LinearGradientBrush x:Key="PageGlassyBackground"  StartPoint="0,0.5" EndPoint="1,0.5">
      <GradientStop Color="#ff2B6680" Offset="1.5" />
      <GradientStop Color="#569dc2" Offset="0" />
    </LinearGradientBrush>
    ...
  </Application.Resources>
</Application>

因為主題通常由多個項目所組成,因此您應考慮使用自訂資源字典來封裝 WMC 主題的樣式:

<ResourceDictionary>
xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation" 
  xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml" />
  <LinearGradientBrush x:Key="PageGlassyBackground"  StartPoint="0,0.5" EndPoint="1,0.5">
    <GradientStop Color="#ff2B6680" Offset="1.5" />
    <GradientStop Color="#569dc2" Offset="0" />
  </LinearGradientBrush>
  ...
</ResourceDictionary>

若要將資源字典併入應用程式中,您必須設定應用程式定義的 Application.Resources 項目,以參照資源字典 .xaml 檔案:

<Application
    xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
    StartupUri="HomePage.xaml">
  <!--MediaCenterThemes.xaml-->
  <Application.Resources>
    <ResourceDictionary>
      <ResourceDictionary.MergedDictionaries>
        <ResourceDictionary Source="MediaCenterTheme.xaml" />
      </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
  </Application.Resources>
</Application>

下圖顯示以 WMC 主題完整互補的樣式與資源更新後的 WordGame!。

Word Game 螢幕擷取畫面

WMC 不會限制您開發任何應用程式主題,用以併入應用程式特定的項目與品牌特定的項目。但在針對 WMC 使用者經驗設計任何應用程式時,仍應考量應用程式主題的幾個面向,包括:

  • 電視適用色彩:不要使用容易造成渲染效果的鮮豔色彩 (如綠色、紅色)。

  • 對比:為使文字能夠清楚與背景區別,請確定為您的視覺項目選用適當的前景與背景色彩,以營造適當程度的對比。

  • 字型:您可以使用較大而不具襯線 (Serif) 的字型,以提升可讀性。此外,從內容中移除非必要的用語,也助於建立較易讀取的文字區域。

  • 按鈕:讓按鈕外觀保持簡單。

  • 影像:建立影像時,請考慮顯示品質、顯示大小以及下載大小。

  • 動畫:適時使用動畫。

如需關於 WMC 應用程式主題的詳細資訊,請參閱 WMC SDK。

配置

當使用者將滑鼠置於 WMC 主應用程式上方時,此動作會導致 WMC 主應用程式顯示滑鼠驅動型巡覽的其他巡覽 UI 項目,這時會發生一個平常不易察覺的問題,如下圖所示:

WordGame 範例螢幕擷取畫面

在此圖中,您可以看見應用程式 UI 左上方與右下方的部分,被巡覽組件區塊遮住了。在此情況下,您可以更新 UI 的配置,將巡覽 UI 列入考量。對於 WordGame! 來說,您必須將應用程式標題移至 UI 右側,並為裝載首頁內容的 Grid 項目在底部加入 50 像素高的列:

<Grid>
    ...
    <Grid.RowDefinitions>
        <RowDefinition Height="5" />
        <RowDefinition Height="Auto" />
        <RowDefinition Height="20" />
        <RowDefinition Height="Auto" />
        <RowDefinition />
        <RowDefinition Height="50" />
    </Grid.RowDefinitions>
    <!-- Game title -->
    <TextBlock ... TextAlignment="Right">Word Game!</TextBlock>
    ...
</Grid>

加入這幾列的結果如下圖所示:

WordGame 範例螢幕擷取畫面

因此,WMC 的 XBAP 必須能夠隨著 WMC 不同的配置行為與一致性而改變。

您應考量的主要配置因素包括:

  • 應用程式配置:您的應用程式配置應簡單而一致,以利使用者對應用程式的使用者介面產生熟悉感。

  • WMC 配置:您的應用程式配置應盡可能與一般的 WMC 使用者經驗保持一致。如此可讓已熟悉 WMC 的使用者更快適應您的應用程式。

  • 視訊:若您的應用程式是以 WMC Managed API 顯示視訊,則 WMC 會在螢幕左下角播放視訊。因此,您在配置使用者介面時應考量到這一點。

  • 解析度:應用程式的使用者介面與配置應以 1024x768 的解析度為準。WPF 會提供配置支援,協助您配置以 1024x768 為準的使用者介面,以及確定該配置在使用者介面調整大小後仍維持不變 (如需詳細資訊,請參閱配置系統)。

如需關於 WMC 配置的詳細資訊,請參閱 WMC SDK。

巡覽

基本上,主題與配置會決定包含應用程式使用者介面之控制項的排列方式。而另一方面,巡覽則決定使用者移至控制項以及在控制項之間移動的方式。

目前接收使用者輸入的控制項,稱之為擁有焦點。若要在 XBAP 應用程式中的頁面顯示時將焦點置於特定控制項上,您可以使用標記:

<!-- Set focus on guess character text box -->
<Page ... FocusManager.FocusedElement="{Binding ElementName=guessedChar}">
    ...
</Page>

您應執行此動作以同時支援 2' 與 10' 模式的操作。

若要讓使用者能同時以 2' 與 10' 模式巡覽 WMC 應用程式中的控制項,您的應用程式必須能夠處理使用滑鼠、鍵盤 (連接或遠端) 與遙控器的巡覽方式。根據預設,使用滑鼠與鍵盤的巡覽方式,與任何 WPF 應用程式的巡覽相同,包括:

  • 按一下控制項,使其取得焦點。

  • 以 Tab 鍵切換控制項,以移動焦點。

  • 使用按鈕的 IsDefault 屬性,指定在按 Return 鍵時預設會點選此控制項。

  • 使用按鈕的 IsCancel 屬性,指定在按 Esc 鍵時預設會點選此控制項。

若要支援遙控器,您必須支援方向式巡覽,也就是允許使用者藉由點選遙控器上的向上、向下、向左與向右等按鈕,來移動控制項焦點。您不需為了支援方向式巡覽而撰寫特殊程式碼,只需使用特定的 WPF 控制項子集就能辦到。

更新 WMC 的 WPF 控制項

雖然 WPF 提供多種控制項裝載,但預設只有一部分控制項適用於 WMC 應用程式。決定的因素為是否可使用遙控器巡覽至該控制項、進行操作,以及從該控制項巡覽至其他控制項。下圖顯示支援從遙控器進行輸入的 WPF 控制項子集 (使用 WMC 樣式):

Windows Media Center 螢幕擷取畫面

這些限制不會排除其他 WPF 控制項的使用,但您必須執行額外工作才能使其運用於 WMC。例如,以 Slider 控制項為例,如下圖中的 WMC 裝載所示:

Slider 螢幕擷取畫面

依預設可使用滑鼠、鍵盤或遙控器來顯示及巡覽至 Slider。但是,無法使用遙控器自 Slider 巡覽至其他項目 - Slider 會將向上、向下、向左與向右等遙控器按鈕的點選動作,視為增加或減少 Slider 值的嘗試。

在這種情況下,其中一個解決方法是建立複合控制項,其中包含所需的控制項再加上其他適合以遙控器加以操控的控制項。例如,透過下列程式碼,就能以兩個按鈕來使用 Slider,一個按鈕遞減 Slider 的值,另一個按鈕遞增 Slider 的值:

<Page x:Class="SliderPage"
    xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml">

  <!-- Custom Slider -->
  <StackPanel Margin="50" Orientation="Horizontal" VerticalAlignment="Top">
    <Button 
      Name="decrementButton" 
      Click="decrementButton_Click"
      Margin="10" 
      FontSize="10" 
      HorizontalContentAlignment="Center" 
      VerticalContentAlignment="Center" 
      Width="40" Height="40">
      -
    </Button>
    <Slider 
      Name="slider" 
      Focusable="False" 
      Width="100" Margin="0,15,0,0" 
      Minimum="0" Maximum="10" Value="50" 
      Interval="1" TickFrequency="1" TickPlacement="BottomRight" />
    <Button 
      Name="incrementButton" 
      Click="incrementButton_Click"
      Margin="10" 
      FontSize="10" 
      HorizontalContentAlignment="Center" 
      VerticalContentAlignment="Center" 
      Width="40" Height="40">
      +
    </Button>
  </StackPanel>
  
</Page>
using System.Windows;
using System.Windows.Controls;
public partial class SliderPage : System.Windows.Controls.Page
{
    //</SnippetSliderPageCodeBehind1>
    public SliderPage()
    {
        InitializeComponent();
    }

    void decrementButton_Click(object sender, RoutedEventArgs e)
    {
        this.slider.Value--;
    }
    void incrementButton_Click(object sender, RoutedEventArgs e)
    {
        this.slider.Value++;
    }
}

下圖顯示結果。

Slider 螢幕擷取畫面

WMC 的其他 WPF 控制項

另一個有問題的控制項是 TextBox,如下圖所示。使用遙控器時,無法將字元實際輸入 TextBox 中。您需要的是可讓遙控器使用者選取一個或多個字元的控制項。因為外型限制而無法使用完整鍵盤的行動裝置,已普遍採行一種技術來克服這個問題,也就是在使用者介面中顯示鍵盤,讓使用者得以選取所需的字元。

範例包含一個螢幕鍵盤控制項,可用於以 WMC 為目標的 WPF 應用程式,如下圖所示:

螢幕小鍵盤控制項

此控制項實作於範例隨附的 Keyboard.dll 組件中的 SoftKeyboardTextBox 類別,並位於 MCEControls 命名空間中。若要加以使用,您必須:

  1. 加入 MCEControls 隨附之 Keyboard 組件的參考。

  2. 加入 XML 命名空間宣告至您內容中的組件。

  3. 加入 XAML 以宣告及設定 SoftKeyboardTextBox

結果如下列程式碼所示:

<Page 
  ... 
  xmlns:MCEControls="clr-namespace:MCEControls;assembly=Keyboard" >
  ...
  <MCEControls:SoftKeyboardTextBox 
    Name="guessedChar" 
    Grid.Column="0" 
    Margin="0,0,5,0" 
    Width="80" 
    MaxLength="1" />
  ...
</Page>

使用 .NET Framework 3.0 類別庫

WMC 的 WPF 應用程式並不限定於控制項。WPF 應用程式也可利用 .NET Framework 的強大功能,讓您能夠針對獨立或瀏覽器裝載的 WPF 應用程式使用相同的程式碼。

例如,從 WMC 所裝載應用程式儲存及載入資料的程式碼,與要從非 WMC 應用程式執行相同作業的程式碼相同,且安全性條件約束也相同 (請參閱 Windows Presentation Foundation 安全性),啟動應用程式的位置取決於 WMC 裝載的應用程式是否可寫入本機磁碟。

若要保持安全性,應用程式可使用獨立的儲存區來保存檔案:

using System;
using System.ComponentModel;
using System.IO;
using System.IO.IsolatedStorage;
using System.Xml;
using System.Xml.Serialization;
...
public static PlayerScore Load()
{
    try
    {
        // Load the playerscore.xml file from isolated storage
        using (IsolatedStorageFile isf = IsolatedStorageFile.GetUserStoreForApplication())
        using (Stream stream = new IsolatedStorageFileStream("playerscore.xml", FileMode.Open, isf))
        {
            XmlSerializer xmlSerializer = new XmlSerializer(typeof(PlayerScore));
            return (PlayerScore)xmlSerializer.Deserialize(stream);
        }
    }
    catch (FileNotFoundException ex)
    {
        return new PlayerScore();
    }
}

public static void Save(PlayerScore playerScore)
{
    // Save the playerscore.xml file to isolated storage
    using (IsolatedStorageFile isf = IsolatedStorageFile.GetUserStoreForApplication())
    using (Stream stream = new IsolatedStorageFileStream("playerscore.xml", FileMode.Create, isf))
    {
        XmlSerializer xmlSerializer = new XmlSerializer(typeof(PlayerScore));
        xmlSerializer.Serialize(stream, playerScore);
    }
}

與 WMC Managed API 整合

WMC 的 WPF 應用程式透過一組與作業系統一起安裝的 Managed API (位於兩個組件中:Microsoft.MediaCenter.dllMicrosoft.MediaCenter.UI.dll),即可與 WMC 本身的功能整合。

使用這些 API,您可以與許多 WMC 服務進行整合,包括檢查、設定及播放媒體內容。如需詳細資訊,請參閱 WMC SDK。

這些功能的其中一個作用,是可進一步將您應用程式的使用者經驗與 WMC 整合。例如,如果 WPF 應用程式需要以訊息方塊通知使用者,則可顯示如下內容:

WordGame 範例螢幕擷取畫面

但標準 WPF 訊息方塊的外觀,與 WMC 的使用者經驗並不一致。幸好,WMC Managed API 有提供其本身的 WMC 樣式訊息方塊,您可用於下列程式碼中:

using Microsoft.MediaCenter;
...
// Get media center host and show dialog box
MediaCenterEnvironment mce = Microsoft.MediaCenter.Hosting.AddInHost.Current.MediaCenterEnvironment;
mce.Dialog(msg, "WordGame!", DialogButtons.Ok, 1000, true);

如此會顯示如下的 WMC 對話方塊:

WordGame 範例螢幕擷取畫面

若要進一步了解 WMC Managed API,請參閱 WMC SDK。

注意事項:

您無法執行參考 WMC Managed API 的 XBAP,除非 XBAP 是由 WMC 所裝載。

使用 Visual Studio 進行開發

到目前為止,本主題已討論您在建置 WMC 的 XBAP 時所需處理的核心程式設計問題,包括:

  • 建立一般的 XBAP 應用程式。

  • 使用 .mcl 檔案將 XBAP 啟動至 WMC 中。

  • 建立 XBAP 的 WMC 主題。

  • 參考 WMC Managed API。

這些都是您每次為 WMC 建置 XBAP 時所必須處理的問題。您不需在每次建置 WMC 的 XBAP 時都重新建立這些項目,而是可以使用與 WMC SDK 一起安裝之 Microsoft Visual Studio 2005 的 Media Center Application (WPF) 專案範本。

注意事項:

只有在同時安裝了 Visual Studio 2005 與 "Fidalgo" 時,才會安裝 WMC 專案範本。

Media Center Application (WPF) 專案範本依預設會建立包含這些項目的 Visual Studio 2005 專案。

若要建立新的 Media Center Application (WPF):

  1. 開啟 Visual Studio 2005。

  2. 依序選擇 [Microsoft Visual Studio]、[檔案]、[新增]、[專案]、[Visual C#]、[.NET Framework 3.0] 以及 [Media Center Application (WPF)]。

以下清單列出專案範本依預設會產生的主要項目:

  • 一個 readme.txt 檔案,內含建置及偵錯 WPF 的 XBAP 時一些有幫助的文字。

  • WMC Managed 組件的參考。

  • 一個 MediaCenterTheme.xaml 檔案,這是包含完整 WMC 樣式集的資源字典,依預設會套用至預設頁面 Page1.xaml。

  • 一個 .mcl 檔案,隨標準 XBAP 輸出而產生。

請注意,Microsoft Visual Basic 有其對等的專案範本。

對專案進行偵錯

若要從 Visual Studio 2005 對 WMC 主應用程式內的 XBAP 進行偵錯,您必須執行下列作業:

  1. 以滑鼠右鍵按一下 [方案總管] 中的專案,再按 [屬性]、[偵錯]。

  2. 將 [啟動程式] 設為 c:\windows\system32\presentationhost.exe

  3. 將 [命令列的引數] 設為 -debug

  4. 依序選擇 [Microsoft Visual Studio]、[偵錯]、[啟動偵錯] (或按 F5) 以執行應用程式。

  5. 按兩下在建置程序中產生的 .mcl 檔案 (\bin\debug\assemblyname.mcl)。

.mcl 檔案中所指定的應用程式將會啟動,並裝載於 WMC 中。

安裝 WMC 的 WPF 應用程式

使用 WMC 的好處之一,是它可以輔助建立 Microsoft Windows Installer 應用程式 (.msi 檔案)。.msi 檔案可協助您將 WPF 應用程式散發至 WMC 用戶端機器。

若要為 WordGame! 建立簡單的 Windows Installer 應用程式,必須遵循下列步驟:

  1. 在 Visual Studio 2005 中,以滑鼠右鍵按一下 [方案總管] 中的 XBAP 方案,然後依序選擇 [加入]、[新增專案]。

  2. 在 [專案類型] 清單中,依序選取 [其他專案類型]、[安裝和部署]。

  3. 在 [範本] 清單中,選取 [安裝專案] 或 [安裝精靈] (後者可引導您完成所建立之 Windows Installer 安裝專案的初始組態)。

  4. 以滑鼠右鍵按一下新的 Windows Installer 專案,然後依序選擇 [加入]、[檔案],再選擇下列檔案:

    1. WordGameWMC.mcl

    2. WordGameWMC.exe

    3. WordGameWMC.exe.manifest

    4. WordGameWMC.xbap

    5. WordList.txt

    6. Keyboard.dll

  5. 在 [檔案系統] 索引標籤中,選擇 [使用者的桌面]。

  6. 在檔案清單中按一下滑鼠右鍵,然後選取 [建立使用者桌面的捷徑]。

  7. 依序選取 [應用程式資料夾]、[WordGameWMC.mcl]。

  8. 重建 Windows Installer 專案。

建置 Windows Installer 專案時,建置輸出資料夾中會產生一個 .msi 檔案。接著,此檔案會複製到用戶端機器上,並執行以安裝應用程式。預設安裝會建立符合下列格式的資料夾:

c:\program files\CompanyName\ApplicationName\Application Files

設定 Windows Installer 專案期間選取的所有檔案,會連同 Windows Installer 專案所選取的任何相依組件一起複製到此資料夾。

此外,桌面上會出現 WordGameWMC.mcl 的捷徑圖示,按兩下或瀏覽至此圖示時就會在 WMC 內啟動應用程式。

注意事項:

應用程式本身的專案檔必須手動更新,以確保加入至所產生 .mcl 檔案的 .xbap 檔案路徑是正確的,可供進行安裝。

您可以將此安裝示範視為替 WMC 的 WPF 應用程式建立 Windows Installer 的基本原則。

若是 WMC 實際的 WPF 應用程式,則安裝技術應有所不同。

首先,您的應用程式應安裝 HTML 檔案,且此檔案必須提供實際 Web 伺服器裝載之 WPF 應用程式的連結。裝載於 Web 伺服器上,可讓使用者不需重新安裝應用程式,就能由用戶端機器建立、發行及挑選新版的應用程式。

其次,您不應使用 .mcl 檔案。您應改為建立可呼叫 WMCMediaCenter.RegisterApplicationAPI 的 Windows Installer,或執行 RegisterMceApp.exe 命令列公用程式。如需詳細資訊,請參閱 WMC SDK。

請參閱

概念

Windows Presentation Foundation XAML 瀏覽器應用程式概觀

其他資源

Windows Media Center 軟體開發套件