peter
驱动牛犊
驱动牛犊
  • 注册日期2001-05-11
  • 最后登录
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1660回复:3

请问在NT和2k下如何实现对端口的直接访问?

楼主#
更多 发布于:2001-07-23 10:46
请问在NT和2k下如何实现对端口的直接访问?不使用ReadFile,WriteFile
peter
无心化语
禁止发言
禁止发言
  • 注册日期2001-03-23
  • 最后登录2018-06-01
  • 粉丝0
  • 关注0
  • 积分-103分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2001-07-23 14:23
用户被禁言,该主题自动屏蔽!
hechao
驱动牛犊
驱动牛犊
  • 注册日期2001-06-29
  • 最后登录
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2001-07-24 12:12
当年有个驱动叫giveio.sys安装后可以在程序中直接使用in, out命令。你找找看。我前几天还用它写了个端口控制的程序,运行于nt server下面
鬼子就是鬼子,永远变不成人!
skysky
驱动小牛
驱动小牛
  • 注册日期2001-07-18
  • 最后登录2003-06-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2001-07-24 13:34
如果是访问IO端口,在内核程序中用hal函数读read_port_xxxxx(这里xxxxx指数据类型,参见DDK),写write_port_xxxxxx

如果是访问memory端口,用read_register_xxxxxx/write_register_xxxxxx
(也可直接用赋值语句直接写该端口)

要在上端软件中直接访问memory端口,可将设备memory直接映射到用户空间,只需映射一次,以后操作可不需调用驱动程序,具体方法参见NT DDK 中例子。ddk\src\general下面。(方便,但微软不提倡)
以德服人,以德服人
游客

返回顶部