日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

WINCE6.0添加特定的软件键盘

發(fā)布時(shí)間:2025/4/16 53 豆豆
生活随笔 收集整理的這篇文章主要介紹了 WINCE6.0添加特定的软件键盘 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

*******************************LoongEmbedded********************************

作者:LoongEmbedded

時(shí)間:2010.12.05

類別:WINCE應(yīng)用開(kāi)發(fā)********************************LoongEmbedded********************************

?

前天因客戶的需要,需要在WINCE6.0的系統(tǒng)中添加以色列語(yǔ)言的鍵盤到系統(tǒng)中,本以為是很簡(jiǎn)單的事情,因?yàn)橹霸?/span>WINCE5.0下也有做過(guò)在系統(tǒng)中增加鍵盤的經(jīng)歷了,所需要的工作如下:

1.?????? plarform.bib中加入下面的內(nèi)容:

IF BSP_HEBREW

LargeKB.dll?? ???????? $(_FLATRELEASEDIR)/LargeKB.dll????????????????????? NK? SHK?

SmallKB.dll? ??????????? $(_FLATRELEASEDIR)/SmallKB.dll????????????????????? NK? SHK

ENDIF BSP_HEBREW

在這里環(huán)境變量來(lái)根據(jù)項(xiàng)目需要是否在系統(tǒng)中包含這兩個(gè)鍵盤。

?

2.?????? platform.reg中加入下面的內(nèi)容:

IF BSP_HEBREW

;;;;;;;;;;;;;;;;;;;;;;;;;;add for largeKB;;;;;;;;;;;;;;;;;;;;;;;

[HKEY_CLASSES_ROOT/CLSID/{A523DFC7-1A7E-4AF6-991A-510E75847929}]

@="LargeKB"

?

[HKEY_CLASSES_ROOT/CLSID/{A523DFC7-1A7E-4AF6-991A-510E75847929}/DefaultIcon]

@="//windows//LargeKB.dll"

?

[HKEY_CLASSES_ROOT/CLSID/{A523DFC7-1A7E-4AF6-991A-510E75847929}/InprocServer32]

@="//windows//LargeKB.dll"

?

[HKEY_CLASSES_ROOT/CLSID/{A523DFC7-1A7E-4AF6-991A-510E75847929}/IsSIPInputMethod]

@="1"

?

;;;;;;;;;;;;;;;;;;;;;;;;;add for smallKB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[HKEY_CLASSES_ROOT/CLSID/{A523DFC7-1A7E-4AF6-991A-510E75847729}]

@="SmallKB"

?

[HKEY_CLASSES_ROOT/CLSID/{A523DFC7-1A7E-4AF6-991A-510E75847729}/DefaultIcon]

@="//windows//SmallKB.dll"

?

[HKEY_CLASSES_ROOT/CLSID/{A523DFC7-1A7E-4AF6-991A-510E75847729}/InprocServer32]

@="//windows//SmallKB.dll"

?

[HKEY_CLASSES_ROOT/CLSID/{A523DFC7-1A7E-4AF6-991A-510E75847729}/IsSIPInputMethod]

@="1"

?

ENDIF BSP_HEBREW

?

3.?????? LargeKB.dllSmallKB.dll拷貝到release的目錄下。

4.?????? 編譯生成NK.bin并且更新NK,在新的系統(tǒng)中點(diǎn)擊屏右下角的輸入法和鍵盤的圖標(biāo),有kyeboard(系統(tǒng)自帶的)LargeKBSmallKB這三種鍵盤,默認(rèn)選擇的是keyboard,但是我要選擇LargeKB或是SmallKB的時(shí)候,沒(méi)有反應(yīng),彈出來(lái)的還是keyboardinput panel,為什么呢?一時(shí)不知道原因,因?yàn)槲以?/span>WINCE5.0中驗(yàn)證過(guò)這兩種鍵盤是可用的了。而kyboard這個(gè)系統(tǒng)自帶的input panel是可以正常使用,就到common.reg中查找這個(gè)鍵盤的相關(guān)內(nèi)容,如下:

; SIP IM values

; Default keyboard initial delay and autorepeat

[HKEY_CURRENT_USER/ControlPanel/Keybd]

"InitialDelay"=dword:177

"RepeatRate"=dword:8

?

[HKEY_CLASSES_ROOT/CLSID/{42429667-ae04-11d0-a4f8-00aa00a749b9}]

@=LOC_KEYBOARD

"KBMode"=dword:5

[HKEY_CLASSES_ROOT/CLSID/{42429667-ae04-11d0-a4f8-00aa00a749b9}/InprocServer32]

@="//windows//msim.dll"

[HKEY_CLASSES_ROOT/CLSID/{42429667-ae04-11d0-a4f8-00aa00a749b9}/IsSIPInputMethod]

@="1"

[HKEY_CLASSES_ROOT/CLSID/{42429667-ae04-11d0-a4f8-00aa00a749b9}/DefaultIcon]

@="//windows//msim.dll,0"

比較之后知道我的platform.reg中上面的內(nèi)容正確的,那問(wèn)題可能會(huì)在哪里呢?通過(guò)msim.dll來(lái)找到keyboardplatorm.bib中相關(guān)內(nèi)容如下:

; @CESYSGEN IF CE_MODULES_MSIM

??? msim.dll??????? $(_FLATRELEASEDIR)/msim.dll???????????????????? NK? SH

; @CESYSGEN ENDIF

經(jīng)過(guò)比較才發(fā)現(xiàn)msim.dll后面對(duì)應(yīng)的是SH,而不是SHK,發(fā)現(xiàn)這個(gè)問(wèn)題后才忽然醒悟鍵盤是應(yīng)用程序dll,不屬于內(nèi)核態(tài),所以不能是SHK。就這樣,把第1步中的SHK都改為SH后就正常使用那兩個(gè)鍵盤了。

?

?

總結(jié)

以上是生活随笔為你收集整理的WINCE6.0添加特定的软件键盘的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。