Visual Studio智慧型裝置開發之C#項目常見問題

來源:互聯網
上載者:User
1.為智慧型裝置開發程式都需要哪些開發工具?    要進行智慧型裝置開發,需要Visual Studio 2005標準版或者以上版本(建議打上SP1補丁),或者Visual Studio2008的專業版或以上版本。所有的速成版都不支援智慧型裝置開發。  另外,要在Visual Studio 2008上為Windows Mobile 6開發程式,你需要先安裝Windows Mobile 6 SDK。安裝順序如下:1.如果你以前安裝過Windows Mobile 6 SDK,先把它卸載掉。2.安裝Visual Studio 2008。3.安裝Windows Mobile 6 SDK。相關問題:http://social.msdn.microsoft.com/forums/en-US/windowsmobiledev/thread/090261cd-2e2b-4649-ad75-61dbe5a23c8f/2.如何播放聲音和視頻檔案? 在.NET Compact Framework 3.5 裡面,有一個SystemSound類可以用來播放系統聲音,還有一個Sound Player類可以播放.wav音頻檔案。如果你用的是以前的版本,你可以P/Invoke 函數PlaySound 或者 SndSetSound來播放音效檔。  對於.mp3和.wmv格式的音頻檔案,你會發現在.NET CF的基礎類庫裡面沒有播放他們的類。播放它們最簡便的方法就是交給Shell: string path = "path to the audio file";ProcessStartInfo info = new ProcessStartInfo() { FileName = path, UseShellExecute = true};Process.Start(info);  另一種方法是用wmp.dll。首先在項目裡添加一對C:\windows\system32\wmp.dll的引用,然後用下面的代碼進行播放:WMPLib.WindowsMediaPlayer player = new WMPLib.WindowsMediaPlayer();player.URL = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase) + "\\song.mp3";player.settings.volume = 100;player.controls.play(); 下面說如何播放視頻。你也可以用Shell來播放視頻檔案。如果你想在自己的程式裡面整合一個 Media Player,最容易的辦法就是用第三方的控制項,比如OpenNETCF Media Player Controls。另一種方法是自己做一個這樣的控制項,但並不是那麼容易:Hosting ActiveX Controls in Compact Framework 2.0 Applications在論壇中有許多相關的問題:http://social.msdn.microsoft.com/forums/en-US/netfxcompact/thread/e2b1780d-7841-462f-9cfe-0a72d7781d5fhttp://social.msdn.microsoft.com/forums/en-US/vssmartdevicesvbcs/thread/4e35bad0-9eae-4ed8-ada5-bd249411fa1f3.智慧型裝置上的WCF都支援什嗎? 

隨著.NET Compact Framework 3.5的發布,Windows Communication Foundation (WCF) 的一部分功能被加了進來。這隻是一個子集,所以不具備案頭版的所有功能。特別地,伺服器端開發是不支援的。

  下面的連結裡面詳細介紹了智慧型裝置上的WCF所支援的特性:The WCF subset supported by NetCF   Messaging in the .NET Compact Framework4.怎樣為自訂控制項添加設計時支援?  在.NET Compact Framework裡,控制項的代碼和為控制項提供設計時支援的代碼是分裝在不同的程式集裡面的。這是與案頭版的Windows Forums不同的。包含設計時支援的程式集是為案頭編譯的,並且用一個XML檔案(.xmta)來配置。如果熟悉WPF的話你會發現它們提供設計時支援的模式是非常相似的。  關於設計時支援的資料比較少,這裡提供一些:Creating a Custom Control (Visual C#) MSDN Webcast: Creating Custom Controls for Managed Code in Visual Studio 2005 (Level 200) (Download Sampe)  下面是一個論壇裡面的相關文章:http://social.msdn.microsoft.com/forums/en-US/netfxcompact/thread/cbffc07a-5639-4c57-9e7d-1dc344a72ae5/ 5.怎樣讓我的程式識別方向和解析度?    使你的程式適應不同的外觀設定和顯示方向是非常令人興奮的特性。有一個項目叫做“Adapt Your App”,它能夠協助你開發這樣的程式。  這裡還有一些有用的文章:Step by Step: Developing Orientation-Aware and Resolution-Aware Windows Mobile-based Applications in Native CodeDeveloping DPI-Aware Applications  下面是一些相關文章:http://social.msdn.microsoft.com/forums/en-US/vssmartdevicesnative/thread/6656f82e-6de8-4fc7-8e17-61dbe6bc5f77/  http://social.msdn.microsoft.com/forums/en-US/netfxcompact/thread/13c4e7be-4172-4846-92e2-9d390ab962f4/6.怎麼攔截短訊息?  MessageInterceptor類能夠攔截滿足一定條件的短訊息,並且你可以選擇直接刪除被攔截的短訊息,或者在程式裡得到它的一份拷貝。  當裝置收到一條短訊息時,你甚至能夠讓你的程式自動啟動。在下面裡文章裡有範例程式碼:http://www.peterfoot.net/UsingMessageInterceptorToLaunchAnApplicationOnSMS.aspx  如果你發現MessageInterceptor類所提供的功能無法滿足你的需要,你可以開發一個實現了IMailRuleClient介面的非託管的Message Rule Client。詳細的方法請見下面的文章:Receiving SMS Messages inside a Managed Application7.如何開發一個kiosk 模式 (Kiosk Mode) 的應用程式?  Windows Mobile平台並不支援kiosk 模式。如果你正試圖開發一個這樣的程式的話,可能會碰到一些問題,比如在切換表單時工作列可能會閃動。  下面是一些相關文章:Supporting Kiosk-Applications on Windows Mobile ("Technically achievable" vs. "supported") Windows Mobile in Kiosk ModeWindows CE Kiosk Mode - Part 11Create a Windows CE Image That Boots to Kiosk Mode8.關於ASP.NET的問題到哪裡問?  關於為智慧型裝置開發ASP.NET程式有一個專門的論壇:http://forums.asp.net/48.aspx 。在那裡你會得到更好的協助。  
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.