社区
嵌入开发(WinCE)
帖子详情
如何用CreateFile打开设备
孙泳勇
2010-08-12 10:05:58
我写了个helloworld驱动,我应该怎么打开这个设备呢?
是不是像windows驱动一样要创建个设备的,可是我看其它驱动的源代码也没有创建设备的过程啊?
反正就是怎么用CreateFile和DeviceIoctrl与我的驱动通信?
...全文
1055
14
打赏
收藏
如何用CreateFile打开设备
我写了个helloworld驱动,我应该怎么打开这个设备呢? 是不是像windows驱动一样要创建个设备的,可是我看其它驱动的源代码也没有创建设备的过程啊? 反正就是怎么用CreateFile和DeviceIoctrl与我的驱动通信?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
demoxie1
2011-04-15
打赏
举报
回复
搞定了,谢谢。我忘了在platform.bib中忘了调用io.dll.
demoxie1
2011-04-15
打赏
举报
回复
我改成GIO了,但是结果还是不能createfile,仍为-1.
eagle1597
2011-04-15
打赏
举报
回复
[Quote=引用 11 楼 demoxie1 的回复:]
我用createfile打开我自己的流驱动MYIO,返回值为-1。
我打开COM2的时候,是成功的。
我在注册表里面信息加进内核了啊:
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\MYIO]
"Prefix"="MYIO"
"Index"=dword:1
"Dll"="myio.dll"
"Order"=dword:12
我的内核里面也有……
[/Quote]
Prefix 用三个字母,别多也别少.
demoxie1
2011-04-15
打赏
举报
回复
我用createfile打开我自己的流驱动MYIO,返回值为-1。
我打开COM2的时候,是成功的。
我在注册表里面信息加进内核了啊:
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\MYIO]
"Prefix"="MYIO"
"Index"=dword:1
"Dll"="myio.dll"
"Order"=dword:12
我的内核里面也有MYIO.DLL文件,请问会是什么原因啊?
chinesedragon2010
2010-08-12
打赏
举报
回复
楼主,你是“写了个helloworld驱动”还是写个应用程序来显示“hello world”?
InsaneCode
2010-08-12
打赏
举报
回复
例如:
调用I2C驱动:
g_I2C = CreateFile(L"I2C1:", GENERIC_READ|GENERIC_WRITE, 0, NULL, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL|FILE_FLAG_WRITE_THROUGH, NULL);//相当于调用驱动中的OPEN函数。
然后可以直接调用IOCTL函数。根据CODE判断具体功能。
孙泳勇
2010-08-12
打赏
举报
回复
看来此贴没戏了,水哥不知道,牛哥不屑道!哎。。。
孙泳勇
2010-08-12
打赏
举报
回复
CreateFile的参数怎么写?与注册表中的数据关系是什么?
winceARM
2010-08-12
打赏
举报
回复
写必要的REG和DEF,按照流驱动的基本格式xxx_INIT,xxx_OPEN等等,然后调用CreateFile就可以打开设备了
孙泳勇
2010-08-12
打赏
举报
回复
wince驱动有创建设备吗?没有吧?
jackyjkchen
2010-08-12
打赏
举报
回复
设备名都是字符串,和打开文件没有区别的……
还是看看windows核心编程,讲得比较细
chinesedragon2010
2010-08-12
打赏
举报
回复
[Quote=引用 6 楼 kacyquan 的回复:]
例如:
调用I2C驱动:
g_I2C = CreateFile(L"I2C1:", GENERIC_READ|GENERIC_WRITE, 0, NULL, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL|FILE_FLAG_WRITE_THROUGH, NULL);//相当于调用驱动中的OPEN函数。
然后可以直接调用IOCTL函数。根据CODE判断具体功能。
……
[/Quote]
正解
harkspan
2010-08-12
打赏
举报
回复
CreateFile (TEXT ("HW1:"), GENERIC_READ | GENERIC_WRITE,0, NULL, OPEN_EXISTING, 0, NULL);
孙泳勇
2010-08-12
打赏
举报
回复
驱动已被成功加载!!!
注册表:
dll helloworld.dll
prefix HW
index 1
order 0
打开设备:
CreateFile参数应该怎么写?
VC的
Create
File
出现不能
打开
超过9的串口
`
Create
File
`是Windows API中的一个重要函数,用于创建或
打开
一个已存在的文件或I/O
设备
(如串口)。该函数的原型如下: ```c++ HANDLE
Create
File
( LPCTSTR lp
File
Name, // 文件名或
设备
名 DWORD ...
Create
File
文件读取和写入
在Windows API中,`
Create
File
`函数是用于创建、
打开
、重命名或关闭一个文件、
设备
、管道或者网络文件系统对象的关键函数。这个函数提供了广泛的控制权,允许开发者执行多种文件操作,包括读取和写入。下面我们将...
Create
File
读写串口 最简demo
成功调用`
Create
File
`后,你会得到一个
设备
句柄`hSerialPort`,可以用它来进行读写操作。接下来,你需要设置串口参数,比如波特率、数据位、停止位和校验位,这通常通过`DCB`结构和`SetCommState`函数完成: ```cpp...
Windows主机端与自定义USB HID
设备
通信详解.docx
3. 使用
Create
File
打开
设备
,传入
设备
路径、访问权限、共享模式等参数。 4. 对于HID
设备
,可以调用HidD_GetAttributes获取
设备
属性。 5. 使用Read
File
或Write
File
进行数据交换,可能需要配合OVERLAPPED结构进行异步...
GUID就能获得
设备
路径
有了
设备
名(路径),就可以直接调用
Create
File
打开
设备
,进行它所支持的 I/O 操作了。如果事先并不能确切知道
设备
名,如何去访问
设备
呢?这时,GUID 就可以发挥其作用。 使用 GUID 获取
设备
路径需要调用一组
设备
...
嵌入开发(WinCE)
19,519
社区成员
41,565
社区内容
发帖
与我相关
我的任务
嵌入开发(WinCE)
硬件/嵌入开发 嵌入开发(WinCE)
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章