1. gzyueqian
      13352868059
      首頁 > 新聞中心 > > 正文

      讓Windows CE 6.0 R2支持.NET CF 3.5

      更新時間: 2008-08-12 15:48:00來源: 粵嵌教育瀏覽量:1354

        .NET Compact Framework已經升級到3.5的版本了,.NET CF 3.5支持LINQ和WCF等新的特性。對于Windows Mobile的開發人員來說,只需要安裝一個更新的CAB包就可以了。可是Windows CE的開發者如果想將.NET CF 3.5加入到OS Design,還是需要花一點功夫的。我們會使用革新2410D開發板作為我們的平臺,關于該開發板的介紹和開發過程,大家可以參考我之前的文章——《革新2410D開發板試用手記》,鏈接如下:
        http://www.cnblogs.com/aawolf/archive/2008/05/29/1209854.html
       來自Mike Hall的QFE
        這篇文章的起因是Mike Hall在自己BLOG上發表的一篇文章:
      http://blogs.msdn.com/mikehall/archive/2008/03/17/net-compact-framework-3-5-component-for-windows-embedded-ce-6-0-catalog-component.aspx


        這篇文章介紹了微軟在2008年一月份推出的一個QFE的包,其中包括了.NET Compact Framework 3.5的組件。所謂QFE,就是Quick Fix Engineering,用于快速修復一些BUG或者增加一些新的功能,修改比SP要小,所以可以每月推出。
        好了,既然有老大級的人物給我們指明了方向,小弟們跟著干就是了,首先在微軟網站上下載這個QFE包:
      http://www.microsoft.com/downloads/details.aspx?FamilyID=a83124d5-7c8e-4abe-87fd-69654561be40&displaylang=en


        然后確認你的開發計算機上已經裝了下面的東西:
      1. Visual Studio 2005
      2. Visual Studio 2005 SP1
      3. Visual Studio 2005 SP1 Update for Vista (if applicable)
      4. Windows Embedded CE 6.0 Platform Builder
      5. Windows Embedded CE 6.0 SP1 (required if PB 6.0 Tools have been installed)
      6. Windows Embedded CE 6.0 R2


        別緊張,基本上來說,只要你用的是Windows CE 6.0 R2,那么這些東西就都有了。


                   

        接下來,我們確認將Visual Studio 2005關閉,然后運行QFE的安裝程序就可以了。如果是在Vista下安裝的話,可能會遇到安裝文件出錯的問題,這是由權限問題造成的。我們可以參考下面的文章解決:
      http://support.microsoft.com/kb/950793/en-us
      不過我在Vista下安裝時沒有碰到這個問題。
        創建.NET Compact Framework 3.5的應用程序


        好了,安裝完成后,我們是不是需要打開Visual Studio 2005開始我們的平臺定制歷程了?不,首先還是讓我們先換一臺機器。


        換機器干嘛?因為我們遇到了一個邏輯問題——.NET CF 3.5的應用程序在哪里?.NET CF 3.5的應用程序是由Visual Studio 2008開發的,而我們的Platform Builder 6.0是運行在Visual Studio 2005之上的。您可以將VS 2005和VS 2008裝在同一臺機器上,但是我沒有那么做,而是換了臺裝有VS 2008的機器,來進行下面的應用程序開發。


        需要說明的是,按照常規,我們應該先用Platform Builder 6.0構建一個CE 6.0的平臺,然后導出SDK,然后再裝有VS 2008的機器上安裝,安裝完成后再使用VS 2008開發一個針對該CE 6.0平臺的應用程序。如果真這么干,拐彎就拐到爪哇國去了。


        幸好Visual Studio 2008為我們提供了另一種方式,還是來看一下:

           

        打開Visual Studio 2008后,還是首先選擇File – New – Project菜單項。在New Project對話框中選擇Visual C#中的Smart Device,然后選擇創建Smart Device Project,名字隨便定。


        接下來的對話框對于經常看我文章的朋友也會很熟悉:


          
        只是這一次我們選擇的Target platform不是Pocket PC或者Smartphone,而是Windows CE,還要記得一定要選擇.NET CF 3.5。


        好了,接下來就進入了IDE的窗口設計器,看起來和普通的WinForm程序沒有太多區別。我們添加了三個按鈕和一個ListBox,還有兩個菜單項。

                  


        在個Button“Message”里添加下面的事件處理函數:
      private void button1_Click(object sender, EventArgs e)
      {
      MessageBox.Show("Hello,.NET CF 3.5");
      }
      我承認我沒追求,所有程序不都是從Hello World開始的嗎?為了要突出一下.NET Compact Framework 3.5的新特性,我們還要添加對于LINQ的支持:
      private void button2_Click(object sender, EventArgs e)
      {
      listBox1.Items.Clear();

      var numbers = new List<int>() { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };

      var evenNumbers =
      from p in numbers
      where (p % 2) == 0
      select p;

      foreach (var number in evenNumbers)
      listBox1.Items.Add(string.Format("{0} ", number));
      }
      關于LINQ我就不多作解釋了,記得添加System.Linq的引用,還有:
      using System.Linq;
      在添加完Linq后,我們還有一個更直接的辦法,就是版本號:
      private void button3_Click(object sender, EventArgs e)
      {
      MessageBox.Show(Environment.Version.ToString());
      }
      System.Environment中的Version屬性可以很直接的告訴我們當前運行的.NET CLR的版本號。具體細節看MSDN幫助吧。


        好了,程序編寫好了,接下來就要運行它了。但是我們的Visual Studio 2008里并沒有Windows CE的模擬器。沒辦法,只好選擇Windows Mobile 6 Professional的模擬器來跑了。


                 

        事實證明,在應用程序開發方面,Windows CE和Windows Mobile的差距的確不大。程序不但跑起來了,而且菜單還按照Windows Mobile的方式顯示到了窗體下方。

                    


        上面就是點擊Version按鈕后的運行結果,可以看到我們的.NET CLR是3.5的。
        創建支持.NET CF 3.5的OS Design
        OK,終于可以回到我們的Platform Builder里創建包含.NET CF 3.5的OS Design了。我們可以創建一個新的OS Design,或者利用已有的OS Design。
        具體方法請參考:
      革新2410D開發板試用手記(三)
      http://www.cnblogs.com/aawolf/archive/2008/06/03/1212696.html
      Windows Embedded CE 6.0開發初體驗(五)構建CE平臺
      http://www.cnblogs.com/aawolf/archive/2008/01/15/1040306.html

        當我們打開OS Design的Catalog Item View頁面。在Core OS - CEBASE – Application and Services Development下,我們可以看到.NET Compact Framework 2.0和.NET Compact Framework 3.5兩個選項。選擇.NET CF 3.5的選項和簡體中文資源,以及OS Dependencies for .NET Compact Framework 3.5的選項。
         



        當然,我們也可以在OS Design的創建向導里選擇.NET CF 3.5的組件。
        為了驗證我們的.NET CF 3.5 CLR可以良好運行,我們還需要添加一個.NET CF 3.5的應用程序。怎么添加呢?


        步,呃,從另外一臺機器上把應用程序拷過來……
        第二步,在Solution Explorer里選擇OS Design下的Parameter Files下的Project.bib文件。在《Windows Embedded CE 6.0開發初體驗(六)平臺定制》中我們詳細討論過bib文件,請參考:
      http://www.cnblogs.com/aawolf/archive/2008/02/03/1063444.html
        第三步,將.NET CF 3.5的應用程序加入到OS Design中:

        

        就一句話,簡單吧?然后就是OS Design的編譯、下載、運行和調試了。需要說明一點的是,可能由于Debug版的NK.bin太大,我一直沒有成功運行起來。不過Release版的一切正常。
               



        關于編譯和下載的話題,可以參考下面的文章:
      革新2410D開發板試用手記(六)
      http://www.cnblogs.com/aawolf/archive/2008/06/24/1228752.html
      Windows Embedded CE 6.0開發初體驗(七) 編譯和調試平臺
      http://we.cnblogs.com/article.aspx?id=20

        好了,來看一下運行結果:我們點擊了Version按鈕,顯示當前的.NET CF CLR確實是.NET CF 3.5版本。

          


        讓大家看看開發板的裸照吧(開發板本來就……)



      免費預約試聽課

      亚洲另类欧美综合久久图片区_亚洲中文字幕日产无码2020_欧美日本一区二区三区桃色视频_亚洲AⅤ天堂一区二区三区

      
      

      1. 伊人青青久精品 | 亚洲日本欧美视频 | 亚洲视频在线观看一区二区 | 制服丝袜亚洲日韩欧美在线 | 日韩国产欧美综合在线 | 久久91亚洲精品中文字幕奶水 |