Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - создание ярлыка

Ответить
Настройки темы
VBS/WSH/JS - создание ярлыка

Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


возникли трудности в создании ярлыка. Помогите пож-та.
set WshShell = WScript.CreateObject("WScript.Shell" )
set oShellLink = WshShell.CreateShortcut("C:\df.lnk" )
oShellLink.TargetPath = "C:\Windows\System32\javaws.exe https://imya_servera.jnlp"
oShellLink.WindowStyle = 1
oShellLink.Description = "Shortcut Script"
oShellLink.WorkingDirectory = "c:\windows\system32\"
oShellLink.Save

ошибка в строке: oShellLink.TargetPath = "C:\Windows\System32\javaws.exe https://imya_servera.jnlp". Расположение объекта не принимается. Просьба помочь решить проблему. Через проводник - создать ярлык проблем с созданием нет

Отправлено: 21:56, 03-07-2014

 

Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата basilio666:
ошибка в строке: oShellLink.TargetPath = "C:\Windows\System32\javaws.exe https://imya_servera.jnlp". Расположение объекта не принимается. »
Всё верно.

Цитата basilio666:
Через проводник - создать ярлык проблем с созданием нет »
И если Вы сделаете аналогично вывод свойств созданного таким образом ярлыка, то явно увидите свою ошибку в создании.

Пробуйте:
Код: Выделить весь код
With WScript.CreateObject("WScript.Shell").CreateShortcut("C:\df.lnk")
	.TargetPath       = "C:\Windows\System32\javaws.exe"
	.WorkingDirectory = "c:\Windows\System32"
	.Arguments        = "https://imya_servera.jnlp"
	.WindowStyle      = 1
	.Description      = "Shortcut Script"
	
	.Save
End With
Это сообщение посчитали полезным следующие участники:

Отправлено: 02:29, 04-07-2014 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


Iska, спасибо, все получилось, я новичок в написании скриптов, не учел, что можно указать аргумент.

Отправлено: 08:34, 04-07-2014 | #3


Ветеран


Сообщения: 2183
Благодарности: 721

Профиль | Отправить PM | Цитировать


Подскажите с написанием скрипта создания ярлыка по пути c:\ProgramData\Microsoft\Windows\Start Menu\Programs, с передачей как аргумента пути установки программы.

Отправлено: 22:48, 25-08-2015 | #4


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


sov44, озвучьте какой-нибудь конкретный пример, а то что-то не соображу, «кто на чём стоял» .

Отправлено: 23:44, 25-08-2015 | #5


Ветеран


Сообщения: 2183
Благодарности: 721

Профиль | Отправить PM | Цитировать


К примеру нужно создать ярлык в c:\ProgramData\Microsoft\Windows\Start Menu\Programs\утилиты на 7zFM.exe, расположенный в Win7x64 по пути c:\Program Files\7-Zip. Если скрипт будет работать по этому пути на Windows ХР-10 [x86\x64], внешнего аргумента пути устанновки программы не нужно.

Отправлено: 09:59, 26-08-2015 | #6


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


«утилиты» — должна уже существовать или должна создаваться при отсутствии?

Для первого случая:
Скрытый текст
Код: Выделить весь код
Option Explicit

Dim objFSO
Dim objWshShell

Dim strFolder

Set objFSO      = WScript.CreateObject("Scripting.FileSystemObject")
Set objWshShell = WScript.CreateObject("WScript.Shell")

strFolder = objFSO.BuildPath(WScript.CreateObject("Shell.Application").Namespace("shell:ProgramFiles").self.Path, "7-Zip")

With objWshShell.CreateShortcut(objFSO.BuildPath(objFSO.BuildPath(objWshShell.SpecialFolders("AllUsersPrograms"), "утилиты"), "7-Zip File Manager.lnk"))
	.TargetPath       = objFSO.BuildPath(strFolder, "7zFM.exe")
	.WorkingDirectory = strFolder
	.Arguments        = ""
	.WindowStyle      = 1
	.Description      = "7-Zip File Manager"
	
	.Save
End With

Set objWshShell = Nothing
Set objFSO      = Nothing

WScript.Quit 0

Последний раз редактировалось Iska, 26-08-2015 в 14:12. Причина: Обновление.

Это сообщение посчитали полезным следующие участники:

Отправлено: 13:58, 26-08-2015 | #7


Ветеран


Сообщения: 2183
Благодарности: 721

Профиль | Отправить PM | Цитировать


Iska, директория(?) "утилиты" может быть создана, а может и нет. Делаю сборку, нужен универсальный вариант.

Отправлено: 15:53, 26-08-2015 | #8


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Тогда — так:
Скрытый текст
Код: Выделить весь код
Option Explicit

Dim objFSO
Dim objWshShell

Dim strFolder

Set objFSO      = WScript.CreateObject("Scripting.FileSystemObject")
Set objWshShell = WScript.CreateObject("WScript.Shell")

strFolder = objFSO.BuildPath(objWshShell.SpecialFolders("AllUsersPrograms"), "утилиты")

If Not objFSO.FolderExists(strFolder) Then
	objFSO.CreateFolder strFolder
End If

With objWshShell.CreateShortcut(objFSO.BuildPath(strFolder, "7-Zip File Manager.lnk"))
	strFolder = objFSO.BuildPath(WScript.CreateObject("Shell.Application").Namespace("shell:ProgramFiles").self.Path, "7-Zip")
	
	.TargetPath       = objFSO.BuildPath(strFolder, "7zFM.exe")
	.WorkingDirectory = strFolder
	.Arguments        = ""
	.WindowStyle      = 1
	.Description      = "7-Zip File Manager"
	
	.Save
End With

Set objWshShell = Nothing
Set objFSO      = Nothing

WScript.Quit 0

Для корректной работы пробуйте исполнять под соответствующей разрядностью.

Цитата sov44:
Делаю сборку, нужен универсальный вариант. »
??!
Это сообщение посчитали полезным следующие участники:

Отправлено: 16:06, 26-08-2015 | #9


Ветеран


Сообщения: 2183
Благодарности: 721

Профиль | Отправить PM | Цитировать


Iska, в win7x64 ссылка на ярлык получилась в Program Files (x86), а нужно, чтобы на всех разрядностях было Program Files

Отправлено: 17:02, 26-08-2015 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - создание ярлыка

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
VBS/WSH/JS - Создание ярлыка с условием ozzzzi Скриптовые языки администрирования Windows 2 11-10-2014 22:40
Любой язык - Создание ярлыка с помощью LUA Dodakaedr Скриптовые языки администрирования Windows 0 13-02-2014 22:49
VBS/WSH/JS - [решено] Создание ярлыка yaoleg2 Скриптовые языки администрирования Windows 6 02-02-2013 04:51
Создание ярлыка для MRT Котяра Автоматическая установка Windows 2000/XP/2003 6 14-07-2008 14:48
Программное Создание web ярлыка LedWorm Программирование и базы данных 3 28-01-2004 06:53




 
Переход