b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

createfile追加写入_deviceiocontrol函数_createfile

电脑杂谈  发布时间:2017-02-23 14:03:14  来源:网络整理
createfilecreatefile

HDEVINFO hDevInfo = SetupDiGetClassDevs((LPGUID)&ClassGuid, NULL, 0, DIGCF_PRESENT);

if (hDevInfo == INVALID_HANDLE_VALUE)

{

SetupDiDestroyDeviceInfoList(hDevInfo);

}

TCHAR szBuf[MAX_PATH];

SP_DEVINFO_DATA spDevInfoData = {sizeof(SP_DEVINFO_DATA)};

CString sTmp, sTotal;

//开始列举设备

for (DWORD i = 0; SetupDiEnumDeviceInfo(hDevInfo, i, &spDevInfoData); i++)

{

//得到设备类描述

if (SetupDiGetClassDescription(&spDevInfoData.ClassGuid, szBuf, MAX_PATH, NULL))

{

sTmp.Format(_T("\n%03d : ClassDescription = %s\n"), i, szBuf);

sTotal += sTmp;

}

//得到设备实例的唯一标识ID(由注册表路径组成)

if (SetupDiGetDeviceInstanceId(hDevInfo, &spDevInfoData, szBuf, MAX_PATH, NULL))

{

sTmp.Format(_T("%03d : InstanceId = %s\n"), i, szBuf);

sTotal += sTmp;

}

//得到设备名称

if (SetupDiGetDeviceRegistryProperty(

hDevInfo, &spDevInfoData, SPDRP_DEVICEDESC, NULL, (PBYTE)szBuf, MAX_PATH, NULL))

{

sTmp.Format(_T("%03d : DeviceDesc = %s\n"), i, szBuf);

sTotal += sTmp;

}

//得到设备型号

if (SetupDiGetDeviceRegistryProperty(

hDevInfo, &spDevInfoData, SPDRP_FRIENDLYNAME, NULL, (PBYTE)szBuf, MAX_PATH, NULL))

{

sTmp.Format(_T("%03d : FriendName = %s\n"), i, szBuf);

sTotal += sTmp;

}

//得到设备在注册表中的子路径

if (SetupDiGetDeviceRegistryProperty(

hDevInfo, &spDevInfoData, SPDRP_DRIVER, NULL, (PBYTE)szBuf, MAX_PATH, NULL))

{

sTmp.Format(_T("%03d : Regedit Path = %s\n"), i, szBuf);

sTotal += sTmp;

}

AfxMessageBox(sTotal);

hDevice=CreateFile(szBuf,GENERIC_WRITE|GENERIC_READ,FILE_SHARE_READ|FILE_SHARE_WRITE,NULL,OPEN_EXISTING,0,NULL);

if(hDevice==INVALID_HANDLE_VALUE)

{

AfxMessageBox("erro");

}

请高手指点下,为什么我打开设备老实失败啊~~~

前提是,我能获得设备的信息,设备在注册表的子路径都可以获得就是打开失败


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-34046-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 任瑞娟
        任瑞娟

        #宋茜##fx_4walls##fx组合#

      • 刘荣
        刘荣

        然而今天人已经来犯我

      热点图片
      拼命载入中...