jjzjj

c - 什么是 WINVER 0x501?没有它的 RegisterDeviceNotification 错误

我在代码中使用了RegisterDeviceNotificationAPI。如果我不使用#defineWINVER0x501,它就不起作用(出现链接器错误)。1)当我查看窗口Winuser.h时,RegisterDeviceNotificationA定义在#if(WINVER>=0x0500)下。这是什么原因?2)为了使RegisterDeviceNotificationA正常工作,我在自己的.h文件中声明了所有声明,但没有#if(WINVER>=0x0500)。这是正确的方法吗?3)我的另一个问题是在没有winver的情况下声明RegisterDeviceNotificationA有

windows - 禁止 Windows Mobile 通过 USB 或蓝牙使用数据连接

每次我使用USB或蓝牙将运行WindowsMobile6.5的摩托罗拉MC65连接到我的计算机时,它开始使用通过计算机的数据连接,而不是通过机载WiFiradio或Cellradio维持连接。我希望手持设备通过WiFi或Cell保持当前连接,而不是通过USB或蓝牙使用数据连接。有没有办法阻止它自动建立这个网络连接? 最佳答案 如果您谈论的是Internet连接而不是工作连接,您可以在USB/ActiveSync/WindowsMo​​bileDeviceCenter中设置您的PC以仅将USB用于工作连接。您必须启用“连接到PC时允许

windows - 无法使用 GNAT Ada 读取 USB com 端口

我正在尝试使用以下方法设置USB串行端口:GNAT.SERIAL_COMMUNICATIONS。我可以打开端口,但是当我尝试设置端口的属性时,出现以下异常raisedGNAT.SERIAL_COMMUNICATIONS.SERIAL_ERROR:set:cannotgetcommstate(6)有什么想法吗?肖恩 最佳答案 由于您使用的不是自然的WindowsCOM端口,而是设备驱动程序创建的额外COM端口,您可能对thisquestion感兴趣(尤其是我对此的回答)。摘要是有时具有正常名称的程序无法访问虚拟COM端口。在放弃"CO

windows - Directshow - 识别内置(集成摄像头)与外部 USB 摄像头

有没有PC摄像头硬件专家碰巧知道PC上的内置(集成)摄像头是否有任何特殊的识别功能,而不是外部USB摄像头?我正在寻找任何可以帮助我确定该设备确实内置于PC且未由用户连接的东西。我已经检查了两种网络摄像头的设备管理器中的每个设备属性,但找不到任何有用的信息。甚至像USB连接命令这样简单的东西(也许内置摄像头会在启动时首先“连接”?)我是USB小白所以请多多包涵... 最佳答案 我认为你做不到。在某些笔记本电脑型号上,“内部摄像头”实际上连接到内部USB集线器。这是我几年前打开我的ASUSEEE901时所意识到的。我很确定这是一个常见

c++ - 启用和禁用 USB 端口

谁能告诉我如何使用C/C++启用和禁用USB端口。我已经搜索过一种方法来执行此操作..使用Windows注册表,但它存在一些问题。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\USBSTOR将startvalue的值改成3----解锁4----方block它在Windows7上没有显示正确的行为。例如-当我将起始值的值更改为4时,它会禁用USB端口,但再次启用我们需要重新启动系统,并且在禁用所有端口后还有一件事被禁用,但我们仍然能够使用已经插入的设备。还有其他方法吗? 最佳答案

windows - 以已知速率将数据发送到 USB 端口

我有一个WindowsTCL应用程序,它通过USB端口控制电路板上的各个芯片。我在bitbang模式下使用FTDI驱动程序。Bitbang模式使板上的USB设备像PC并行端口一样。假设电路板上的芯片是一个二进制计数器。如果我想让计数器递增,我会向USB端口写入一系列字节,使芯片计数。如果我希望计数器以某种速率计数,我会以某种已知速率发送这些字节。由于数据是二进制数据,我将端口配置为二进制模式。我将几个控制字节(称为block)写入缓冲区,然后刷新端口,以便将数据发送到USB端口(因此它会在我需要时进行计数)。写入后,我等待一段时间,然后再次写入block。我知道这不会是完美的时机;那没

c# - 尝试访问 USB 设备时的 RPC_E_CANTCALLOUT_ININPUTSYNCCALL

我有这段代码:varsearcher=newManagementObjectSearcher("root\\CIMV2","SELECT*FROMWin32_DiskDrive");foreach(varqueryObjinsearcher.Get().Cast())//Errorpointstothisline基本上这段代码所做的是,它遍历已连接设备的列表,并查看我想要的设备是否已连接。如果我在运行代码时设备已经连接时运行此代码,那么它可以完美运行。但是,如果我使用DBT_DEVICEARRIVAL触发此代码(这是系统在连接某些设备时发送的事件,我用捕获它privatestaticI

windows - 我可以使用 win32 Setup API 检测 USB 设备何时插入或拔出吗?

我正在查看http://msdn.microsoft.com/en-us/library/aa376947(v=vs.85).aspx的引用资料(设置API引用)和http://msdn.microsoft.com/en-us/library/windows/hardware/ff549791(v=vs.85).aspx(驱动程序设置API引用)并且我没有看到一个函数可以让我注册一个函数,该函数将在特定设备/硬件ID/驱动程序key/或任何出现时被调用。有人知道我会怎么做吗?理想情况下,我想在用户空间中进行这种检测,但如果有必要,我可以在内核空间中进行检测。

windows - 尝试使用 DeviceID 字段从 WMI 查询中唯一标识 USB 设备

当查询WMI并返回设备列表时,我注意到DeviceID字符串末尾的一些信息,到目前为止我在任何地方都没有记录这些信息。以下是从查看Win32_PnPEntity的WMI查询返回的DeviceID字符串的示例:USB\VID_046D&PID_082D&MI_00\7&3538A2BF&0&0000现在,前两部分——“USB”以及VID和PID都得到了很好的记录,“接口(interface)编号”——&MI_XX也是如此。但是,字符串的最后一部分(如下所示)在我看过的任何地方都没有记录。我什至不知道如何称呼DeviceID字符串的这一部分:\7&3538A2BF&0&0000奇怪的是,它

C++ USB 通信

我在与Windows上的USB设备通信时遇到问题。我不能使用libusb或WinUSB,因为我有一个特定的驱动程序(SilabsUSB到UART,这是一个USB到串口的桥接器)。这就是我初始化设备文件、发送和读取数据以及关闭句柄的方式。HANDLEhDevFile=CreateFile(L"\\??\\USB#VID_10C4&PID_EA60#0001#{a5dcbf10-6530-11d2-901f-00c04fb951ed}",GENERIC_READ|GENERIC_WRITE,0,0,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL|FILE_FLAG_