none
请教一个流驱动*_Deinit接口函数的参数传递问题 RRS feed

  • 问题

  •  

    2)BOOL *_Deinit(DWORD hDeviceContext);
    hDeviceContext:*_Init的返回值。
    整个驱动中最后执行。用来停止和卸载设备。由DeactivateDevice触发设备管理器调用。成功返回TRUE。


    这里面的函数参数DWORD hDeviceContext并没有在函数体里面出现,怎么回事的?它这样写有什么用?在C语言里面如果在函数体里面没有使用函数参数会编译错误的吧?
    这是个弱智可笑的问题,但是我在书里找不到答案,还是请大虾们指点一下我,谢谢。

     

    2008年7月21日 9:29

答案

  • hDeviceContext 是*_Init()返回的值。

    hDeviceContext 因驱动而异,有的是指向某些数据结构的数组,有的仅仅是个没有实际用途的非零常数。具体就要看驱动的需求和开发者的习惯了。

    如果有兴趣可以看一下Wince自带的串口驱动

    2008年7月22日 1:48

全部回复

  • hDeviceContext 是*_Init()返回的值。

    hDeviceContext 因驱动而异,有的是指向某些数据结构的数组,有的仅仅是个没有实际用途的非零常数。具体就要看驱动的需求和开发者的习惯了。

    如果有兴趣可以看一下Wince自带的串口驱动

    2008年7月22日 1:48
  • 楼上回答的很正确。这个值其实是可以由开发人员控制的。

    2008年7月23日 7:58
    版主