CObject
驱动大牛
驱动大牛
  • 注册日期2002-08-18
  • 最后登录2017-07-22
  • 粉丝0
  • 关注0
  • 积分14分
  • 威望106点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
  • 社区居民
阅读:906回复:3

DeviceIoControl使用和固件的问题!

楼主#
更多 发布于:2002-12-03 23:57
在自己开发的USB设备(D12片子)上实现一个vendorrequest请求,希望 通过DeviceIoControl得到一个参数,比如一个整数,在固件中是不是应该在处理这个vendorrequest的时候给这个参数啊,这个参数通过哪个端点啊,我觉得应该是端点0,可该怎么做的,那位大虾指点一下!

[编辑 -  12/4/02 by  CObject]
[img=501x116]http://www.driverdevelop.com/forum//upload/CObject/2004-01-13_2.jpg[/img]
CObject
驱动大牛
驱动大牛
  • 注册日期2002-08-18
  • 最后登录2017-07-22
  • 粉丝0
  • 关注0
  • 积分14分
  • 威望106点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2002-12-04 17:45
up :D :D :D

驱动是用DS开发的,那位大虾给看看对不对,固件不是我写,此功能还没添加呢,我想看驱动代码写的对不对

       NTSTATUS status = STATUS_INVALID_PARAMETER;
ULONG ulRet = 0;

t << \"Entering ZBoarduDevice::ZBUARD_IOCTL_GET_CODEDATA_Handler, \" << I << EOL;
__try
{

if((I.IoctlOutputBufferSize() != 4 ||I.IoctlInputBufferSize() || !I.IoctlBuffer())
__leave;

PURB pUrb = m_Lower.BuildVendorRequest(
(unsigned char *)I.IoctlBuffer(),
4,
0,
(BYTE)GET_DATASIZE,
0,
TRUE,
TRUE,
NULL,
0
);

status = m_Lower.SubmitUrb(pUrb, NULL, NULL, 1500);

{
ulRet = pUrb->UrbControlVendorClassRequest.TransferBufferLength;
   }
delete pUrb;
}
__finally
{
I.Information() = ulRet;
I.Status() = status;
}

return status;
[img=501x116]http://www.driverdevelop.com/forum//upload/CObject/2004-01-13_2.jpg[/img]
CObject
驱动大牛
驱动大牛
  • 注册日期2002-08-18
  • 最后登录2017-07-22
  • 粉丝0
  • 关注0
  • 积分14分
  • 威望106点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
  • 社区居民
板凳#
发布于:2002-12-04 19:36
自己已经搞定
 :D :D :D :D
[img=501x116]http://www.driverdevelop.com/forum//upload/CObject/2004-01-13_2.jpg[/img]
lxcomcn
驱动老牛
驱动老牛
  • 注册日期2002-07-31
  • 最后登录2010-12-10
  • 粉丝0
  • 关注0
  • 积分110分
  • 威望43点
  • 贡献值0点
  • 好评度21点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-12-04 19:42
自己已经搞定
 :D :D :D :D

有什么经验?能让大家一起分享吗? :)
[img]http://www.nbuser.com/vb/avatar.php?userid=10792&dateline=1046232652 [/img] 我要作诗!!!
游客

返回顶部