DawnPine
驱动牛犊
驱动牛犊
  • 注册日期2004-06-23
  • 最后登录2004-07-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:940回复:2

怎样引发“枚举”过程?

楼主#
更多 发布于:2004-06-30 14:12
当我们向1台Win2000的机器连入一个USB设备(如U盘),会自动引发一个“枚举”过程,然后这个USB设备就能被系统正确识别出来,从而正确工作。如果我点击系统托盘里的图标将其弹出后,这个设备就象不存在于系统中一样,尽管它仍插在主机的USB口。如果希望这个设备再次被系统识别出来,只能来“硬”的――再次拨、插,或重启系统。

能否通过调用系统里某个现成的DLL来实现USB设备的“再次拨插”?
asslittle
驱动牛犊
驱动牛犊
  • 注册日期2003-12-18
  • 最后登录2004-09-28
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-06-30 15:22
CWnd::OnDeviceChange
afx_msg BOOL OnDeviceChange( UINT nEventType, DWORD dwData );

Parameters

nEventType

An event type. See the Remarks section for a description of the available values

dwData

The address of a structure that contains event-specific data. Its meaning depends on the given event.

Remarks

The framework calls this member function to notify an application or device driver of a change to the hardware configuration of a device or the computer.

For devices that offer software-controllable features, such as ejection and locking, the operating system typically sends a DBT_DEVICEREMOVEPENDING message to let applications and device drivers end their use of the device gracefully.

If the operating system forcefully removes of a device, it may not send a DBT_DEVICEQUERYREMOVE message before doing so.

The nEvent parameter can be one of these values:

DBT_DEVICEARRIVAL   A device has been inserted and is now available.


DBT_DEVICEQUERYREMOVE   Permission to remove a device is requested. Any application can deny this request and cancel the removal.


DBT_DEVICEQUERYREMOVEFAILED   Request to remove a device has been canceled.


DBT_DEVICEREMOVEPENDING   Device is about to be removed. Cannot be denied.


DBT_DEVICEREMOVECOMPLETE   Device has been removed.


DBT_DEVICETYPESPECIFIC   Device-specific event.


DBT_CONFIGCHANGED   Current configuration has changed.


DBT_DEVNODES_CHANGED   Device node has changed.
Note   This member function is called by the framework to allow your application to handle a Windows message. The parameters passed to your function reflect the parameters received by the framework when the message was received. If you call the base-class implementation of this function, that implementation will use the parameters originally passed with the message and not the parameters you supply to the function.
DawnPine
驱动牛犊
驱动牛犊
  • 注册日期2004-06-23
  • 最后登录2004-07-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-07-05 09:19
谢谢楼上的. 但我还是不太明白.
能否通过调用某个DLL文件实现这一功能?
游客

返回顶部