Я не уверен, почему InstallResult
всегда возвращает 1 в моем VBScript. Я поместил эхо в свой пакетный файл, чтобы подтвердить, удаляю ли исходный файл перед копией, она возвращает 4, и что она ничего не возвращает, если она успешна. Любая помощь будет оценена по достоинству. Мои файлы должны делать следующее:Ошибка проверки проверки командного файла через VBScript
- Скопируйте сценарий из сетевой папки на локальный компьютер.
- Запустите пакетный файл для установки офиса (в настоящее время некоторый тестовый код для проверки ошибок). Командный файл должен запускаться и отправлять код ошибки при выходе или 0 в случае успеха.
- Вернитесь к VBScript для проверки ошибок и выполните еще одну очистку VBScript.
Вот мой код:
Run установить биту (VBScript)
Dim objshell, InstallResult
Dim FSO
Set FSO = CreateObject("Scripting.FileSystemObject")
FSO.CopyFile "\\altirisdata\AssetMgmt\Tools\WSM\DeleteOffice13Package.vbs", "C:\source\DeleteOffice13Package.vbs"
'DeleteMS2013FilePath = objShell.run ("c:\source\DeleteOffice13Package.vbs", 0, True)
WScript.Sleep 3000
Set objShell = WScript.CreateObject("WScript.Shell")
InstallResult = objShell.run ("cscript.exe C:\source\Microsoft_Office_2013_01\install.bat", 0, True)
WScript.Echo InstallResult
If InstallResult <> 0 Then WScript.Echo "Unable to install Microsoft Office 2013. Please manually check the install results"
If InstallResult = 0 Then
DeleteDelScript = objShell.Run("cscript.exe c:\source\DeleteOffice13Package.vbs", 0, True)
End If
If DeleteDelScript = 0 Then
FSO.DeleteFile("C:\source\DeleteOffice13Package.vbs")
End If
Set FSO = nothing
WScript.Quit
install.bat
@echo off
xcopy "C:\source\test again\test.txt" "C:\Temp\Temp1\TempTest" /y
if %errorlevel% neq 0 (
exit /b %errorlevel%
)
exit