【发布时间】:2011-01-30 19:41:44
【问题描述】:
某些驱动程序在启动时加载时使用注册表中写入的参数来配置自身。 我可以修改这些值然后重新启动,但我想知道是否可以强制重新加载驱动程序,使更改生效而无需重新启动。
具体来说,我说的是视频驱动程序(nvidia)。
我在某处读到,通过 pINvoke() [User32.ll]::ChangeDisplaySettings() 以 640x480x8 位的分辨率调用(它太低以至于现代驱动程序不应该支持)将强制 Windows 加载“Standard VGA driver”,以当前分辨率再次调用将再次加载 nvidia 驱动程序。
但这不起作用。至少在 Windows 7 中,即使低分辨率不显示为“支持”,系统也会将屏幕缩小到屏幕中心的一个小方块,在不卸载 nvidia 驱动程序的情况下显示低分辨率。
那么,是否有任何 .NET/Win32 API、要重新启动的服务或任何强制重新加载视频驱动程序的方法?
也许以编程方式禁用设备(您可以通过设备管理器执行此操作)并再次重新启用它?
有什么想法吗?
非常感谢。
【问题讨论】:
标签: c# windows video driver nvidia