阅读:843回复:0
VID和PID遇到的问题
在usbview这个例子基础上做了一下修改
查了些资料后还是有点迷糊,改了下部分代码,但是每次 执行到strcpy的时候都会出现内存错误。 还有下面的代码是否可以枚举到UsbhostController, 网上找了一段代码,只能在Win9x下运行,在Win2k下面无法运行 请教在Win2k下面如何每举UsbhostController,谢谢! 代码如下: void CIDDlg::OnOK() { char HCName[16]; int HCNum; HANDLE hHCDev; HTREEITEM hHCItem; PCHAR rootHubName; ULONG nBytes; PUSB_NODE_CONNECTION_INFORMATION pNodeConInfo; BOOL success; ULONG nPort; USBDEVICEINFO info; for (HCNum = 0; HCNum < NUM_HCS_TO_CHECK; HCNum++) { wsprintf(HCName, \"\\\\.\\HCD%d\", HCNum); hHCDev = CreateFile(HCName, GENERIC_WRITE, FILE_SHARE_WRITE, NULL, OPEN_EXISTING, 0, NULL); if (hHCDev != INVALID_HANDLE_VALUE) { rootHubName = GetRootHubName(hHCDev); if (rootHubName != NULL) { HANDLE hHubDevice; hHubDevice = INVALID_HANDLE_VALUE; info.HubName = rootHubName; info.ConnectionInfo = NULL; info.ConfigDesc = NULL; info.StringDescs = NULL; PCHAR deviceName; strcpy(deviceName, \"\\\\.\\\");//执行到这里出错 strcpy(deviceName + sizeof(\"\\\\.\\\") - 1, info.HubName); hHubDevice = CreateFile(deviceName, GENERIC_WRITE, FILE_SHARE_WRITE, NULL, OPEN_EXISTING, 0, NULL); |
|