如题,如何读取显示器的型号等信息一直以为Windows是读不到的,今天看到Windows优化大师可以准确读取这些信息,才知道是可以实现的,但不知道如何实现,请高手指点,多谢!

解决方案 »

  1.   

    DeviceIoControl也许可以去查查吧
    还有就是查注册表但是这些其实都是不安全的
      

  2.   

    读这个键:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96E-E325-11CE-BFC1-08002BE10318}这下面是系统里已经有的显示器的信息.不一定准确.
      

  3.   

    Private Sub Command1_Click()
       Dim s, System, item   Set System = GetObject("winmgmts:").InstancesOf("Win32_DesktopMonitor")
       For Each item In System     s = s & "caption:" & item.Caption & vbCrLf
         s = s & "Description:" & item.Description & vbCrLf
         s = s & "ScreenWidth:" & item.ScreenWidth & vbCrLf
         s = s & "ScreenHeight:" & item.ScreenHeight & vbCrLf
         s = s & "MonitorManufacturer:" & item.MonitorManufacturer & vbCrLf
       Next   Debug.Print s
    End Sub
      

  4.   

    BestBadGod:
    优化大师是根据驱动信息,在自己建立的厂商数据库中查询实现的。To BestBadGod:
    应该不是这样的,因为显示器根本就没有驱动,都是即插即用的。To chewinggum:
    这个方法试过的,取到的都是驱动信息,“即插即用”。
      

  5.   

    http://blog.csdn.net/tonyzsb/archive/2008/10/23/3129583.aspx
      

  6.   

    感觉chewinggum说的是对的,通过DDC来实现。有个问题,就是读取到的信息还需要通过对照表转换吗?另外,由于本人才疏学浅,所以还是请问各位大虾,谁能提供VB关于这块的代码?要我写,估计是没可能了,太深奥了,多谢了分数好说,要多少给多少,呵呵。
      

  7.   

    http://blog.csdn.net/tonyzsb/archive/2008/10/23/3129583.aspx  
    http://blog.csdn.net/tonyzsb/archive/2008/10/23/3129583.aspx  
    http://blog.csdn.net/tonyzsb/archive/2008/10/23/3129583.aspx  
    http://blog.csdn.net/tonyzsb/archive/2008/10/23/3129583.aspx