VBS/WSH/JS - [решено] копирование файлов, папки

Аватара пользователя
lox-ness

VBS/WSH/JS - [решено] копирование файлов, папки

Сообщение lox-ness »

Добрый День!

Необходимо с сетевого ресурса скопировать папку на ПК пользователя. от имени другого доменного пользователя

в скрипте ошибка. где-то пароль не проходит. Подскажите где ошибка.

Код:

Код: Выделить всё

set WshShell = WScript.CreateObject("WScript.Shell")
strComputer = "." 
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
Set objShare = objWMIService.Get("Win32_Service.Name='linemon'")
Set objShare = objWMIService.Get("Win32_Service.Name='avp'")
Set objOutParams = objWMIService.ExecMethod("Win32_Service.Name='Linemon'", "StopService")
Set objOutParams = objWMIService.ExecMethod("Win32_Service.Name='avp'", "StopService")
Const OverWriteFiles = True
sFolder = "\\192.168.1.1\klshare\stat"
dFolder = "C:\Documents and Settings\All Users\Application Data\Kaspersky Lab\AVP60MP4\Bases\stat"
Set objFSO = CreateObject ("scripting.fileSystemObject")
WshShell.run "runas /user:domen\user ""objFSO.CopyFolder sFolder, dFolder , OverWriteFiles"""
WScript.Sleep 1000
WshShell.SendKeys "pass" 'send password   
WshShell.SendKeys "{ENTER}"    
WScript.Sleep 60000*0.1
WshShell.SendKeys "exit"  'Close command prompt 
WshShell.SendKeys "{ENTER}"
Set objOutParams = objWMIService.ExecMethod("Win32_Service.Name='avp'", "StartService")
WScript.Sleep 60000*0.1
Set objOutParams = objWMIService.ExecMethod("Win32_Service.Name='Linemon'", "StartService")
Аватара пользователя
Iska

Re: VBS/WSH/JS - [решено] копирование файлов, папки

Сообщение Iska »

У Вас тут две ошибки — .SendKeys() и пароль в открытом виде. Ни того, ни другого быть не должно. Но это не проблемы скрипта, а общей организации.
Аватара пользователя
Iska

Re: VBS/WSH/JS - [решено] копирование файлов, папки

Сообщение Iska »

lox-ness, и WshShell.run и runas работают со строками - путями к исполняемым файлам и их аргументам, а вы туда объект пытаетесь передать. Нельзя просто обернуть кусок скрипта в runas или WshShell.run - его надо переформулировать в команды внешней среды.



Бросьте вы этот мертворожденный vbs, пишите на jscript
Аватара пользователя
Iska

Re: VBS/WSH/JS - [решено] копирование файлов, папки

Сообщение Iska »

Цитата Busla:



Бросьте вы этот мертворожденный vbs, пишите на jscript
VBS/WSH/JS - [решено] копирование файлов, папки




Я бы поспорил Изображение.
Аватара пользователя
Busla

Re: VBS/WSH/JS - [решено] копирование файлов, папки

Сообщение Busla »

Цитата Iska:



Я бы поспорил Изображение.



Кто Вам мешает? А если серьезно, то у VBScript перед JScript только одно единственное преимущество - Variant, которое в JScript приходится обыгрывать танцами с бубном, но в том необходимость возникает редко. Крайне редко. Просто несказанно крайне редко. В остальном JScript на порядок (а может и несколько) превосходит VBScript по функциональности, - здесь даже и спорить не нужно.
Аватара пользователя
Iska

Re: VBS/WSH/JS - [решено] копирование файлов, папки

Сообщение Iska »

Цитата greg zakharov:



А если серьезно, то у VBScript перед JScript только одно единственное преимущество - Variant, которое в JScript приходится обыгрывать танцами с бубном, но в том необходимость возникает редко. Крайне редко.
VBS/WSH/JS - [решено] копирование файлов, папки




Сюда включена невозможность передачи аргументов по ссылке в JScript (и соответствующие танцы с бубном)?




Цитата greg zakharov:



В остальном JScript на порядок (а может и несколько) превосходит VBScript по функциональности, - здесь даже и спорить не нужно.
VBS/WSH/JS - [решено] копирование файлов, папки




Ну да, ну да. Только вот на Script Center до появления PowerShell скриптов на VBScript было этак на пару порядков больше, нежели на JScript. Оно, в общем-то, и сейчас так. И ентих ваших ентернетах ровно та же тенденция наблюдается. Вот с чего бы это, а?
Аватара пользователя
Iska

Re: VBS/WSH/JS - [решено] копирование файлов, папки

Сообщение Iska »

Цитата Iska:



Только вот на Script Center до появления PowerShell скриптов на VBScript было этак на пару порядков больше, нежели на JScript. Оно, в общем-то, и сейчас так. И ентих ваших ентернетах ровно та же тенденция наблюдается. Вот с чего бы это, а?
VBS/WSH/JS - [решено] копирование файлов, папки






ответ, в общем-то, очевиден: для поддержания реномэ MS демонстрирует в первую очередь свою технологию, а не цельнотянутую со стороны.

В целом javascript более распространён, знать и помнить его синтаксис проще, доступнее и перспективнее, чем зубрить нишевый vbs.
Аватара пользователя
Busla

Re: VBS/WSH/JS - [решено] копирование файлов, папки

Сообщение Busla »

Цитата Busla:



ответ, в общем-то, очевиден: для поддержания реномэ MS демонстрирует в первую очередь свою технологию, а не цельнотянутую со стороны.
VBS/WSH/JS - [решено] копирование файлов, папки




Для меня — тоже очевиден. Но причину я вижу в другом: Скрипач — не нужен™. Большая часть функционала JScript никогда не потребуется для задач администрирования или автоматизации, а часть — только вредит.




Цитата Busla:



В целом javascript более распространён
VBS/WSH/JS - [решено] копирование файлов, папки




Вообще-то, JavaScript и JScript — два разных языка.
Аватара пользователя
Iska

Re: VBS/WSH/JS - [решено] копирование файлов, папки

Сообщение Iska »

Iska, Busla, Если работать с продуктами MS, то VBS просто удобнее, так как хорошо (не без исключений) совместим с VBA, на котором приходится ваять макросы для офисных продуктов MS. Иметь же в системе из многих компьютеров хаос из инструментов - это головная боль для айтишника. А возможности для автоматизации администрирования у VBS и JS одинаковы. И, кстати, всякие копирования легче, надёжнее и эффективнее по времени выполнения делать на CMD. С PowerShell не сравнивал
Аватара пользователя
megaloman

Re: VBS/WSH/JS - [решено] копирование файлов, папки

Сообщение megaloman »

Iska, Busla, Если работать с продуктами MS, то VBS просто удобнее, так как хорошо (не без исключений) совместим с VBA, на котором приходится ваять макросы для офисных продуктов MS. Иметь же в системе из многих компьютеров хаос из инструментов - это головная боль для айтишника. А возможности для автоматизации администрирования у VBS и JS одинаковы. И, кстати, всякие копирования легче, надёжнее и эффективнее по времени выполнения делать на CMD. С PowerShell не сравнивал
Ответить

Вернуться в «Скриптовые языки администрирования Windows»