Dell Device Helper Discovery

Dell.Management.HelperUtility.Discovery (Discovery)

Knowledge Base article:

Summary

Discovers Dell Device Helper Utility and its version

Element properties:

TargetMicrosoft.SystemCenter.ManagementServer
EnabledTrue
RemotableFalse

Object Discovery Details:

Discovered Classes and their attribuets:

Member Modules:

ID Module Type TypeId RunAs 
DiscoveryData DataSource Dell.Management.HelperUtility.Discovery.DSMT Default

Source Code:

<Discovery ID="Dell.Management.HelperUtility.Discovery" Enabled="true" Target="SC!Microsoft.SystemCenter.ManagementServer" ConfirmDelivery="true" Remotable="false" Priority="Normal">
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryClass TypeID="DellOperationsCommon!Dell.Management.HelperUtility"/>
</DiscoveryTypes>
<DataSource ID="DiscoveryData" TypeID="DellOperationsCommon!Dell.Management.HelperUtility.Discovery.DSMT">
<Interval>86410</Interval>
<MgmtPrincipalName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</MgmtPrincipalName>
<ScriptName>OOBHelper.vbs</ScriptName>
<HelperUtilityCode>

class HelperUtility
private m_helperName
private m_helperInterface
private m_helperVersion
private m_helperDLLName
private m_hObject
private m_getLastError

Public Sub Class_Initialize
m_helperName = "Dell Device Helper"
m_helperInterface = "OOBHelper.Wsman"
m_helperVersion = "5.2"
m_helperDLLName = "DellDeviceHelper.dll"
m_hObject = null
End sub
Public Property Get Name
Name = m_helperName
End Property

Public Property Get IsPresent
On Error Resume Next
Err.Clear
Set m_hObject = CreateObject(m_helperInterface)
m_getLastError = m_helperInterface &amp; " found"
IsPresent = False
Select Case Err.Number
Case 429: m_getLastError = m_helperInterface &amp; " not found or not supplied"
Case 462: m_getLastError = "Server is not available"
case 53: m_getLastError = "File not found"
Case Else: IsPresent = True
End Select
End Property

Public Property Get Version
On Error Resume Next
Const KEY_32_DLL_VERSION = "HKEY_LOCAL_MACHINE\SOFTWARE\Dell\Dell Server Management Pack Suites\CurrentVersion"
Const KEY_64_DLL_VERSION = "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Dell Computer Corporation\Dell Server Management Pack Suites\CurrentVersion"
Const KEY_501Registry_DLL_VERSION = "HKEY_LOCAL_MACHINE\SOFTWARE\Dell Computer Corporation\Dell Server Management Pack Suites\CurrentVersion"
Dim oShell

Set oShell = CreateObject ("WScript.Shell")

Version = oShell.RegRead(KEY_32_DLL_VERSION)
if Version="" Then
Version = oShell.RegRead(KEY_64_DLL_VERSION)
end if
if Version="" Then
Version = oShell.RegRead(KEY_501Registry_DLL_VERSION)
end if
if Version="" Then
Version = "Not Present"
end if
End Property

Public Property Get ReqVersion
ReqVersion = "5.2"
End Property

Public Property Get IsCompatible
IsCompatible = (Version = ReqVersion)
End Property

Public Property Get LastError
'On Error Resume Next
LastError = m_getLastError
End Property

End Class
</HelperUtilityCode>
<LogLevel>0</LogLevel>
</DataSource>
</Discovery>