Script to set Dell BIOS Admin Password using OMCI
Folks,
I found this usefull script and I want to improve this including in the code the capacity to get the hostname.
Source: http://media.community.dell.com/en/dtc/attach/samplesetadminpassword.vbs.txt
'**********************************************************************
'*** Name: SetPwd.vbs
'*** Purpose: To Set/Change the BIOS Admin password on a Dell OMCI client.
'*** Usage: cscript.exe //nologo SetPwd.vbs <systemname>
'***
'*** This sample script is provided as an example only, and has not been
'*** tested, nor is warranted in any way by Dell; Dell disclaims any
'*** liability in connection therewith. Dell provides no technical
'*** support with regard to such scripting. For more information on WMI
'*** scripting, refer to applicable Microsoft documentation.
'*** NOTE: Replace <old_password> and <new_password> in line 45 and 44
'*** (inside the quotes) with the desired values.
'**********************************************************************
Option Explicit
'*** Declare variables
Dim strNameSpace
Dim strComputerName
Dim strClassName
Dim objInstance
Dim strAttributeName(2)
Dim strAttributeValue(2)
Dim strAuthorizationToken
Dim returnValue
Dim objWMIService
Dim ColSystem
Dim oInParams
Dim Shell
'*** Check that the right executable was used to run the script
'*** and that all parameters were passed
If (LCase(Right(WScript.FullName, 11)) = "wscript.exe" ) Or _
(Wscript.Arguments.Count < 1) Then
Call Usage()
WScript.Quit
End If
'*** Initialize variables
strNameSpace = "root/dcim/sysman"
strComputerName = WScript.Arguments(0)
strClassName = "DCIM_BIOSService"
strAttributeName(0) = "AdminPwd"
strAttributeValue(0) = "P@ssw0rd"
strAuthorizationToken = ""
returnValue = 0
'*** Retrieve the instance of DCIM_BIOSService class
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate," &_
"AuthenticationLevel=pktprivacy}\\" & strComputerName & "\" &_
strNameSpace)
Set ColSystem=objWMIService.execquery ("Select * from " & strClassName)
For each objInstance in ColSystem
Set oInParams= objInstance.Methods_("SetBIOSAttributes").InParameters.SpawnInstance_
oInParams.AttributeName = strAttributeName
oInParams.AttributeValue = strAttributeValue
oInParams.AuthorizationToken = strAuthorizationToken
Set returnValue = objInstance.ExecMethod_("SetBIOSAttributes", oInParams)
Next
'*** If any errors occurred, let the user know
If Err.Number <> 0 Then
WScript.Echo "Change admin password failed."
End If
'*** Sub used to display the correct usage of the script
Sub Usage()
Dim strMessage
strMessage = "incorrect syntax. You should run: " & vbCRLF & _
"cscript.exe /nologo SetPwd.vbs <systemname>"
WScript.Echo strMessage
End Sub
'==========================================================================
' End
'==========================================================================
-
It is not clear what you are trying to do with the hostname in the script. Can you provide some additional information? The hostname can be retrieved from the remote system through a WMI call to Win32_ComputerSystem, but we need to know what you are trying to do with it in order to provide the appropriate feedback. - M P 11 years ago
Answers (0)
Be the first to answer this question