阅读:1849回复:7
WinCe驱动开发
本人请问,在PDA中的PCMCIA的驱动程序中,DETECT开头的函数的作用,以及用可以有EVC写该函数的例程吗?
|
|
论坛版主
|
沙发#
发布于:2004-09-13 13:00
这些函数的定义是谁给的?可能不是标准的ce的api或接口,可能你需要仔细看那些源代码了,
|
|
板凳#
发布于:2004-09-14 11:32
谢谢回复,这是NI的驱动例子。
在PDA的注册表里PCMCIA主键下,有DETECT子键,这个键主要用于什么呀? LPWSTR DetectNI( CARD_SOCKET_HANDLE hSock, UCHAR DevType, LPWSTR DevKey, DWORD DevKeyLen ) { LPWSTR lpRet; lpRet = DevKey; if (DevType == PCCARD_TYPE_UNKNOWN){ wcscpy(DevKey, TEXT("RLP")); lastSocketDetected = hSock.uSocket; }else{ wcscpy(DevKey, TEXT("")); } return lpRet; } 麻烦帮忙一下 |
|
地板#
发布于:2004-09-14 12:52
应该是上电检测
|
|
论坛版主
|
地下室#
发布于:2004-09-14 13:35
:)正如楼上的兄弟说的,我们猜猜看吧:)
我觉得好像是对pcmcia插入的卡类型进行检测,如果是不认识的,就用默认值住册表rlp下的信息来配置 你可以看看那个键值下有些什么,应该看得出来是干什么的 |
|
5楼#
发布于:2004-09-15 16:36
键值就是那个函数名
|
|
6楼#
发布于:2004-10-12 11:18
用detect开头的函数负责判断设备类型。PCMCIA总线驱动利用键HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Detect下的子键所指示的,不同的detect函数,来确定那些不认识的PCMCIA卡需要的驱动。当detect函数返回成功,则与之对应的PCMCIA客户驱动就是该设备需要的。
例如: ; @CESYSGEN IF CE_MODULES_SERIAL [HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Detect\10] "Dll"="xsc1bd_Serial.Dll" "Entry"="DetectModem" ; @CESYSGEN ENDIF CE_MODULES_SERIAL 如果DetectModem返回成功,则xsc1bd_Serial.Dll为该设备使用的客户驱动。 PCMCIA总线驱动是在PC卡没有PnP ID或PC卡的PnP ID在Drivers\PCMCIA键下没有对应的子键时才调用detect函数的。 大家共同探讨吧。 |
|
|
7楼#
发布于:2004-10-13 09:25
感谢楼上各位兄弟姐妹。
|
|