rapec
驱动牛犊
驱动牛犊
  • 注册日期2001-05-22
  • 最后登录2005-09-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1767回复:10

请教――usb客户端驱动的两个问题:

楼主#
更多 发布于:2001-09-13 05:29
1>Write(Kirp I)函数:
    PURB pUrb = m_PipeIn.BuildBulkTransfer(pBuffer,      // Where is data coming from?
                                          dwTotalSize,  // How much data to read?
                                          FALSE,        // direction (FALSE = OUT)
                                          NULL);  
        status = m_PipeIn.SubmitUrb(pUrb, NULL, NULL,4000);
参数dwTotalSize被限为4KB(一页大小),但事实上dwTotalSize应当为64KB以下都行才是啊。

2>Write(Kirp I)函数:
参数pBuffer(类型为PUCHAR),事实上(KMemory )Mdl(pBuffer,dwTotalSize)也应当能通过
但是以下就没通过――死机!!
    PURB pUrb = m_Pipe0.BuildBulkTransfer(Mdl ,      // Where is data coming from?
                                          dwTotalSize,  // How much data to read?
                                          FALSE,        // direction (FALSE = OUT)
                                          NULL);  
        status = m_PipeIn.SubmitUrb(pUrb, NULL, NULL,4000);
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2001-09-13 09:01
1. KUsbPipe::SetMaximumTransferSize
2. 你的MDL是怎么构造的?
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
rapec
驱动牛犊
驱动牛犊
  • 注册日期2001-05-22
  • 最后登录2005-09-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2001-09-14 12:15
1。KUsbPipe::SetMaximumTransferSize 有这个函数吗?
我用DS向导生成的驱动,除了用softice4.05跟踪初始化例程
Activeconfiguration(...)未发现SetMaximumTransferSize
况且KUsbPipe::MaximumTransferSize =0xffff;
2。构造?我只知道――KMemory Mdl(pBuffer,dwTotalSize);
其它一无所知。求救!!!!
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
地板#
发布于:2001-09-16 11:20
[QUOTE]原本由 zhf 发表
[B]1。KUsbPipe::SetMaximumTransferSize 有这个函数吗?
我用DS向导生成的驱动,除了用softice4.05跟踪初始化例程
Activeconfiguration(...)未发现SetMaximumTransferSize
况且KUsbPipe::MaximumTransferSize =0xffff;
2。构造?我只知道――KMemory Mdl(pBuffer,dwTotalSize);
其它一无所知。求救!!!! [/B][/QUOTE]
1.wizard不会帮你生成,你要自己加在程序里面。具体的用法看driver works的help.
2. 没有看到你的代码,不知道具体的原因。
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
rapec
驱动牛犊
驱动牛犊
  • 注册日期2001-05-22
  • 最后登录2005-09-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2001-09-17 06:50
如何给你加分,因为总报
“你所给的分与你的总分不符,你将转到给分处重新给分! ”
我试了1~20均不成。
还有,我水平很菜,看了DW的HELP也无济于事――KUsbPipe::MaximumPacketSize(void);
如果你来设置MaximumPacketSize,如何做请教教我,
在下感激不尽!!!!
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2001-09-18 11:13
[QUOTE]原本由 zhf 发表
[B]如何给你加分,因为总报
“你所给的分与你的总分不符,你将转到给分处重新给分! ”
我试了1~20均不成。
还有,我水平很菜,看了DW的HELP也无济于事――KUsbPipe::MaximumPacketSize(void);
如果你来设置MaximumPacketSize,如何做请教教我,
在下感激不尽!!!! [/B][/QUOTE]
你看错函数了。我让你用的是KUsbPipe::SetMaximumTransferSize。你看的这个函数是返回对应的pipe的packet size。
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
rapec
驱动牛犊
驱动牛犊
  • 注册日期2001-05-22
  • 最后登录2005-09-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2001-09-18 12:14
对不起我打错了,应当是
看了DW的HELP也无济于事――KUsbPipe::MaximumTransferSize(void);
Driverworks2.1版本的Help的索引把SetMaximumTransferSize拷上去
没有该函数。再找到KUsbPipe类也没看见SetMaximumTransferSize该成员请版主明查!!!!
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2001-09-19 09:17
[QUOTE]原本由 zhf 发表
[B]对不起我打错了,应当是
看了DW的HELP也无济于事――KUsbPipe::MaximumTransferSize(void);
Driverworks2.1版本的Help的索引把SetMaximumTransferSize拷上去
没有该函数。再找到KUsbPipe类也没看见SetMaximumTransferSize该成员请版主明查!!!! [/B][/QUOTE]
你怎么会没有???我这里可是看的很清楚的。你别装错版本了?
重新弄一个。
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
rapec
驱动牛犊
驱动牛犊
  • 注册日期2001-05-22
  • 最后登录2005-09-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2001-09-19 19:37
老大,你用的是DS2.0的版本不是DW2.1的版本我在www.driverdevelop.com的本地下载里下载DS2.0几回了(40多MB),
因为只允许单线程所以都下载不了。版主帮帮忙在哪能当到DS2.0;

2>既然你的DS2.0版本有KUsbPipe:SetMaximumTransferSize( )功能;
我想知道98DDK是怎样为KUsbPipe:SetMaximumTransferSize( )函数具体实现的?劳驾请把这段具体实现的代码告诉我好吗??在下感激不尽。
[zhf 编辑于 2001-09-20 00:32]
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2001-09-20 10:52
[QUOTE]原本由 zhf 发表
[B]老大,你用的是DS2.0的版本不是DW2.1的版本我在www.driverdevelop.com的本地下载里下载DS2.0几回了(40多MB),
因为只允许单线程所以都下载不了。版主帮帮忙在哪能当到DS2.0;

2>既然你的DS2.0版本有KUsbPipe:SetMaximumTransferSize( )功能;
我想知道98DDK是怎样为KUsbPipe:SetMaximumTransferSize( )函数具体实现的?劳驾请把这段具体实现的代码告诉我好吗??在下感激不尽。
[zhf 编辑于 2001-09-20 00:32] [/B][/QUOTE]
我用的是DS2.01,而且是正版的。里面就有这个函数。我记得站上下的2.01里面也有的。
至于DDK的实现方式,我也没有用过。你看看DDK的例子里面有没有。
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
rapec
驱动牛犊
驱动牛犊
  • 注册日期2001-05-22
  • 最后登录2005-09-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2001-09-20 12:10
How much your DS2.01 ????
北京有卖的吗?Where?
[zhf 编辑于 2001-09-20 12:14]
游客

返回顶部