Сообщение об ошибке "Недопустимый корень в ключе реестра" при попытке чтения / записи ключа в пути HKLM реестра

Я пробовал решение из " Обновление реестра с помощью VBS", но оно по-прежнему выдает то же сообщение об ошибке:

WshShell.RegWrite: неверный корень в разделе реестра

Вы должны изменить значение LegalNoticeText вместе с LegalNoticeCaption. Под
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\
Ключ реестра, в котором находятся оба значения. Для этого случая (если компьютер не подключен к домену или групповая политика отключена) должен работать следующий скрипт.

Я пытаюсь сделать это в UFT 12.5 с использованием VBScript.

Среда:

  • UFT 12,5
  • Windows 2012 Server

2 ответа

Храните код, который выполняет шаги записи реестра в отдельном vbs файл и используйте следующий код, чтобы запустить его как администратор из сценария UFT:

myVbsFilePath = "C:\temp\something.vbs"

Dim WShell : Set WShell = CreateObject("Shell.Application")    
WShell.ShellExecute "C:\Windows\system32\cscript.exe", """" & myVbsFilePath & """ /elevate", "", "runas", 1

WScript атрибуты, к которым вы пытаетесь обратиться, потребуют vbscript быть управляемым wscript.exe или же cscript.exeв то время как вы пытаетесь запустить это из UFT вместо этого, где такие вещи, как WScript.FullName а также WScript.ScriptFullName не доступны

Возможно, вам придется изменить путь, предоставленный для cscript.exe в моем примере кода выше для вашей собственной системы.

Вы также можете запустить как администратор с этим:

      RunAsAdmin()
Function RunAsAdmin()
    If WScript.Arguments.length = 0 Then
        CreateObject("Shell.Application").ShellExecute "wscript.exe", """" & _
        WScript.ScriptFullName & """" & " RunAsAdministrator",,"runas", 1
        WScript.Quit
    End If
End Function
Другие вопросы по тегам