5928|15

65

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

为什么流接口驱动CreateFile失败呢? [复制链接]

HANDLE handle=CreateFile(_T("TTT1:"),GENERIC_READ|GENERIC_WRITE,0,
NULL,OPEN_EXISTING,0,NULL);
ASSERT(handle);
if (handle == INVALID_HANDLE_VALUE) // cannot open the drive
{
MessageBox(NULL,_T("CreateFile失败"),_T("title"),MB_OK);
}
这为什么呢?

最新回复

奇怪了,在platform builder5里面,可以了,5里面工程建好后自动有test.def、test.reg、test.bib等文件 4.2里面都是我手动建的,内容和5里面一样 现在5里面有驱动,4.2怎么还是不行?   详情 回复 发表于 2008-2-1 13:55
点赞 关注

回复
举报

60

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
看看你驱动的TTT_open 函数,添加调试语句,看看哪里出错了。。。
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
1、看看你的驱动是否已经加载到device.exe里面了,
2、再者看看你的设备名称是否对了,可以查看注册表项
"Prefix"="TTT"
"Index"=dword:1
是否一致。
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

4
 
怎么我的test.dll怎么没有在target/CE modules 里面出现?
在\windows目录里面有

我是新建个空的项目,然后加test.reg
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\test]
"DeviceArrayIndex"=dword:0
"Prefix"="TTT"
"Dll"="test.Dll"
"Order"=dword:20
"Index"=dword:1


 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

5
 
你用的是模拟器还是真实的设备?
用的编译环境是PB?
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

6
 
我用的是模拟器,在PB下的

 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

7
 
我在project.reg里面加了 都没用
 
 
 

回复

78

帖子

0

TA的资源

一粒金砂(初级)

8
 
现在远程注册表里面有
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\test]
"DeviceArrayIndex"=dword:0
"Prefix"="TTT"
"Dll"="test.Dll"
"Order"=dword:20
"Index"=dword:1

但target/CE   modules   里面没有出现test.Dll
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

9
 
你有没有看下,
device.exe里面是否有你的dll.
再着,在用GetLastError获得createfile失败的原因或在驱动里面加output语句调试.

 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

10
 
device.exe里面是否有你的dll.
>>>>>>>>>>>>>>>>>

这device.exe里面怎么看呢?
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

11
 
模拟器没搞过,真实设备的话,是这样的

除了注册表,应该把test.dll加入project.bib里,这样dll文件才能被包含到镜像里,才能在启动的时候被加载

test.dll                        $(_FLATRELEASEDIR)\test.dll                NK  HC

LZ可以试下哦
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

12
 
我已经在
project   specific   files/project.bib里面加了
test.dll             $(_FLATRELEASEDIR)\test.dll                   NK     SH


模拟器里面的\windows目录也有kt.dll
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

13
 

在上面的画红线的地方看看有没有你的驱动程序.
这个是首要确定的。
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

14
 
to freshman45  

这device.exe里面没有出现我的驱动啊
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

15
 
那就说明,
你的驱动没有加载到你的系统中去了。
当然就调用不起来了,
那就是你编译驱动到nk里面出现问题了。
编译的时候至少应该做到如下:
1、驱动里面应该至少有这两个文件.c、.def吧
2、RELEASE目录下的platform.bib添加如下:
TTT.dll          $(_FLATRELEASEDIR)\TTT.dll            NK  SH
3、在platform.reg中定义相应的注册表信息,
你自己在查查看,
就是你的驱动没有正确加载进去了。
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

16
 
奇怪了,在platform builder5里面,可以了,5里面工程建好后自动有test.def、test.reg、test.bib等文件


4.2里面都是我手动建的,内容和5里面一样


现在5里面有驱动,4.2怎么还是不行?

 
 
 

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

随便看看
查找数据手册?

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
快速回复 返回顶部 返回列表