2013-01-03 339 views
2

我用这个VBScript来从Windows中更改BIOS启动顺序设置:HP精英8300 SFF - 更改BIOS启动顺序WMI

function ErrCode(oReturn) 
    Dim strReturn 
    Select Case oReturn 
     Case 0 strReturn = "Success" 
     Case 1 strReturn = "Not Supported" 
     Case 2 strReturn = "Unspecified Error" 
     Case 3 strReturn = "Timeout" 
     Case 4 strReturn = "Failed" 
     Case 5 strReturn = "Invalid Parameter" 
     Case 6 strReturn = "Access Denied" 
     Case Else strReturn = "..." 
    End Select 
     ErrCode= strReturn 
    end function 

    Set objWMIService = GetObject("winmgmts:{impersonationlevel=impersonat​e}//./root/HP/InstrumentedBIOS") 
    Set colItems = objWMIService.ExecQuery("select * from HP_BIOSSettingInterface",,48) 

    For each objItem in colItems 
    objItem.SetBiosSetting oReturn, "Boot Order", "Network Controller,Hard Drive,ATAPI CD-ROM Drive" ,"<kbd/>" 
    if oReturn then 
     wscript.echo "Boot Order" & " Can not be set, Error=" & ErrCode(oReturn) 
     wscript.quit(oReturn) 
    end if 
Next 

它给我的错误信息6:访问被拒绝

此脚本适用于惠普DC7900和我们拥有的其他惠普。我是本地管理员,我正在尝试使用Windows 7 64位。

有人可以帮我吗?为什么我拒绝访问?

回答

0

此问题通常是由两件事引起的:

1:您的BIOS可能有密码。如果是这样,here is a BIOS password cracker for HP如果找不到密码可能会有所帮助。

2:确保以管理员身份运行脚本。如果UAC未被禁用,则Windows可能不会以管理员身份启动该脚本。尝试从提升的命令提示符运行脚本。 (单击开始,在搜索区域中键入“CMD”,右键单击并选择以管理员身份运行)。通过从提升的命令提示符启动它,您应该避免任何Windows权限问题。