以deviceemulator為例,我們已經知道framebuffer的實體地址是0x30100000,大小為0x100000。那麼在應用程式中可以通過如下**,直接獲取操作framebuffer的機會。
1char
*gplcdbuf;
2gplcdbuf =(
char
*)virtualalloc(null,
0x100000
,mem_reserve,page_noaccess);
3virtualcopy(gplcdbuf, (
void*)(
0x30100000
/256
), 0x100000
, page_readwrite
|page_physical
|page_nocache);
4memset(gplcdbuf,
0xff
,0x100000
);
5virtualfree(gplcdbuf,
0,mem_release);
以上示例**是將螢幕刷白,當然也可以將它刷黑,或者其他純色,這樣便可以做乙個wince5.0下測試lcd的小工具了。
在編譯以上**時,需要包括標頭檔案pkfuncs.h。編譯時還可能會出現如下錯誤,
c:\wince600\public\common\oak\inc\pkfuncs.h(1042) : error c2065: 'reg_type' : undeclared identifier
簡單的處理方法就是在**中新增乙個巨集定義,如下,
#define reg_type dword
對話方塊的全屏顯示,可以通過如下**實現,
1dword dwwidth
=getsystemmetrics(sm_cxscreen);
2dword dwheight
=getsystemmetrics(sm_cyscreen);34
::setwindowpos(
this
->
m_hwnd,hwnd_topmost,0,
0,dwwidth,dwheight,ws_ex_topmost);
WINCE5 0應用程式字型的動態載入
大家知道,字型檔案對於wince系統來說,一般都比較龐大,一般在2mb 15mb之間,如果在wince的nk中定製幾種字型或者大容量字型,勢必會增加nk的大小,這對嵌入式系統是不現實的。好在wince系統提供了動態載入字型的api addfontresource,利用這個api函式,我們可以動態載入...
wince5 0 中斷 詳解
原帖位址http topic.csdn.net u 20071008 11 d54df4a6 09ef 4d7f aadb 2f60ff3824fc.html 1 wince中第一次對中斷的處理是在oal的oeminit 中,該函式呼叫oalintrinit 完成對中斷的初始化.2 oalintri...
wince5 0 中斷 詳解
原帖位址http topic.csdn.net u 20071008 11 d54df4a6 09ef 4d7f aadb 2f60ff3824fc.html 1 wince中第一次對中斷的處理是在oal的oeminit 中,該函式呼叫oalintrinit 完成對中斷的初始化.2 oalintri...