成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

WinCE文件目錄定制及內存調整

開發
本文介紹了WinCE文件目錄定制及內存調整的操作方法。WinCE的文件目錄結構以及文件的位置都是在DAT文件中定義的。所有的dat文件會在WinCE編譯時合并成initobj.dat文件,WinCE會根據DAT中的描述生成相應目錄。

這個說起來比較簡單,WinCE的文件目錄結構以及文件的位置都是在DAT文件中定義的。所有的dat文件會在WinCE編譯時合并成initobj.dat文件,WinCE會根據DAT中的描述生成相應目錄。

關于DAT的格式,可以參考我以前的一片文章:”WinCE BSP的DAT文件介紹”,看了就明白了。

我一般在project.dat中定制自己想要的目錄結構,舉個例子如下:

root:-Directory("Sounds")

root:-Directory("Movies")

Directory("\Movies"):-Directory("Chinese")

Directory("\Movies"):-Directory("English")

Directory("\Sounds"):-File("hello.wav", "\Windows\hello.wav")

應該比較好理解,創建兩個根文件夾Sounds和Movies,在Movies中創建兩個子文件夾Chinese和English,將hello.wav拷貝到Sounds目錄下。

編輯完project.dat以后,重新Makeimg就可以了。啟動WinCE就可以看到所創建的文件夾了。

接下來說一下WinCE內存的定制。WinCE系統可使用的內存被分為Storage Memory和Program Memory兩部分。Storage Memory用于Object Store,而Program Memory用于程序內存。

關于Object Store,在WinCE中是指一個可以永久保存數據的存儲空間,即使在掉電的情況下,數據可以在備份電源的支持下不丟失,達到永久保存的效果。其實就是一塊內存,一般包括文件系統,數據庫和系統注冊表。Object Store的最大空間不能超過256MB,其中所能包含的最大文件是32MB。Object Store中是由很多Object組成,這些Object可能是一個文件,一個數據庫,一條數據庫記錄,一個注冊表鍵,一個鍵值等。

在Object Store中,WinCE系統會分配給每一個Object一個ID,被稱為CEOID。每個Object的CEOID在Volume中都是唯一的。同樣,在Object Store中的每一個Volume也有一個ID,被稱為CEGUID,這樣使用CEGUID和CEOID就可以在Object Store中找到相應的Object了。

順便介紹個函數:

  1. BOOL CeOidGetInfoEx( PCEGUID pceguid,  CEOID oid, CEOIDINFO* poidInfo) 

調用該函數可以獲得Object Store中某個Object的信息,pceguid和oid是要查找對象的CEGUID和CEOID,poidInfo為Object的信息。

那么如何獲得CEGUID和CEOID呢?對于不同的Object類型,有不同的函數,如下:

Directory or File:FindFirstFile(..) / FindNextFile(..) / GetFileInformationByHandler(..)

Database:CeCreateDatabaseEx2(..) / CeFindNextDatabaseEx(..)

Database record:CeSeekDatabaseEx(..) / CeReadRecordPropsEx(..) / CeWriteRecordPropsEx(..)

Mounted Database volume:CeMountDBVol(..) / CeEnumDBVolumes(..)

所以,在WinCE系統中,對內存的調節就是在調整Object Store和程序內存的大小。默認情況下是Storage Memory/Program Memory各占一半。有三種方法可以實現對內存的調整:

1. 在config.bib文件中調整FSRAMPERCENT,具體如何設置在BIB文件的介紹中解釋過,這里不多說了。

2. 在OAL中調用pOEMCalcFSPages函數為Object Store分配內存。

3. 在WinCE啟動以后,進入系統的control panel,然后打開System,選擇Memory在界面中進行調整。

4. 通過函數SetSystemMemoryDivision(..)來調整。多說一句,可以通過調用GetSystemMemoryDivision(..)來獲得當前Object Store的內存使用情況。

關于Storage Memory和Program Memory的調整,主要還是看系統的需求,一般情況下Storage Memory不需要太大,可以根據自己的需要適當的調整。但是要注意,兩部分內存都不能調整的太小,調整的太小會導致數據丟失,甚至是死機,到時候只能重起系統了。

【編輯推薦】

  1. Windows CE應用程序可移植性淺析
  2. 在WinCE中獲取設備ID
  3. WinCE編譯過程的四個階段
  4. WinCE中觸摸屏驅動開發詳解
  5. 基于WinCE的液位遙測系統軟件設計
責任編輯:yangsai 來源: CSDN博客
相關推薦

2010-04-20 13:18:19

WinCE

2009-08-13 18:30:45

WinCE 6.0USB功能定制

2009-09-28 10:28:04

Linux刪除目錄子目錄

2010-04-27 16:25:53

AIX內存

2021-03-07 13:00:47

Linux終端外觀

2010-03-02 15:59:41

WinCE

2021-05-06 16:35:12

網絡安全網絡安全編程文件補丁

2009-08-13 14:21:04

.NET內存映射文件

2010-10-28 15:15:08

oracle內存參數

2011-03-22 16:28:25

lamp

2021-02-19 08:05:38

Linux命令系統

2019-01-29 10:43:59

Linux 系統 數據

2010-05-24 10:01:34

SWaP文件

2011-06-20 10:14:45

漢柏科技路由

2015-12-02 10:21:34

JavaScript浮點數精度調整

2010-03-12 18:42:58

Python目錄

2020-07-23 08:22:02

Android權限谷歌

2010-01-13 13:50:53

CentOS Vsft

2016-11-11 20:54:37

2011-05-17 10:04:18

Python
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 一区亚洲 | 天天插天天操 | 久久一级| 国产精品www| 亚洲国产精品久久久 | 欧美日韩在线一区二区三区 | 亚洲精选一区二区 | 亚洲一区中文 | 久久久久久成人 | 欧美成人精品一区 | 成人国产一区二区三区精品麻豆 | 久久免费精品 | 免费在线观看成人 | 一区二区三区在线观看视频 | 亚洲视频一区在线观看 | 午夜免费 | 国产成人免费视频网站高清观看视频 | 欧美日韩在线看 | 狠狠做深爱婷婷综合一区 | 日韩视频1 | 精品乱码一区二区三四区 | 成人一区二区三区 | 久久99这里只有精品 | 国产一区91精品张津瑜 | 激情综合五月 | 一级做a爰片性色毛片16 | 久久综合久久久 | 一级毛片视频在线 | 亚洲一级黄色 | 91国内在线观看 | 久久精品欧美一区二区三区不卡 | 欧美激情视频网站 | 欧美在线一区二区三区 | 91视频在线 | 国产精品99久久久久久www | 欧美中文字幕一区二区三区 | 国产精品久久在线 | 久久夜夜 | 一级欧美 | 日韩成人在线免费观看 | 欧美精品欧美精品系列 |