c# - 如何禁用系统设备?

标签 c# .net operating-system device

<分区>

有没有办法从 C#.NET 中禁用系统设备。

当您转到设备管理器并以这种方式禁用设备时,基本上是在模拟?

我假设有一个我可以调用的 WinAPI 函数,但我不知道它是哪一个?

我需要这样做的原因是我需要禁用并在再次启用设备后直接。

我需要在 Windows XP 和 Vista(x86 和 x64)中工作。我看过一个名为“DevCon”的东西,但它似乎在 Vista x64 上不起作用。

谢谢。

答案请看这里:How do I disable a system device programatically?

最佳答案

为了进一步说明 Mel Green 的回答,硬件帮助程序库使用互操作来调用 Windows API (setupapi),特别是 SetupDiSetClassInstallParams 方法。当然这里还有其他调用,用于查询设备详情等。

需要考虑的一件事是,如果您以标准用户或非特权帐户运行,您将无法使用它来控制(启用/禁用等)硬件设备。

有关更多详细信息,请查看 http://www.pinvoke.net (以及特定调用:http://pinvoke.net/default.aspx/setupapi.SetupDiSetClassInstallParam)

关于c# - 如何禁用系统设备?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/252185/

相关文章:

c# - 控制图像名称

c# - HttpClient.PostAsync 第一次慢

operating-system - 如果没有分页概念,虚拟内存还能存在吗?

c# - 在C#记录设备上播放声音

c# - 如何在 IValidateOptions<T> 实现中触发模型验证?

C# dot net core 单实例应用程序将参数传递给第一个实例

.net - 基于正态分布的范围内的随机数

c# - 在面向.NET 4.6.2 的项目中,如何实现在.NET Standard 1.5 程序集中定义的接口(interface)?

windows - Windows x86 堆栈中的堆栈是如何定义的?

c - 在多线程程序中,时钟函数是如何在幕后工作的?