好了,上篇文章探討了一下WinCE 7的新特性,現在是時候動手來實際操作一下了,第一步,我們會定製一個運行在Vitual PC上的image。要完成這個任務,你要保證你的電腦上安裝了:1.Windows Virtual PC 2.Visual Studio 2008+SP1 3.Windows Embedded Compact 7 4. Platform Builder 7 其中Virtual PC你可以去這個地方去下載。
閑話少說,安裝好上面說的軟體以後,就可以正式開幹了,運行Visual Studio 2008,選擇建立一個項目,會發現在項目類型裡多了Platform builder 2008,選擇它,然後輸入一個項目名稱,這裡我們使用MYWinCE7,接下來的過程和以前版本操作方法沒什麼不同,首先是BSP選擇,這裡我們使用“Virtual PC :x86”(1),然後是選擇模板,這裡我選擇PDA Device下的Mobile Handheld,後面的組件選擇裡,記得在Networking and Communications裡面勾選上“Wired Local Area Network ”。
圖1
圖2
在OS Design Project Wizard Complete對話方塊裡,取消對“Build the following cnfiguration after I click finish”的選擇,否則在完成這個嚮導後,PB會馬上開始自動編譯系統,而我們往往還需要做一些其它設定。
圖3
點擊“完成”按鈕,確認出現的“安全警告”對話方塊。後面的操作,這裡就不詳述,和以前的版本基本一樣,你可以在catalog裡面選擇/刪除群組件,可以修改本地化等選項,完成後從菜單裡選擇build。
等待一些時間,完成build以後,接下來的工作就是設定virtual pc,然後下載nk 。這部分是WinCE7新的內容,我會詳細講一講。首先運行Windows Virtual PC,如果“New Vritual machine Wizard ”對話方塊沒有自動彈出的話,從菜單裡運行它:
圖4
選擇“Create a virtual machine”,然後按“Next”,在接下來的對話方塊中輸入虛擬機器的名字,比如“MyVPC”,點“Next”後選擇“Operating System”為“Other”,下一個對話方塊裡選擇預設的RAM設定,接下來的對話方塊選擇“An existing virtual hard desk”,點擊Next
圖5
WinCE7提供了一個虛擬機器在C:\WINCE700\PLATFORM\VIRTUALPC\VM目錄下,名稱是hd0_sample.vhd,在接下來的對話方塊中,選擇該檔案。
圖6
點擊Next,然後在確認對話方塊中選擇Finish,完成新虛擬機器的建立。接下來對虛機做一個設定,在Virtual PC console視窗單擊Setting,選擇Networking,根據你的實際,選擇合適的Adapter,完成後點OK,就完成了虛機的建立。
圖7
OK,現在運行你的虛機,在Virtual PC Console視窗下,雙擊我們剛建立的虛機名稱“MYVCEPC”運行它,按照提示,在5秒內,按下空格鍵,進入bootloader的設定菜單:
圖8
選擇2,設定boot source(從哪裡去下載nk),因為我們要從網路擷取NK,所以選擇2。接著選擇4設定網路,按以下參數設定:
圖9
當然,這裡的IP要根據實際設定,而且,如果網路支援,也可以使用DHCP,設定好以後,選擇7,儲存設定。接著在vs2008裡面(在項目開啟情況下),選擇Target——Connectivty Options,添加一個裝置“VECPC",設定Kernal Download,Kernal Transport都為Ethernet,然後單擊Kernel Download的Settings:
圖10
在虛機裡選擇0,這時候,虛機會發送BOOTME資訊出來,上面的視窗就會顯示裝置名稱:
圖11
選擇該裝置,然後點擊“Apply”按鈕,在點擊“Close”,關閉Target Device Connectivity Options視窗,然後選擇Target——Attach Device,就會出現Device Status視窗,顯示正在下載nk,等下載完後,在虛機裡面,WinCE7就運行起來了:
圖12
上面的圖示,是選擇Standard Shell時的情況,在Catalog裡面重新選擇Silverlight for Embedded base Consumer Shell,重新build,下載,運行起來後效果如:
圖13
圖14
圖15
可以看得出,使用了Silverlight以後,使用者介面比原來漂亮多了。所以,下面我準備研究一下WinCE7 上的Silverlight。