Hopefully of use for someone else. I had to write this up to create a report of versions for all of our middletier servers.

Cheers,

Greg Webster

Code:
' Read remote registries for Zenworks 7 installs
' Greg Webster
' ==============================================
strComputer = InputBox( "Server name: " )

Const HKEY_LOCAL_MACHINE = &H80000002

Set objRegistry = GetObject("winmgmts:\\" & _ 
    strComputer & "\root\default:StdRegProv")

strKeyPath = "SOFTWARE\Novell\Zenworks\ZfD"
strValueName = "Version"
objRegistry.GetStringValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,strValue
If IsNull(strValue) Then
    Wscript.Echo "The registry key does not exist."
Else
    'Wscript.Echo "ZfD is " + strValue
    strZfDVersion = "ZfD is " + strValue
End If

strKeyPath = "SOFTWARE\Novell\Zenworks\ZfD\App Management Server"
strValueName = "Version"
objRegistry.GetStringValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,strValue
If IsNull(strValue) Then
    Wscript.Echo "The registry key does not exist."
Else
    'Wscript.Echo "App Management Server is " + strValue
    strAppMgmtVersion = "App Management Server is " + strValue
End If

strKeyPath = "SOFTWARE\Novell\Zenworks\ZfD\Imaging Server"
strValueName = "Version"
objRegistry.GetStringValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,strValue
If IsNull(strValue) Then
    Wscript.Echo "The registry key does not exist."
Else
    'Wscript.Echo "Imaging Server is " + strValue
    strImgVersion = "Imaging Server is " + strValue
End If

strKeyPath = "SOFTWARE\Novell\Zenworks\ZfD\Middle Tier Server"
strValueName = "Version"
objRegistry.GetStringValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,strValue
If IsNull(strValue) Then
    Wscript.Echo "The registry key does not exist."
Else
    'Wscript.Echo "Middle Tier Server is " + strValue
    strMTSVersion = "Middle Tier Server is " + strValue
End If

strKeyPath = "SOFTWARE\Novell\Zenworks\ZfD\PXE Server"
strValueName = "Version"
objRegistry.GetStringValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,strValue
If IsNull(strValue) Then
    Wscript.Echo "The registry key does not exist."
Else
    'Wscript.Echo "PXE Server is " + strValue
    strPXEVersion = "PXE Server is " + strValue
End If

strKeyPath = "SOFTWARE\Novell\Zenworks\ZfD\Workstation Import Server"
strValueName = "Version"
objRegistry.GetStringValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,strValue
If IsNull(strValue) Then
    Wscript.Echo "The registry key does not exist."
Else
    'Wscript.Echo "Workstation Import Server is " + strValue
    strWkstnImpVersion = "Workstation Import Server is " + strValue
End If

strKeyPath = "SOFTWARE\Novell\Zenworks\ZfS"
strValueName = "Version"
objRegistry.GetStringValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,strValue
If IsNull(strValue) Then
    Wscript.Echo "The registry key does not exist."
Else
    'Wscript.Echo "ZfS is " + strValue
    strZfsVersion = "ZfS is " + strValue
End If

strKeyPath = "SOFTWARE\Novell\Zenworks\ZfS\PDS"
strValueName = "Version"
objRegistry.GetStringValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,strValue
If IsNull(strValue) Then
    Wscript.Echo "The registry key does not exist."
Else
    'Wscript.Echo "PDS is " + strValue
    strPDSVersion = "PDS is " + strValue
End If

Wscript.Echo "Registry entries for " + strComputer + ":" + VBCr + strZfDVersion + VBCr + strAppMgmtVersion  + VBCr + strImgVersion  + VBCr + strMTSVersion  + VBCr + strPXEVersion  + VBCr + strWkstnImpVersion  + VBCr + strZfsVersion   + VBCr + strPDSVersion