tiyi
驱动牛犊
驱动牛犊
  • 注册日期2001-06-15
  • 最后登录2002-03-14
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:2903回复:12

我在做一个基于usb客户驱动的delphi应用程序.

楼主#
更多 发布于:2001-06-15 18:00
usb客户驱动已经写好.

用delphi操作时,重启频繁(w2k)

不知是否应用编程的缘故?

(有一个VC的例子,我摹仿该例制作的
delphi应用程序.但是很不稳定.我看了
看,一样是createfile/closehandle/cancelIO,都是
api,参数也大致相同[类型按照语言的不同稍有调整])

最新喜欢:

abei11abei11
无心化语
禁止发言
禁止发言
  • 注册日期2001-03-23
  • 最后登录2018-06-01
  • 粉丝0
  • 关注0
  • 积分-103分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2001-06-15 19:34
用户被禁言,该主题自动屏蔽!
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2001-06-16 10:37
那个VC的例子稳定吗?
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
Holly
驱动牛犊
驱动牛犊
  • 注册日期2001-06-07
  • 最后登录
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2001-06-16 17:11
tiyi:
能否将那个VC例子传给我?
hjz169@263.net
谢谢!
tiyi
驱动牛犊
驱动牛犊
  • 注册日期2001-06-15
  • 最后登录2002-03-14
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2001-06-17 14:02
vc++的例子是稳定的.他将usb操作部分封装成一个类.
我模仿其结构用delphi封装成一个对象.应该是没有差别的.
我现在比较郁闷.

re:Holly ,实在抱歉.商业代码.
xjtt
驱动牛犊
驱动牛犊
  • 注册日期2001-05-10
  • 最后登录
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2001-06-18 08:43
在哪里找到的VC++例子,不要求提供源代码,只需提供信息就行了。
email: xjtt2000@163.net
沧海一笑
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2001-06-18 09:25
[QUOTE]原本由 tiyi 发表
[B]vc++的例子是稳定的.他将usb操作部分封装成一个类.
我模仿其结构用delphi封装成一个对象.应该是没有差别的.
我现在比较郁闷.

re:Holly ,实在抱歉.商业代码. [/B][/QUOTE]
你看看C的类有没有用多线程技术。
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
tiyi
驱动牛犊
驱动牛犊
  • 注册日期2001-06-15
  • 最后登录2002-03-14
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2001-06-18 12:33
该例子未使用多线程..
现在遇到一个问题..
就是用delphi模仿vc取devicepath

死活取不到.问题如下:

SetupDiGetInterfaceDeviceDetail,我死活取不出devicePath,源码如下:
---------------------------------------------------------------
var     hardwareDeviceInfo : HDEVINFO ;
    functionClassDeviceData : PSPDeviceInterfaceDetailData ;
    predictedLength         : Dword ;
    requiredLength          : Dword ;
    deviceInfoData : _SP_DEVICE_INTERFACE_DATA  ;
    devName : string ;
const LINK_GUID_V: TGUID = '{CF3C6FB0-AC22-4650-9380-3204C8DF9EB6}';
      LINK_GUID : PGUID = @LINK_GUID_V ;
begin
    hardwareDeviceInfo := SetupDiGetClassDevs (
                                              Link_GUid,
                                              nil, // Define no enumerator (global)
                                              0, // Define no
                                              (DIGCF_PRESENT or // Only Devices present
                                              DIGCF_INTERFACEDEVICE)); // Function class devices.

    deviceInfoData.cbSize := sizeof (_SP_DEVICE_INTERFACE_DATA);
    if (SetupDiEnumDeviceInterfaces (hardwareDeviceInfo,
                                             nil, // We don't care about specific PDOs
                                             Link_GUID^,
                                             0,
                                             deviceInfoData)) then
   begin

    SetupDiGetInterfaceDeviceDetail(
                                     HardwareDeviceInfo,
                                     @DeviceInfoData,
                                     nil, // probing so no output buffer yet
                                     0, // probing so output buffer length of zero
                                     @requiredLength,
                                     nil); // not interested in the specific dev-node

    predictedLength := requiredLength;
    functionClassDeviceData := AllocMem(predictedLength);
    functionClassDeviceData.cbSize := sizeof (_SP_DEVICE_INTERFACE_DETAIL_DATA_);

    if (not SetupDiGetInterfaceDeviceDetail (
                                           HardwareDeviceInfo,
                                           @DeviceInfoData,
                                           functionClassDeviceData,
                                           predictedLength,
                                           @requiredLength,
                                           nil)) then
    begin
        freeMem(functionClassDeviceData);
        exit;
    end;

    devName := functionClassDeviceData.DevicePath ;

-----------------
得到的DevicePath是'\',但是应该得到GUID合并起来的一些字符才对....
GUID没有错.请高手点拨!!!
halley
驱动小牛
驱动小牛
  • 注册日期2001-03-23
  • 最后登录2002-10-10
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2001-06-18 14:13
[QUOTE]原本由 tiyi 发表
[B]usb客户驱动已经写好.

用delphi操作时,重启频繁(w2k)

不知是否应用编程的缘故?

(有一个VC的例子,我摹仿该例制作的
delphi应用程序.但是很不稳定.我看了
看,一样是createfile/closehandle/cancelIO,都是
api,参数也大致相同[类型按照语言的不同稍有调整])

 [/B][/QUOTE]

客户驱动程序可否发给我?hora@163.net
tiyi
驱动牛犊
驱动牛犊
  • 注册日期2001-06-15
  • 最后登录2002-03-14
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2001-06-19 11:56
1)delphi问题业已暂时解决
2)客户驱动用windriver生成.

mmh
mmh
驱动牛犊
驱动牛犊
  • 注册日期2001-06-01
  • 最后登录
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2001-06-21 14:35
可否也把你的客户驱动程序发给我,mmh_han@163.com  
THANKS!
han
quakeboy
驱动牛犊
驱动牛犊
  • 注册日期2002-07-08
  • 最后登录2008-12-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2003-02-18 14:49
能否劳驾给份程序参考,我正在头痛不以
zyzyzyzy
驱动牛犊
驱动牛犊
  • 注册日期2003-05-24
  • 最后登录2003-05-24
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2003-05-24 12:01
你好!
我也在作这部分工作,但预见的问题不是你这部分的,我再读数据时遇见了一些困难,我也是那delphi作的,我们可以交流一下吗?能帮我解决读数据的问题,程序给你也无所谓。
qq:121144437
discoveryer3000@yahoo.com.cn
游客

返回顶部