[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[问题求助] VBS怎样对注册表循环读取?

  1. Private Shared Sub GetVersionFromRegistry()
  2.     Using ndpKey As RegistryKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32).OpenSubKey("SOFTWARE\Microsoft\NET Framework Setup\NDP\")
  3.         For Each versionKeyName As String In ndpKey.GetSubKeyNames()
  4.             If versionKeyName.StartsWith("v") Then
  5.                 Dim versionKey As RegistryKey = ndpKey.OpenSubKey(versionKeyName)
  6.                 Dim name As String = DirectCast(versionKey.GetValue("Version", ""), String)
  7.                 Dim sp As String = versionKey.GetValue("SP", "").ToString()
  8.                 Dim install As String = versionKey.GetValue("Install", "").ToString()
  9.                 If install = "" Then
  10.                     'no install info, ust be later
  11.                     Console.WriteLine(versionKeyName & "  " & name)
  12.                 Else
  13.                     If sp <> "" AndAlso install = "1" Then
  14.                         Console.WriteLine(versionKeyName & "  " & name & "  SP" & sp)
  15.                     End If
  16.                 End If
  17.                 If name <> "" Then
  18.                     Continue For
  19.                 End If
  20.                 For Each subKeyName As String In versionKey.GetSubKeyNames()
  21.                     Dim subKey As RegistryKey = versionKey.OpenSubKey(subKeyName)
  22.                     name = DirectCast(subKey.GetValue("Version", ""), String)
  23.                     If name <> "" Then
  24.                         sp = subKey.GetValue("SP", "").ToString()
  25.                     End If
  26.                     install = subKey.GetValue("Install", "").ToString()
  27.                     If install = "" Then
  28.                         'no install info, ust be later
  29.                         Console.WriteLine(versionKeyName & "  " & name)
  30.                     Else
  31.                         If sp <> "" AndAlso install = "1" Then
  32.                             Console.WriteLine("  " & subKeyName & "  " & name & "  SP" & sp)
  33.                         ElseIf install = "1" Then
  34.                             Console.WriteLine("  " & subKeyName & "  " & name)
  35.                         End If
  36.                     End If
  37.                 Next
  38.             End If
  39.         Next
  40.     End Using
  41. End Sub
复制代码
这个是VB.NET ,能否改成VBS版本..

返回列表