setupapi

    1热度

    1回答

    我试图从Windows的SetupAPI到C#的编号SetupGetInfInformation函数。 我定义必要的(编组)的结构如下: internal const uint INFINFO_INF_NAME_IS_ABSOLUTE = 2; [StructLayout(LayoutKind.Sequential)] internal struct SP_INF_INFOR

    0热度

    1回答

    我正在一个.NET 4.5 C#项目,我需要找出我的USB设备是否连接到同一个USB集线器。 我搜索了一下,并试图探索许多ManagementObjectCollection的结构像Win32_USBHub和Win32_PnPEntity,但我找不到任何WMI结构有位置或端口链信息。 我试过USB设备树工具,在那里我可以看到的信息:从上面的信息 Device: 1 Location IDs

    1热度

    1回答

    我能够获得devnode的属性密钥(DEVPROPKEY)。但是我没有找到获取这些密钥的名称和/或描述的方法。 也可以使用CM_Get_DevNode_PropertyW来获取这些属性键的值。 如果我使用LOOP来获取密钥和值,我会获得除了密钥的名称之外的所有信息? EDIT 这些键是在devpkey.h中预定义的,比如; DEFINE_DEVPROPKEY(DEVPKEY_Device_Devi

    2热度

    2回答

    我使用安装API函数来查找USB设备,然后使用createfile与之通信。即使用SetupDiGetClassDevs,SetupDiEnumDeviceInterfaces,SetupDiGetDeviceInterfaceDetail等。 我希望能够确定设备是否以USB2速度或USB3速度连接, SuperSpeed是否 我该如何通过Windows API来做到这一点?

    2热度

    1回答

    我在调用SetupDiGetDeviceInterfaceDetail(https://msdn.microsoft.com/en-us/library/ff551120.aspx)时不断收到Windows错误87,即使将所有可选参数切换为NULL,我仍然收到错误,但我使用了两个第一个参数另一个可行的功能,所以我不明白他们有什么不对。 HDEVINFO hdiInfo = SetupDiGetCl

    0热度

    1回答

    Windows 7中,多监视器配置。 跨在Linux(openSUSE的13.1)与GCC-MinGW的-5.1.0(这实际上可能是我没有得到预期值的原因)编制。 我得到的所有显示装置的与EnumDisplayDevices列表: 代码: int DispNum = 0; DISPLAY_DEVICE DisplayDevice; DEVMODE defaultMode; // initi

    0热度

    1回答

    我想从设备管理器中检索Rollback驱动程序节点强名称设备属性。 附图为参考。 我该如何做到这一点编程?

    0热度

    1回答

    我正在尝试更改使用SetupAPI的设备的已安装驱动程序。该驱动程序已经存在于PC上,目前尚未选中。 更具体地说,我试图取消为USB复合设备安装第三方驱动程序,而是安装默认的Windows驱动程序。 之前我就几乎这样的工作:首先,找到使用 SetupDiGetClassDevs SetupDiEnumDeviceInfo SetupDiGetDeviceInstanceId 找到设备的设备

    0热度

    1回答

    对于我的程序,我需要获取有关当前显示的详细信息。在我的研究中,我遇到了关于链接System.Windows.Forms.Screen类和它的EDID信息的文章this。起初,我尝试复制并粘贴使用p/invoke发现的代码来提供所有必需的本地方法和结构,但它不起作用,只给了我一串?为InstanceID。因此,我试图使用MSDN资源,并再次p/invoke自己创建代码。这是我想出了: private

    0热度

    1回答

    我正在研究一个项目,该项目需要我检查Windows中禁用的设备,如果发现该设备被禁用,程序应启用它。 我一直在使用从以前的答案以下解决方案.. How do I disable a system device programatically? 运行时,虽然我收到以下错误...... 我调用程序如链接帖子中所示,并在我的程序启动后立即运行它,如图所示, private void Form1_Load