WIN 2008 中的任务计划程序不会运行 VBS 脚本



我有一个批处理文件,它调用vbs脚本如下:

cd d:
    cd D:ApplicationPentasafeHKPentasafeDailyLogDeployment Code
    cscript CommandProcessing.vbs
    del /s "D:ApplicationPentasafeHKPentasafeDailyLogCommand Usage by CommandTempworkspace*.txt"

这个批处理文件调用这个vbs(命令处理),它将删除临时工作区中的文件

Const ForReading = 1
Const ForWriting = 2
Dim Source, Dest
objStartFolder = "D:ApplicationPentasafeHKPentasafeDailyLogCommand Usage by CommandTempworkspace"
objDestFolder = "D:ApplicationPentasafeHKPentasafeDailyLogCommand Usage by CommandScripted"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder(objStartFolder)
Set colFiles = objFolder.Files
'Only one file expected.
For Each objFile in colFiles
    Source = ObjStartFolder + "" + objFile.Name
    Dest = ObjDestFolder + "" + objFile.Name
    wscript.echo Source
    wscript.echo Dest
Next
Set objFile = objFSO.OpenTextFile(Source, ForReading)
Set objFile1 = objFSO.CreateTextFile(Dest, ForWriting)
Do Until objFile.AtEndOfStream
    Strline = objFile.ReadLine
    'wscript.echo Strline
    If InStr(Strline,"CHGUSRPRF") Then
    Prependtext = "CHGUSRPRF"
    wscript.echo Strline
    objFile1.WriteLine Strline
    ElseIf InStr(Strline,"STRSQL") Then
    Prependtext = "STRSQL"
    wscript.echo Strline
    objFile1.WriteLine Strline
    ElseIf InStr(Strline,"STRDFU") Then
    Prependtext = "STRDFU"
    wscript.echo Strline
    objFile1.WriteLine Strline
    ElseIf InStr(Strline,"UPDATA") Then
    Prependtext = "UPDATA"
    wscript.echo Strline
    objFile1.WriteLine Strline
    ElseIf InStr(Strline,"EZVIEW") Then
    Prependtext = "EZVIEW"
    wscript.echo Strline
    objFile1.WriteLine Strline
    ElseIf InStr(Strline,"WRKQRY") Then
    Prependtext = "WRKQRY"
    wscript.echo Strline
    objFile1.WriteLine Strline
    ElseIf InStr(Strline,"WRKUSRPRF") Then
    Prependtext = "WRKUSRPRF"
    wscript.echo Strline
    objFile1.WriteLine Strline
    ElseIf InStr(Strline, "             ") Then
    If (Prependtext <> "") Then
        objFile1.WriteLine Replace(Strline, "             ", Prependtext)
        wscript.echo Replace(Strline, "             ", Prependtext)
    else
        objFile1.WriteLine Strline   
    End If
    Else 
    Prependtext = ""
    objFile1.WriteLine Strline
    End If
Loop
objFile.Close
objFile1.Close

然而,当我在windowsserver2008..中安排此作业时,它总是不会调用vbs脚本。相反,它跳过它,然后执行删除操作。我试着双击批处理文件手动运行它。。它在windowsxp中运行良好,直到我们升级到windowsserver2008。有人知道这个话题吗?

运行批处理文件时的当前驱动器是什么?很可能是C:驱动器。由于您没有将D:设置为当前驱动器,因此找不到CommandProcessing.vbs。要修复它,请将其更改为D:CommandProcessing.vbs或使D:成为当前驱动器。

CommandProcessing.vbs文件位于哪里?

在D:\Application\Pentasafe\HKPentasaafe\DailyLog\部署代码中?

cd命令可能失败,因为第一行中的路径不在qoutes中。然后cscript找不到脚本文件。

最新更新