欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
我的第一個(gè)WinCE驅動(dòng)--流式驅動(dòng)【轉】

轉做WinCE驅動(dòng)已經(jīng)有兩個(gè)月了,卻沒(méi)有做過(guò)一個(gè)真正的WinCE平臺下的驅動(dòng),心里都有些急了,很想嘗試下,好盡快融入WinCE驅動(dòng)開(kāi)發(fā)這個(gè)團隊。

頭兒也很理解,給了俺個(gè)簡(jiǎn)單的,可以說(shuō)是非常簡(jiǎn)單的任務(wù),好讓俺找找入門(mén)的感覺(jué),就是做一個(gè)FM的驅動(dòng)。

由于WinCE下的驅動(dòng)大多是基于流接口的,所以偶也采用了流接口,做比較起來(lái)簡(jiǎn)單,呵呵

說(shuō)白了,流接口就是實(shí)現以下幾個(gè)接口:

BOOL WINAPI DllMain(HANDLE hInstDll, DWORD dwReason, LPVOID lpvReserved);

DWORD XXX_Init(LPCTSTR pContext, LPCVOID lpvBusContext);

BOOL XXX_Deinit(DWORD hDeviceContext);

DWORD XXX_Open(DWORD hDeviceContext, DWORD AccessCode, DWORD ShareMode);

BOOL XXX_Close(DWORD hOpenContext);

BOOL XXX_PowerUp(DWORD hDeviceContext); BOOL XXX_PowerDown(DWORD hDeviceContext);

BOOL XXX_PowerDown(DWORD hDeviceContext);

DWORD XXX_Read(DWORD hOpenContext, LPVOID pBuffer, DWORD Count);

DWORD XXX_Write(DWORD hOpenContext, LPCVOID pBuffer, DWORD Count);

DWORD XXX_Seek(DWORD hOpenContext, long Amount, WORD Type);

BOOL XXX_IOControl(DWORD hOpenContext, DWORD dwCode, PBYTE pBufIn, DWORD dwLenIn,
              PBYTE pBufOut, DWORD dwLenOut,
              PDWORD pdwActualOut);

XXX是任意的大寫(xiě)字符串(只能是三個(gè)字符,偶剛開(kāi)始用的FM,后面回出問(wèn)題),且保證與注冊表Prefix項后的一樣哦

把以上接口給實(shí)現了,接下來(lái)就是弄注冊表咯

在注冊表中添加如下項目。(一般放在Platform.reg)
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\DevName]
"Prefix"="XXX"
"Dll"="MyDev.Dll"
"Order"=dword:1


然后在BIB文件中添加項目,將所用到的文件加入BIN文件(一般放在Platform.bib)。
    MyDev.dll     $(_FLATRELEASEDIR)\MyDev.dll     NK SH

注:
DevName為任意與其它項目不重名的字符串.

在platform/你的平臺(如:smdk2410)/drivers 下新建一個(gè)目錄(偶的是FM),然后在drivers目錄中的dirs文件中加入以你剛新建的目錄名。
    在剛新建的目錄下,新建你的C源代碼文件,在其中實(shí)現上面所述的函數,及其功能。新建名稱(chēng)分別為sources, makefile, mydev.def的文件。
其內容如下:
    makefile: 只需要這樣一行
!INCLUDE $(_MAKEENVROOT)\makefile.def

mydriver.def文件定義需要輸出的函數,這些函數能夠被其它代碼用動(dòng)態(tài)加載的方法調用。格式:

LIBRARY     MyDev(這個(gè)字符串要和將要生成的動(dòng)態(tài)庫的文件名一樣)

EXPORTS
    XXX_Init
    XXX_Deinit
    XXX_Open
    XXX_Close
    XXX_PowerOff
    XXX_PowerDown
    XXX_Read
    XXX_Write
    XXX_Seek
    XXX_IOControl

Sources:這個(gè)文件很重要,內容也多,最基本的一個(gè)文件該有如下內容。

TARGETNAME=MyDev(指定要生成的動(dòng)態(tài)庫的名稱(chēng))
TARGETTYPE=DYNLINK(指定要生成的是一個(gè)動(dòng)態(tài)庫)

(下面兩項指定需要與哪些動(dòng)態(tài)庫鏈接,一般要第一項就足夠了)
TARGETLIBS=$(_COMMONSDKROOT)\lib\$(_CPUINDPATH)\coredll.lib \
              $(_COMMONOAKROOT)\lib\$(_CPUINDPATH)\ceddk.lib

DEFFILE=MyDev.def (指定def文件)

DLLENTRY=DllEntry(指定動(dòng)態(tài)庫的入口函數)

SOURCES=(請在這寫(xiě)上你所有源文件的名字,它們將會(huì )被編譯)

一個(gè)流驅動(dòng)就大功告成咯~~~~~~

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
基于WINCE6.0的nandflash驅動(dòng)(基于K9F1G08U0B) - LoongE...
怎樣將一個(gè)驅動(dòng)加入WINCE中 - WINCE - sparkle-cliz
如何把一個(gè)靜態(tài)庫轉化為動(dòng)態(tài)庫 | 學(xué)步園
C 調用靜態(tài)庫和動(dòng)態(tài)庫
wince中的定時(shí)關(guān)機的實(shí)現
WinCE 下串口類(lèi)
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久