use_id
驱动中牛
驱动中牛
  • 注册日期2002-03-11
  • 最后登录2006-01-07
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:980回复:1

NTDDK isousb sample contest

楼主#
更多 发布于:2002-11-25 19:37
NTDDK isousb sample contest

在 NTDDK sample isousb 有例程:

NTSTATUS
IsoUsb_SelfSuspendOrActivate(
    IN PDEVICE_OBJECT DeviceObject,
    IN BOOLEAN fSuspend
    )
{
    NTSTATUS ntStatus = STATUS_SUCCESS;

    POWER_STATE PowerState; // 这里定义 POWER_STATE, 这个类型,我死活在NTDDK help中找不到
    PDEVICE_EXTENSION deviceExtension;


    deviceExtension = (PDEVICE_EXTENSION) DeviceObject->DeviceExtension;
    ISOUSB_KdPrint( DBGLVL_MAXIMUM,(\"Enter IsoUsb_SelfSuspendOrActivate(),fSuspend = %d\\n\", fSuspend));


    // 这里省略程式中的一些代码


    // 接下来请看    
#if 1
    if ( fSuspend )
        PowerState.DeviceState = deviceExtension->PowerDownLevel; // 这里出错,错误提示请看下面
    else
        PowerState.DeviceState = PowerDeviceD0;  // power up all the way; we\'re probably just about to do some IO

    ntStatus = IsoUsb_SelfRequestPowerIrp( DeviceObject, PowerState );

    ISOUSB_KdPrint( DBGLVL_MAXIMUM,(\"IsoUsb_SelfSuspendOrActivate() status 0x%x on setting dev state %s\\n\", ntStatus, ISOUSB_StringForDevState(PowerState.DeviceState ) ));
#endif
    return ntStatus;
}


错误提示:
isopwr.cpp(592) : error C2440: \'=\' : cannot convert from \'unsigned long\' to \'enum _DEVICE_POWER_STATE\'

觉得奇怪, 当不改动那个 sample 时 build pass, 可当我只是把它 copy 到一个自建的 project 时, build no pass, have that error. Why?


use_id
驱动中牛
驱动中牛
  • 注册日期2002-03-11
  • 最后登录2006-01-07
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-11-26 20:19
这里也没人抢分?
游客

返回顶部