0
我已经创建了一个VBS脚本,在Windows 8家庭计算机上手动运行时,即使在没有管理权限的ID上运行也能很好地运行。无论我用什么用户凭证通过计算机启动时的计划任务运行它,该同一脚本都会重复失败。我已经试过机器上的系统,管理员和非特权用户ID,但都没有成功。当在Windows 8中调用VBS脚本时无法运行
这个相同的VBS脚本从多个Windows 7和Windows 8.1家庭和专业计算机上的计划任务运行都没有问题。
该脚本尝试成功地ping一个网站,ping成功后将数据发送到本地计算机的当前时间。
boolExitFlag = False
Do
If Ping("HOSTNAME") Then
Call pingsuccess
boolExitFlag = True
End If
WScript.sleep 1000
Loop while boolExitFlag <> True
Sub pingsuccess
set oHTTP = CreateObject("Microsoft.XMLHTTP")
oHTTP.open "POST", "URL",false
oHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
oHTTP.setRequestHeader "Content-Length", Len("send=send&time=" & Hour(Now) & ":" & Minute(Now) & ":" & Second(Now))
oHTTP.send "send=send&time=" & Hour(Now) & ":" & Minute(Now) & ":" & Second(Now)
End Sub
Function Ping(strHost)
Dim oPing, oRetStatus, bReturn
Set oPing = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("select * from Win32_PingStatus where address='" & strHost & "'")
For Each oRetStatus In oPing
If IsNull(oRetStatus.StatusCode) Or oRetStatus.StatusCode <> 0 Then
bReturn = False
Else
bReturn = True
End If
Set oRetStatus = Nothing
Next
Set oPing = Nothing
Ping = bReturn
End Function
当计划任务在Windows 8机器我看到 运行“的任务当前正在运行。(0x41301)”,但没有成功。我已经尝试过几乎所有尝试在编写批处理脚本以运行VBS脚本之外进行这项工作。这似乎过分没有必要。
如果计算机是从冷启动打开的,则此解决方案STILL在Windows 8中不起作用。如果重新启动,脚本运行没有问题....什么给? –