Показать полную графическую версию : [решено] Скрипт vbs для создания ярлыка на рабочем столе
Путь и название скрипта затер
http://s018.radikal.ru/i521/1601/db/ad7dcf461478.jpg
То что строка 48 не обращайте внимание,там много закомментировано просто.
48 строка это <oShortCut.Save>
QR-это имя удаленного компа
Путь «c:\Users\Public\Desktop\QR» существует?
Смотрите скрипт я запускаю на удалённом компе с именем QR
А ошибка выскакивает как будто в папке "Все пользователи"\Рабочий стол\QR
Сам компьютер QR по сети доступен естественно.
Сам скрипт отрабатываю на ОС WindowsXp что говорит о том что на удаленной машине он не отрабатывается, а отрабатывается на моей ОС Windows 7,так как путь типа "c:\Users\Public\" начинается с ОС Windows 7
А ошибка выскакивает как будто в папке "Все пользователи"\Рабочий стол\QR »
А почему удивляетесь? У Вас именно так и написано:
Set WshShell = WScript.CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
Set Argum = WScript.Arguments
strComputer = Argum(0)
Dim oShell
Dim oShortCut
set oShell = WScript.CreateObject ("WScript.Shell")
DesktopPath = oShell.SpecialFolders("AllUsersDesktop")
Set oShortCut = oShell.CreateShortcut(DeskTopPath & "\\" & strComputer & "\Proga.lnk")
oShortCut.TargetPath = "\\" & strComputer & "C:\Proga\Proga.exe"
oShortCut.Save
»
Дальнейший кусок:
oShortCut.TargetPath = "\\" & strComputer & "C:\Proga\Proga.exe"
для меня столь же загадочен.
Сам скрипт отрабатываю на ОС WindowsXp что говорит о том что на удаленной машине он не отрабатывается, а отрабатывается на моей ОС Windows 7,так как путь типа "c:\Users\Public\" начинается с ОС Windows 7 »
Ну, эти вопросы следует адресовать к Вашей:
Гиена утилита с помощью которой я админю компы в домене,типа DameWare NT Utilities »
ибо я с сим не работал.
Так вот в этом то и вопрос,что мне нужно дописать чтобы эта команда отрабатывалась на удаленном компе
Set oShortCut = oShell.CreateShortcut(DeskTopPath & "\\" & strComputer & "\Proga.lnk")
oShortCut.TargetPath = "\\" & strComputer & "C:\Proga\Proga.exe"
oShortCut.Save
Как например вот копирование файлов
Set objFSO = CreateObject("Scripting.FileSystemObject")
path = FPath&"\\server\enterprise\Proga\*.*"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.CreateFolder("\\" & strComputer & "\C$\Proga")
path2 = "\\" & strComputer & "\C$\Proga\"
objFSO.CopyFile path, path2, True
Копировании файлов отрабатывается на удалённом компе
Так вот в этом то и вопрос,что мне нужно дописать чтобы эта команда отрабатывалась на удаленном компе »
Ничего не надо дописывать. Это надо реализовывать средствами удалённого управления, будь то групповые политики, telnet, Remote Console, RDP и прочее, хоть «wmic.exe Process call …». Вы же сами пишете, что:
Гиена утилита с помощью которой я админю компы в домене,типа DameWare NT Utilities »
Сам же скрипт должен работать локально для той или иной машины. Понимаете?
Копировании файлов отрабатывается на удалённом компе »
В показанном примере — копирование отрабатывает на локальной машине.
Тоесть создать ярлык на удаленном компе без указания в скрипте его конкретного имени(ip адреса) невозможно?
venom05, Вы никак не поймёте.
Вот, смотрите. Мы создали некий скрипт, который создаёт ярлык на общем рабочем столе на некое приложение/документ. Проверили — скрипт работает корректно. На этом со скриптом мы закончили. Совсем.
Теперь нам надо, чтобы этот скрипт отработал на машинах X, Y и Z. Для этого мы совсем не касаемся содержимого скрипта, а используем средства удалённого управления, посредством которых мы можем исполнить данный скрипт на машинах X, Y и Z:
групповые политики, telnet, Remote Console, RDP и прочее, хоть «wmic.exe Process call …». »
То есть, никакие имена/IP-адреса в самом данном скрипте не указываются и не используются.
средства удалённого управления мы используем для запуска всего лишь этого скрипта на компе,а мой вопрос в том и был как сделать чтобы он заработал на удаленной машине.Эх ладно может кто еще отпишется
средства удалённого управления мы используем для запуска всего лишь этого скрипта на компе, »
На удалённой машине.
а мой вопрос в том и был как сделать чтобы он заработал на удаленной машине. »
Так Вы же пишете, что он у Вас работает на локальной машине, а не удалённой. Но не пишете как конкретно Вы пытаетесь организовать его исполнение на удалённой машине посредством Hyena.
Так Вы же пишете, что он у Вас работает на локальной машине, а не удалённой. Но не пишете как конкретно Вы пытаетесь организовать его исполнение на удалённой машине посредством Hyena
Не, кусок кода с копированием файлов который я привел-он работает на удаленной машине посредством Hyena.А как дописать тот скрипт чтобы на удалённой машине еще создавался ярлык.Данный кусок кода на удаленной машине не отрабатывается,а отрабатывается на локальной.А мне нужно чтобы ярлык создавался на удалённой.
Set oShortCut = oShell.CreateShortcut(DeskTopPath & "\\" & strComputer & "\Proga.lnk")
oShortCut.TargetPath = "\\" & strComputer & "C:\Proga\Proga.exe"
oShortCut.Save
Crag Hack
27-11-2017, 14:26
В AD есть группы group1 и group2.
Задача: для пользователей группы group1 создать ярлык на рабочем столе shortcut1, для пользователей группы group2 создать ярлык на рабочем столе shortcut2
Пока тривиально, да :)
Ярлык shortcut1 и shortcut2 указывают на сетевые шары \\192.168.1.1\share1 и \\192.168.1.1\share2, доступ к которой осуществляется по логину/паролю
Создал 2 политики (shortcut_for_group1 и shortcut_for_group2)
Конфигурация пользователя -> Конфигурация Windows -> Сценарии -> Вход в систему -> \\192.168.1.100\shareforall\docs_group1.vbs
Конфигурация пользователя -> Конфигурация Windows -> Сценарии -> Вход в систему -> \\192.168.1.100\shareforall\docs_group2.vbs
Содержимое файлов
Set Shell = CreateObject("WScript.Shell")
DesktopPath = Shell.SpecialFolders("Desktop")
Set link = Shell.CreateShortcut(DesktopPath & "\shortcut1.lnk")
link.Description = "shortcut_for_group1"
link.IconLocation = "%SystemRoot%\system32\SHELL32.dll,9"
link.TargetPath = "\\192.168.1.1\share1"
link.WindowStyle = 1
link.Save
и
Set Shell = CreateObject("WScript.Shell")
DesktopPath = Shell.SpecialFolders("Desktop")
Set link = Shell.CreateShortcut(DesktopPath & "\shortcut2.lnk")
link.Description = "shortcut_for_group2"
link.IconLocation = "%SystemRoot%\system32\SHELL32.dll,9"
link.TargetPath = "\\192.168.1.1\share2"
link.WindowStyle = 1
link.Save
Прицепил групповую политику к нужному подразделения, в фильтрах безопасности указал group1 и group2 соответственно.
Результат: ярлык на рабочем столе пользователей, входящих в группу group1 или group2 НЕ создается.
Если в сеансе пользователя сделать Пуск-Выполнить-\\192.168.1.100\shareforall\docs_group1.vbs, то ярлык создается.
Вопрос: в чем ошибка?
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.