У нас есть старый Windows Server 2003 r2, который ничего не делает, кроме использования планировщика задач и файла VBS для проверки и переименования некоторых регулярно повторяющихся файлов данных. Он настроен на запуск каждый час с использованием моих учетных данных. Если я «запустил» его, пока я в системе, задача будет запущена и завершится правильно. Когда никто не вошел в систему, задача запускается, но завершается с кодом 0x1, ie она не выполняется. Я проверил журналы событий и не нашел ничего, что можно было бы идентифицировать как ошибку или сбой. Мы считаем, что он успешно работал примерно до 6-8 месяцев go (да, это был один из тех, кто его настроил и забыл, и мы не проверяли его регулярно).
== =============== Дополнительная информация ===============
Я запустил asso c .vbs и получил следующий результат: .vbs = VBSFile
Я не уверен, как определить переменные пользовательской среды ?
Для этой задачи я пробовал как файл vbs, так и файл bat, содержащий ссылку на файл vbs. Оба запускаются, когда я вхожу в систему, и оба не могут успешно завершиться, когда я нет.
Вот сценарий vbs:
Dim fso, file, recentDate, recentFile, theFile, myfolder, mypath
set fso = CreateObject("Scripting.FileSystemObject")
set recentFile = Nothing
mypath = "D:\TheFTP\Main\Camera\lobby"
set myfolder = fso.GetFolder(mypath)
For Each file in myfolder.Files
If (recentFile is Nothing) Then
set recentFile = file
ElseIf (file.DateLastModified > recentFile.DateLastModified) Then
set recentFile = file
End If
Next
fso.CopyFile mypath& "\" & recentFile.name, "D:\TheFTP\main\camera\cam3.jpg"
set recentFile = nothing
set fso = nothing
Вот последний файл летучей мыши, куда я отправил вывод в файл:
C:\windows\system32\cscript.exe c:\CopyWebCamFile.vbs > c:\debug.txt
Вывод Debug.txt, когда я не вошел в систему, показывает ошибку, см. ниже, которой нет, когда я запускаю его и вошел в систему:
Microsoft (R) Windows Версия хоста сценария 5.6
Авторское право (C) Microsoft Corporation 1996-2001. Все права защищены.
Ошибка CScript: сбой при инициализации хоста сценария Windows. (Система не может найти указанный файл.
================================ =====================
Дополнительная информация, я добавил несколько операторов Wscript.Echo в мой сценарий, перед первой строкой, после FOR l oop и перед командой « copyFile ». Когда я вхожу в систему, я вижу весь вывод в C: \ debug.txt. Когда НЕ вошел в систему, я вижу такое же сообщение об ошибке, ie no Wscript.Echo output. Это будет означать, что он не может найти мой файл vbs, когда я не вошел в систему.
===========================
Здесь все еще нет счастья. Я переместил и изменил файл .bat, чтобы он также выводил содержимое файла сценария:
type H:\Task_Stuff\CopyWebCamFileTest.vbs > H:\Task_Stuff\debug2.txt
C:\windows\system32\cscript.exe H:\Task_Stuff\CopyWebCamFileTest.vbs > H:\Task_Stuff\debug.txt
Как и раньше, я получаю вывод в оба файла .txt, когда он запускается, пока я в журнале on и ничего в debug2.txt и обычные сообщения в debug.txt, когда меня нет.
Я поиграю с настройками антивируса, но мне нужно спросить об этом f первый. Мы используем Symante c SEP.
Как я могу проверить переменные среды пользователя ?
======= =============
Может быть, это прояснит мою проблему или предложит решение ??
Можете предложить какие-нибудь идеи ... RDK