Vista Media Center 开发之深入浅出 (二) --Vista Media Center 程序的新建及部署
原文:?http://www.cnblogs.com/wangmiao/articles/1306292.html
Vista Media Center 開發之深入淺出 (二)
???????????????????????????????????????? ----- Vista Media Center 程序的新建及部署
1.??? 新建程序模板簡介
????? 正如上一節最后一張所述Vista? Media? Center? SDK提供了三種新建Vista? Media? Center程序的模板分別為:
????? (1)??? A project for creating a Windows Media Center Application containing a page with four buttons which invoke a Media Center dialog box.
????????????? 該工程運行將出現一個頁面上面包含四個按鈕,當點擊按鈕時顯示對應的對話框。
????? (2)??? A project for creating a Windows Media Center Background Application.
????????????? 該工程運行直接彈出一個“The background application did something.”對話框。
????? (3)??? A project for creating a Windows Media Center Application containing the minimum code and markup required.
?????????????? 該工程運行將出現一個最基本的顯示Hello 的界面(以下稱做Hello 模版)。
2.??? 將程序安裝到Vista Media Center
???? 下面以新建Hello 模板為例,講解如何將開發好的程序安裝到Media Center中。
??? (1)為程序集增加簽名
????????? 新建一個Hello World模板的Media Center Application后,要想將其安裝到Media Center中必須為該程序制作簽名,其方法如下:
????????? ○1 在解決方案管理器中,右鍵單擊屬性,在左側找到簽名,鉤上為程序集簽名。
????????? ○2 點擊下選擇強名稱密鑰文件下拉框,選擇已有的snk文件或是新建snk文件。
????????? 進行如上操作則把程序集做上了簽名。
?? (2)在Registration.xml文件中修改該程序集的注冊信息
????????? 在每種模版中都包含一個Registration.xml文件,用于填寫Media Center Plugin程序的注冊信息,其內容如下:
<application title="Application1" id="{6a04b667-1e20-4833-b141-5f15262234d6}">
<entrypoint id="{e244677c-de06-4b6e-bd1f-d6d4b9f05e70}"
??????? addin="Application1.MyAddIn,
??????? Application8,Culture=Neutral,Version=1.0.0.0,PublicKeyToken=insert_public_key_token_here"
??????? title="Application1"
??????? description="Application1 Description"
??????? ImageUrl=".\Application.png">
<category category="More Programs"/>
</entrypoint>
</application>
???????? 在將程序安裝到Media Center之前需要修改PublicKeyToken=insert_public_key_token_here,將該程序集真實的PublicKeyToken填寫在這。
???????? 獲取程序集PublicKeyToken的方法如下:
???????? ○1?? 生成該程序集得到DLL文件。
???????? ○2?? 右鍵單擊“Visual Studio 2008 命令提示”,點擊以管理員身份運行。
???????? ○3?? 運行sn.exe -T assemblly.dll命令即可獲得PublicKeyToken。(注意,大寫T與小寫t在這里是有區分的)
??????? 將PublicKeyToken=insert_public_key_token_here 替換為程序真實的PublicKeyToken 例如PublicKeyToken=3a43633ac34b99df,保存文件。
??????? Registration.xml文件中的一些其他相關屬性將放到如何制作安裝包一節講解。
?? (3)用DevInstall.cmd將程序安裝到Media Center
??????? 在每種模版中同樣都包含一個DevInstall.cmd文件,用于操作將Plugin程序集安裝到Media Center中的全過程。
??????? 由于Media Center Plugin程序集需要注冊到GAC中,因此需要調用到gacutil.exe命令,而VS2008與VS2005中gacutil.exe文件的存儲路徑是不同的。而SDK模版中的DevInstall.cmd文件中調用gacutil.exe文件的存儲路徑是按照VS2005來寫的。
????? 因此如果采用VS2005作為開發環境,那么就不需要對該文件做任何改動,如果是VS2008做為開發環境,那么就需要做一些小的變動。即將
ECHO.Register the DLL with the global assembly cache
"%ProgramFilesPath%\Microsoft Visual Studio 8\SDK\v2.0\Bin\gacutil.exe" /if "%ProgramFilesPath%\%CompanyName%\%AssemblyName%\%AssemblyName%.dll"
ECHO.
??? 替換為
ECHO.Register the DLL with the global assembly cache
ECHO.Comment "%ProgramFilesPath%\Microsoft Visual Studio 8\SDK\v2.0\Bin\gacutil.exe" /if "%ProgramFilesPath%\%CompanyName%\%AssemblyName%\%AssemblyName%.dll"
"C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bin\gacutil.exe" /if "%ProgramFilesPath%\%CompanyName%\%AssemblyName%\%AssemblyName%.dll"
ECHO.
????? 以管理員身份運行DevInstall.cmd,出現Success的提示及說明安裝成功。
打開Media Center ,在“在線媒體”的“節目庫”下會出現,剛剛做好的程序。打開該程序,出現“Hello”界面,說明Media Center Plugin程序集安裝成功。
???? 調試是制作程序,不可缺少的一部分,由于Media Center Plugin的調試跟以往的程序集調試有些不同,下一節講述如何調試Media Center Plugin的后臺代碼。
轉載于:https://www.cnblogs.com/finehappy/archive/2009/07/11/1521727.html
總結
以上是生活随笔為你收集整理的Vista Media Center 开发之深入浅出 (二) --Vista Media Center 程序的新建及部署的全部內容,希望文章能夠幫你解決所遇到的問題。