Здраствуйте! Каким-то чудом сделал сервис, который запускает js файлик.
Код файлика:
PHP код:
var disk_name = "O:";
var disk_dir = "\\\\ip-адрес_сервера\\inv";
var user_name = "user";
var user_pass = "";
var wsh_network = new ActiveXObject("WScript.Network");
var wsh_file = new ActiveXObject("Scripting.FileSystemObject");
var wsh_shell = new ActiveXObject("WScript.Shell");
wsh_network.MapNetworkDrive(disk_name, disk_dir, "false", user_name, user_pass);
var file1 = wsh_file.GetFile("O:\\soft\\ProduKey.exe");
var file2 = wsh_file.GetFile("O:\\soft\\ProduKey.bat");
file1.Copy("C:\\ProduKey.exe");
file2.Copy("C:\\ProduKey.bat");
wsh_shell.Run("C:\ProduKey.bat", 0);
var file3 = wsh_file.GetFile("C:\\test.xml");
wsh_file.MoveFile("C:\\test.xml", "O:\\info\\Comp11.xml");
wsh_network.RemoveNetworkDrive(disk_name, "true", "true");
Как видно из кода он должен подцепить сетевой диск. Однако, данное дело почему-то не срабатывает. Хотя сервис работает, говорит что запустил скрипт и все ок. Никакой ошибки не получено как от службы, так и от командной строки, вывод который служба отправляет в специальный файл.
Когда я запускаю этот скрипт тупо с помощью cscript от имени пользователя - все срабатывает.
Не совсем пойму, где может быть ошибка.
PS: Сетка к моменту запуска службы есть. Пробовал и другие работы по сети, работает. Проблема встала именно когда начал работать с сетевыми дисками.
PPS: Самой службе поставил зависимость от службы "Обозреватель компьютеров". Эффекта ноль.