版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
嵌入式操作系統(tǒng)原第八章內(nèi)容概獨(dú)特的WindowsWindowsCE編程基WindowsCE編程技獨(dú)特的Windows微處理器多CE不運(yùn)行現(xiàn)有的CE有嚴(yán)格的內(nèi)存CE文件I/O的差微處理器多樣 CE 的CE不運(yùn)行現(xiàn)有的程字符集的區(qū)別,Windows2000支持Unicode和ANSIWindows98只支持ANSI,WinCE使用供的功能類似菜單和,以減少占用屏幕的CE有嚴(yán)格的內(nèi)存限每個(gè)槽CE硬件并不十分標(biāo)準(zhǔn) WindowsCE編程基Windows消息處理創(chuàng)建Win32應(yīng)用程診斷輸出文件Windows消息處理機(jī)Widos發(fā)送該消息Windows消息處理機(jī)制代碼示代碼來(lái)源: WindowssCE.NET3rdedition, #definedim(x)//定義一個(gè)結(jié)構(gòu)體structdecodeUINT{UINTCode//消息//處理函LRESULT intHWNDintLRESULTCALLBACK LRESULTDoPaintMain(HWND,UINT, LRESULTDoKeysMain(HWND,UINT, #include<windows.h>#include"KeyTrac.h"#include<commctrl.h>constTCHARszAppName[HINSTANCEhInst;TCHARconststructdecodeUINTMainMessages[ intWINAPIWinMain(HINSTANCEhInstance//程序的句柄HINSTANCEhPrevInstance, intnCmdShow)){MSGmsg//intHWNDhwndMain;//主窗口rc=InitApp(hInstance);// if(rc)returnrc;return0x10; wc.hInstance=hInstance;//句柄wc.lpszClassName=szAppName;//程序名 return {MSGmsg//intHWNDhwndMain;//主窗口rc=InitApp(hInstance);// if(rc)returnrc;return0x10; lpCmdLine,intnShowCmd) HWNDhWnd;hWnd=CreateWindow(szAppName,TEXT("KeyTrac"),
/*WindowsInitInstance{MSGmsg//intHWNDhwndMain;//主窗口rc=InitApp(hInstance);// if(rc)returnrc;/*開(kāi)始接收操作系統(tǒng)消息,直到得到消息WM_QUITGetMessage函數(shù)返回0,退出循環(huán));息 essage(&msg);/*窗口過(guò)程,在此程序中就是調(diào)用MainWndProc}returnTermInstance(hInstance,msg. ram);/*清理工}LRESULTCALLBACKMainWndProc(HWNDUINT ram,LPARAM{inti; }return }的清理工作;以下是消息處理函數(shù),省略細(xì)節(jié)*/LRESULTDoCreateMain(HWNDhWnd,UINT ram,LPARAMlParam) LRESULTDoPaintMain(HWNDhWnd,UINT ram,LPARAMlParam) ……LRESULTDoKeysMain(HWND ram,LPARAM ……LRESULTDoDestroyMain(HWNDhWnd,UINT ram,LPARAMlParam) ……Windows消息處理創(chuàng)建Win32應(yīng)用程診斷輸出文件創(chuàng)建Win32應(yīng)用程序創(chuàng)建Win32應(yīng)用程序WindowsCE應(yīng)用程序的類到一起進(jìn)行編譯構(gòu)造應(yīng)用程序WindowsCE應(yīng)用程序可得到程序入口點(diǎn)WinMainWindowsCE系統(tǒng),因?yàn)樽詈蟮倪x項(xiàng)(即典型oWorld應(yīng) oWorld應(yīng)用程‘oWorld’應(yīng)用程序創(chuàng)建Win32應(yīng)用程 tformBuilder修改PROJECT.BIB文通常是可執(zhí)行程序,默認(rèn)為XIP(就地執(zhí)行此部分的文件通常是包含靜態(tài)數(shù)據(jù)此部分的文件為壓Windows消息處理創(chuàng)建Win32應(yīng)用程診斷輸出文件Unicode具備的字符和字符串的編寫(xiě)Unicode源代Unicode具備的功提高應(yīng)用程序的字符和字符串的不同表ANSI– o o為w_char(unsigned o編寫(xiě)Unicode源代C運(yùn)行時(shí)庫(kù)對(duì)Unicode的支Windows定義的Unicode數(shù)據(jù)類Windows中的Unicode函數(shù)和ANSIWindows字符串為適應(yīng)Unicode,編寫(xiě)應(yīng)用程序的Unicode和ANSI之間的C運(yùn)行時(shí)庫(kù)對(duì)Unicode的支typedefunsignedshortwchar_t;函數(shù)用于對(duì)Unicode字符串進(jìn)行操作。C運(yùn)行時(shí)庫(kù)字符串函數(shù)比wcslen_tcslenwcscmp_tcscmpstrcpywcscpy_tcscpystrcatwcscat_tcscatC運(yùn)行時(shí)庫(kù)的轉(zhuǎn)換函從Unicode轉(zhuǎn)換成 下:typedefwchar_tTCHAR,否則TCHAR 如下:typedefchar應(yīng)使用_TEXT(“string”)ANSI/Unicode 針 在Windows中很多函數(shù)都有兩個(gè)版本,一個(gè)ANSI版本,一HWNDWINAPICreateWindowExW(……);//UnicodeHWNDWINAPICreateWindowExA(……);//ANSI但是代碼中只需使用WINAPICreateWindowEx就可以了,#ifdefWindows字符串函作的函數(shù):lstrcatlstrcmplstrcmpilstrcpy、為適應(yīng)編寫(xiě)應(yīng)用程序的一些原執(zhí)行全局性替換(例如用PTSTR替換intUINTuCodePage,DWORDdwFlags,PCSTRpMultiByte,//要轉(zhuǎn)換的字符串指針intc PWSTRpWideCharStr,/*轉(zhuǎn)換后的Unicode字符串intcchWideChar);/*轉(zhuǎn)換后的Unicode字符串緩DWORDdwFlags,PWSTRpWideCharStr,/*需轉(zhuǎn)換的Unicode字符串緩intcchWideChar,/*要轉(zhuǎn)換的字符串長(zhǎng)度(以字符數(shù)計(jì)int 節(jié)計(jì)算PBOOLpfUsedDefaultChar);/*是否使用默認(rèn)字符*/Windows消息處理創(chuàng)建Win32應(yīng)用診斷輸出文件診斷輸出顯示信息窗必須在包含GWES模塊的系統(tǒng)中才能例在調(diào)試器中設(shè)定格式可以在任何地方例Windows消息處理創(chuàng)建Win32應(yīng)用程診斷輸出文件文件 使用GetModuleFileName()函數(shù)得到應(yīng)用程Memory-Mapped在WindowsCE上使用時(shí),比傳統(tǒng)的文件讀寫(xiě)操作速度Native 使用VisualManaged 使用StudioManagedapplicationVSNativeapplicationde開(kāi)發(fā)環(huán)境比EmbeddedVisual直接編譯C/C++代碼到CPU指可使用Win32API存取WindowsCE FoundationClasses)及ATL(ActiveTem teLibrary)庫(kù)函數(shù)Visual不直接使用Win32API,而使用.NETCompactNative應(yīng)用程序開(kāi) DevelopmentKit)使用eVC進(jìn)行開(kāi)發(fā)前要安裝使 tform導(dǎo)出關(guān)于SDK包含了一個(gè)特定平臺(tái)的所有函導(dǎo)出的SDK是一個(gè)Windows安裝程序(.msi文件Micorosoft提供了一些SDK,如StandardSDK、PocketOAL(OEMAdaptionLayer)、和設(shè)備驅(qū)動(dòng)程序關(guān)于只要工作站上有eVCSDK,而不必要安 tform使 tform 使 工具連接目標(biāo)平tformManager tformBuilder創(chuàng)建,并包含EmbeddedVisualC++的主要組
EmbeddedVisualC++開(kāi)發(fā)環(huán)境菜單工作窗
編輯窗輸出窗Managed應(yīng)用程序開(kāi)VisualStudio.NET介設(shè)備和桌面代碼VisualStudio.智能設(shè)備擴(kuò)展.NETCompact編程Visual同寫(xiě)桌面PCManaged應(yīng)用程序?qū)傩詾g覽器僅列出了.NETCompact智能設(shè)備擴(kuò)包含了一系列預(yù)建的設(shè)備模型包含了設(shè)備開(kāi).NETCompact是.NET的運(yùn)行時(shí)支編程語(yǔ)VisualBasic是VisualBasicVisualStudio.NET介設(shè)備和桌面代碼設(shè)備和桌面代碼兼性能調(diào)整和執(zhí)行底層操作系統(tǒng)傳統(tǒng)交硬件假屏幕性能調(diào)整和執(zhí)行速由于空間的限制,嵌入式設(shè)備的.NET執(zhí)行引擎兼顧速度的同時(shí),考慮空間底層操作系統(tǒng)函很多.NETFramework類是底層操作系統(tǒng)函當(dāng)某些底層函數(shù)在WindowsCENET中不支持時(shí),在CompactFramework中會(huì)刪除傳統(tǒng)交運(yùn)行在WindowsCE上的應(yīng)用程序在表格中不能使用InternetExplorer和EmbeddedVisualBasic3.0不能像Managed應(yīng)用程序不能調(diào)用需要callback函數(shù)的硬件假屏幕大是硬件假設(shè)的一 WindowsCE.NET幕.NETCompactFramework概XMLandXMLWeb
WinForms的使public {publicstaticvoid{Formfrm=newForm();Labellbl=newLabel();lbl.Text=" oworld";}}ADO在設(shè)備自 服務(wù)器SQL服務(wù)器創(chuàng)建不支持DoesOLEDB和XMLandWeb服向WindowsCE設(shè)備增支包含Compactframework向WindowsCE設(shè)備增支 Native文件對(duì)每個(gè)設(shè)備是不同的,因?yàn)樗鼈兪轻槍?duì)CPUManaged文件對(duì)每個(gè)設(shè)備都是相使 tformBuilder將.NETCompactframework組件包括在你映象要在映象中包含.NETCompactFramework組件應(yīng)該將以下從catalog拖入你的.NETCompact將文件拷貝到設(shè)備的總獨(dú)特的Windows微處理器多樣CE不運(yùn)行現(xiàn)有的CE有嚴(yán)格的內(nèi)存CE硬件并不十分標(biāo)文件I/O的差WindowsCEWindows消息處理機(jī)創(chuàng)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 專業(yè)保潔服務(wù)定制協(xié)議范本(2024版)版B版
- 2024年規(guī)范版回遷房屋交易協(xié)議版
- 2024年短期融資過(guò)橋擔(dān)保合同版B版
- 萬(wàn)達(dá)商業(yè)廣場(chǎng)2024年物業(yè)運(yùn)營(yíng)管理合同版
- 2025年度大棚建筑智能監(jiān)控系統(tǒng)開(kāi)發(fā)與應(yīng)用合同3篇
- 專業(yè)定制股東合作框架合同(2024年版)一
- 長(zhǎng)春醫(yī)學(xué)高等??茖W(xué)校《資本運(yùn)營(yíng)與公司治理》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024年甲方與乙方設(shè)備租賃合同
- 服裝行業(yè)顧問(wèn)工作總結(jié)
- 2024最簡(jiǎn)單的汽油購(gòu)銷合同范本
- Invoice商業(yè)發(fā)票模板
- 污廢水處理設(shè)施運(yùn)行管理課件
- 業(yè)務(wù)下單流程標(biāo)準(zhǔn)規(guī)范
- “家園”協(xié)力小班幼兒勞動(dòng)教育的實(shí)踐研究 論文
- 集料摻配比例自動(dòng)計(jì)算系統(tǒng)L1.0(試算法)
- 科學(xué)版二年級(jí)《游戲迎面接力跑》評(píng)課稿
- 信訪事項(xiàng)復(fù)查申請(qǐng)書(shū)
- 巡檢記錄表巡檢記錄表
- 小學(xué)生家長(zhǎng)教育焦慮調(diào)查問(wèn)卷
- 施工方案水泥廠(總)
- 客服年終總結(jié)不足之處及改進(jìn)計(jì)劃(五篇)
評(píng)論
0/150
提交評(píng)論