Memory Information on Windows Mobile

來源:互聯網
上載者:User

    Windows Mobile裝置跟案頭PC比起來,資源是相當受限的。目前最新的裝置一般也就128M RAM+256M Flash,再外擴4G的儲存卡。但Windows Mobile裝置的資源與RAM和Flash是用Byte來計算的8bit單片機來說,還是相當可觀的,編程的時候也不用像以前那樣摳門到以Byte來計算全域變數。雖然是如此,但是程式和OS都是在RAM中啟動並執行,最鬱悶的是,由於RAM不夠大,以至於跑一些軟體時,不得不關掉正在啟動並執行程式,為其騰出一些空間來,這樣捉襟見肘的日子在以前還是經常碰到的。

  大家知道,在Windows Mobile裝置上,我們可以通過settings->system->memory來查看當前裝置資源的使用狀態,但是這個就需要動那麼幾下手,點擊螢幕,麻煩。我們一般喜歡偷懶,讓這些資訊即時顯示在今日介面上該多好啊,於是,好多公司的軟體中都將裝置資源的使用狀態即時顯示在介面上,比如Spb的,比如Resco的,很多很多。

  其實,在WM6.0 SDK內建的Sample中,就有相關的程式,它位於” \PocketPC\CPP\win32\MemWatcher”檔案夾下。這個工程是用native code寫的一個今日介面的外掛程式,編譯完以後,產生一個dll檔案和cab安裝檔案,我們可以直接將cab檔案安裝到裝置上,然後在今日介面的設定中,將它顯示。如1所示:


圖1:MemWatcher的今日外掛程式

  當然,我們也可以通過platform invoke將coredll中的GetDiskFreeSpaceEx引入進來,通過得到的Total Free Bytes和Total Bytes計算當前的資源使用方式。2所示:左邊是程式的運行效果,右邊是settings->system->memory的資訊,通過比較可以發現,他們顯示的資源資訊是一致的。

圖2:計算Memory使用的程式

  附上今日外掛程式的那個MemWatcher安裝包:memwatchercab.CAB.rar,下載後,直接將檔案命改為memwatchercab.CAB,然後在裝置上安裝即可。以及顯示資來源程式的源檔案:GetStorageCard.zip

 

參考文章:Display Device memory information with P/Invoke

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.