c#实现"扫描检测硬件改动"

Posted sherlock-merlin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#实现"扫描检测硬件改动"相关的知识,希望对你有一定的参考价值。

public static class Win32Api
{
    public const int CM_LOCATE_DEVNODE_NORMAL = 0x00000000;
    public const int CM_REENUMERATE_NORMAL = 0x00000000;
    public const int CR_SUCCESS = 0x00000000;

    [DllImport("CfgMgr32.dll", SetLastError=true)]
    public static extern int CM_Locate_DevNodeA(ref int pdnDevInst, string pDeviceID, int ulFlags);

    [DllImport("CfgMgr32.dll", SetLastError=true)]
    public static extern int CM_Reenumerate_DevNode(int dnDevInst, int ulFlags);
}

  

调用方法:

int pdnDevInst = 0;
Win32Api.CM_Locate_DevNodeA(ref pdnDevInst, null, Win32Api.CM_LOCATE_DEVNODE_NORMAL); Win32Api.CM_Reenumerate_DevNode(pdnDevInst, Win32Api.CM_REENUMERATE_NORMAL);

 

 

参考链接:

https://stackoverflow.com/questions/2181525/is-there-an-api-call-to-start-a-scan-for-hardware-devices

以上是关于c#实现"扫描检测硬件改动"的主要内容,如果未能解决你的问题,请参考以下文章

每次插入U盘等设备都找不到,设备管理器中卸载 ,再扫描检测硬件改动才可以正常问题解决方法

请教批处理高手:如何用批处理检查已安装的软件

libnids 入侵检测

win7里使用命令行检测硬件改动

c# mvc关于@Html. DropDownListFor() 或@Html.EnumDropDownListFor() 设置disabled="disabled" post(代

html5+js实现二维码扫描