發表文章

目前顯示的是 12月, 2008的文章

使用VS2008 搭配 sql compact V3.5 SP1 要留意版本

Sql server compact edition 是微軟對於資料庫的另一種解決方案,而當你預計使用是sqlCE V3.5 SP1的時候要留意一下版本的問題,尤其是開發裝置應用程式的時候;我自己目前是使用VS2008在開發,VS2008也裝了SP1,原先以為這樣我的開發也升級到SP1的版本了.. 事情就這麼發生了.. 好,我們來解決問題吧,首先要確認你的裝置上SqlCE的版本,可以用登錄檔編輯器到下面位置看板本 \HKEY_LOCAL_MACHINE\SPFTWARE\MICROSOFT\MICROSOFT SQL SERVER COMPACT EDITION\V3.5 SP1的版本號是3.5.5692.0,如果你是3.5.5382.0那麼就是V3.5不含SP1的版本;確認完版本正確之後,我們到微軟的網站下載SP1的安裝檔,位置是 http://www.microsoft.com/downloads/details.aspx?familyid=FCE9ABBF-F807-45D6-A457-AB5615001C8F&displaylang=zh-tw ,那麼要怎麼確認開發電腦裝過了沒呢?可以到下面位置看DLL的版本 C:\Program Files\Microsoft SQL Server Compact Edition\v3.5\Devices\System.Data.SqlServerCe.dll 還沒有安裝過SP1的話這個dll會是3.5.5386.0,安裝完畢就會看到相關檔案升級了;好,環境裝好了之後記得要到你的專案裡面把相關的參考給更新喔;大功告成,收工。 另外,如果想知道為什麼VS2008 SP1裡面沒有幫含這部分的話,可以參考下面這邊 http://blogs.msdn.com/stevelasker/archive/2008/08/13/why-doesn-t-visual-studio-2008-sp1-installer-update-sql-server-compact-3-5-for-devices.aspx  

How-to 單一執行個體的裝置應用程式(CE)

一般PC的應用程式在專案屬性中就有一個樣目可以勾選目前這個應用程式是不是"只能夠執行一次",而到了裝置專案中,卻沒有這個項目可以用,那麼該怎麼辦呢? 首先是一些參考資料,下面提到的解決方式也是利用搜尋來的;利用"PrevInstance"的關鍵字到MSDN上去搜尋就會有很多資料可以參考了,相關網址是這邊 http://social.msdn.microsoft.com/Search/zh-TW/?query=PrevInstance&addEnglish=1&ac=3 再來我們看看解決方式,首先再專案屬性中的"起始物件"我們要設定成"Sub Main",之後新增一個模組,模組內要包含Sub Main這個"方法"喔,之後利用下面程式碼的方式就可以了(這邊說明以VB為主,用C#的朋友請自行轉換一下) Declare Function FindWindow Lib "coredll.dll" (ByVal className As Char(), ByVal WindowsName As Char()) As Integer Declare Function SetForegroundWindow Lib "coredll.dll" (ByVal hwnd As Integer) As Boolean Public Sub Main() Dim hWnd As Integer hWnd = FindWindow(Nothing, "你的應用程式標題名稱".ToCharArray) If hWnd <> 0 Then SetForegroundWindow(hWnd) Application.Exit() Exit Sub Else Application.Run(New Form1) End If End Sub

How-to 抓取CE裝置的畫面

圖片
一般如果說我們要抓取裝置(mobile)的畫面的時候會先用ActiveSync跟裝置連線,之後使用Remote Tool中的"遠端放大工具來抓畫面,那麼如果說我的裝置是透過Tcp/IP連接的,那怎麼辦? 請你跟我這樣做 ~ 首先,跟要進行遠端偵錯時同樣的動作,我們需要將相關的檔案先複製到裝置上;偵錯所需的檔案有哪些呢?請到 C:\Program Files\Common Files\microsoft shared\CoreCon\1.0\Target\wce400資料夾中,你會看到很多資料夾,依照你使用的CPU類型將資料夾裡面的檔案複製一份到裝置上,等一下我們會用到這些檔案。 之後開啟你的Visual Studio,VS2008和VS2005過程是一樣的,Visual Studio開啟之後選擇功能表"工具"-->"選項",之後在右邊列表找到Windows CE裝置,之後選擇"屬性",在傳輸部分是選$擇"TCP連接傳輸",右邊有一個"設定"按鈕,點下去之後將裝置IP位址設定為"使用特定IP位址",並在下方設定你的裝置IP,像下圖這樣 IP設定好了之後就可以將Visual Studio關閉了;之後執行 Remote Tool,你可以在下面這邊找到相關工具 執行遠端放大工具後會看到像下面的畫面 先別急著點OK,我們還要到裝置上執行相關的工具程式; a. 開啟你的Windows CE裝置(在CE裝置上操作),利用檔案總管進到之前一開始複製檔案的地方,先執行"ConmanClient2.exe",之後執行"CMAccept.exe",這兩個執行後都是沒有介面(UI)會跑出來的,所以確定有去執行它就可以了 在3分鐘之內(第一次連接做驗證有3分鐘限制,連接上之後就沒關係),按下遠端放大工具的OK鈕就會從TCP/IP去對裝置作連線並抓取目前畫面,要注意的是只會抓一張,按下refresh會重抓;抓下來會像下面這樣 大功告成,相關的Remote Tool要使用時也是比照辦理的方式嚕 ~