2761|4

92

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

驱动dll的问题 [复制链接]

在编译一个驱动dll后按照如下方法绑定到nb0中:
在project.reg中添加:
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\MyDriver]
        "Dll"="MyDriver.dll"
        "Prefix"="XXX"
        "Index"=dword:1
        "Order"=dword:0
        "Ioctl"=dword:0
在project.bib中添加:
MODULES
;  Name            Path                                           Memory Type
;  --------------  ---------------------------------------------  -----------
        MyDriver.dll                                $(_FLATRELEASEDIR)\MyDriver.dll                NK         SH       

在makeimage时出现如下信息:
Windows CE ROM Image Builder v4.0.000 Copyright (c) Microsoft Corporation
Built: Aug 19 2003 11:01:23
Warning: Found duplicate entry 'MyDriver.dll   NK               E:\WINCE420\PUBLIC\newboard\TERM24~1\MyDriver\SAMSUNG_SMDK2440__ARMV4IRel\MyDriver.dll 00000007' ... skipping
Warning: Found duplicate entry 'MyDriver.dll   NK               E:\WINCE420\PUBLIC\newboard\Term2440I\RelDir\SAMSUN~1\MyDriver.dll 00000007' ... skipping
Warning: Found duplicate entry 'ndis.dll       NK               E:\WINCE420\PUBLIC\newboard\Term2440I\RelDir\SAMSUN~1\ndis.dll 00000007' ... skipping
Copying E:\WINCE420\PUBLIC\newboard\Term2440I\RelDir\SAMSUN~1\kern.exe to E:\WINCE420\PUBLIC\newboard\Term2440I\RelDir\SAMSUN~1\nk.exe for debugger
Copying E:\WINCE420\PUBLIC\newboard\Term2440I\RelDir\SAMSUN~1\KbdNopUs.dll to E:\WINCE420\PUBLIC\newboard\Term2440I\RelDir\SAMSUN~1\kbdmouse.dll for debugger
Pass 1...
Warning: .rel files are required to load the code section of modules into slot 1
         and therefor freeing up more virtual memory space in slot 0.
Warning: No .rel file found for module MyDriver.dll, using old fixup style.
Warning: No .rel file found for module dm9000.dll, using old fixup style.
Warning: No .rel file found for module SDBusDriver.dll, using old fixup style.
Warning: No .rel file found for module SDCSDCard.DLL, using old fixup style.
Warning: No .rel file found for module SDMemory.dll, using old fixup style.
Warning: Unable to do imports from atapi.dll to PCIbus.dll - will late bind
Pass 2...

makeimage 也能通过,但在应用程序中使用HINSTANCE   hDllInst   =   LoadLibrary( L"MyDriver.dll ")却不能打开该dll,GetLastError()的返回值是126,表示没有找到该模块;我也是过打开其他的dll,例如ndis.dll,也能成功。请问为什么就打不开呢?希望各位仁兄指教,谢谢~~~~

最新回复

楼上的大哥,我是先把dll文件拷贝到release目录下再做上述改动的,这样也不行啊? 你所说的拷贝或者直接在你工程的release目录下改动具体应该怎么做呢?  详情 回复 发表于 2009-2-17 21:49
点赞 关注

回复
举报

83

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
这种情况的话如果能保证那个DLL存在就要看看那个DLL信赖的DLL是不是存在了。
 
 

回复

85

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
楼上可不可再说清楚点呢?怎么查看一个dll所信赖的dll呢?

后来我换了一个dll,使用LoadLibrary就可以打开了,但是使用CreateFile就不行,GetLastError()的返回值是55,这又是何解呢?
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

4
 
你的注册表直接在PB下改的吧?

这里改是不行的,

要拷贝或者直接在你工程的release目录下改动,然后打包即可。
 
 
 

回复

58

帖子

0

TA的资源

一粒金砂(初级)

5
 
楼上的大哥,我是先把dll文件拷贝到release目录下再做上述改动的,这样也不行啊?
你所说的拷贝或者直接在你工程的release目录下改动具体应该怎么做呢?
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表