5

Please help me to uninstall usb device in window os. When one my usb has been removed from my laptop, my window os remember that have one usb has been added in my laptop, now i want to uninstall it.

Like usbdeview software in module "uninstall selected devices". this's link of this soft: http://www.nirsoft.net/utils/usb_devices_view.html

4

2 回答 2

4

开发者大会

通过使用名为 devcon 的命令行工具让它工作,然后我从代码中调用它。

将 devcon.exe 放入其中一个系统路径,以便它可以在任何地方工作。

开发者大会:开发者大会

称为:DEVCON 删除 usb“MI_01”

然后调用:DEVCON rescan

代码:

System.Diagnostics.Process proc = new System.Diagnostics.Process();
 proc.StartInfo.FileName = "DEVCON";
 proc.StartInfo.Arguments = "Remove *usb"*MI_01";
 proc.StartInfo.RedirectStandardError = true;
 proc.StartInfo.RedirectStandardOutput = true;
 proc.StartInfo.UseShellExecute = false;
 proc.Start();
于 2012-11-19T10:46:58.620 回答
3

首先,如果您正在寻找清除驱动程序的实用程序,我认为这不是要问的地方,也许是超级用户。

如果您想自己从代码中卸载驱动程序,我认为您在 .net 框架中没有一个类来卸载驱动程序。但是,仍然可以使用 C# 来完成。为此,您有一个 Win32 API 函数:DiUninstallDevice这是一个本机调用,而 API 在 C 中。您必须编写一个包装器并使用 P/Invoke 从 .net 调用它。

一般逻辑是这样的:当 Windows 操作系统通知您 USB 设备已断开连接时,您应该扫描您的驱动程序树,识别您的驱动程序,然后使用上述函数调用删除您的驱动程序。

无论如何,您的 Windows 主机会记住使用 USB 设备的 PID(产品 ID)、VID(供应商 ID)和序列号的设备。因此,当您的设备再次插入时,它将使用这些参数自动识别 USB 设备并搜索驱动程序(当然,如果过去已经安装了驱动程序)。

于 2012-11-19T10:38:54.880 回答