VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS

Ответить
Аватара пользователя
Iska

Re: VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS

Сообщение Iska »

Цитата Dodakaedr:



Почему?
VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS




Потому что не нужна.




Цитата Dodakaedr:



Именно с ней и заработал скрипт, без нее ошибки выскакивали.
VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS




Если приведёте Ваш код — посмотрим.




Цитата Dodakaedr:



А можно создать такой скрипт который после установки программы автоматов будет ассоциировать поддерживаемые форматы?
VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS




Можно. Но есть два но: 1) кто будет убирать сделанную ассоциацию и восстанавливать предыдущую и 2) ассоциация ассоциации рознь — ассоциации строятся не по одному и тому же сценарию. Надо рассматривать каждый конкретный случай.




Цитата Dodakaedr:



А то вручную долго прописывать???
VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS




Да ну? Например?
Аватара пользователя
Dodakaedr

Re: VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS

Сообщение Dodakaedr »

Цитата:



Если приведёте Ваш код — посмотрим.





Код:

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

If WScript.Arguments.Count  1 Then
	MsgBox "Drag'n'drop exe file to pin to taskbar", , "Pin to Taskbar"
	WScript.Quit
End If
	a=MsgBox("Закрепить ярлык на Панели задач?", vbYesNo + vbInformation, "ххх") 
	If a = 6 Then
strPath = WScript.Arguments(0)
Set objShell = CreateObject("Shell.Application")
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objShell.NameSpace(objFSO.GetParentFolderName(strPath))
Set objFolderItem = objFolder.ParseName(objFSO.GetFileName(strPath))
	ElseIf a = 7 Then 
	WScript.Quit
	End If
If objFolderItem Is Nothing Then
	MsgBox strPath & vbCrLf & "not found", , "Pin to Taskbar"
	WScript.Quit
End If
Set colVerbs = objFolderItem.Verbs
bPinned = False
For Each objVerb In colVerbs
	VerbName = Replace(objVerb.Name, "&", "")
	If VerbName = "Закрепить программу в панели задач" Or VerbName = "Закрепить на панели задач" Or VerbName = "Pin to Taskbar" Then
		objVerb.DoIt
		bPinned = True
		Exit For
	End If
Next
If bPinned Then
	Msgbox "Ярлык закреплен", vbOKOnly + vbInformation, "ххх"
Else
	Msgbox "Ошибка", vbOKOnly + vbCritical, "ххх"
End If


Цитата:



Да ну? Например?



Аватара пользователя
Dodakaedr

Re: VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS

Сообщение Dodakaedr »

Dodakaedr, я как не по-русски
VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS
:


Цитата:





Код:

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

'…
strPath = WScript.Arguments(0)
'…
If MsgBox("Закрепить ярлык на [" & strPath & "] на Панели задач?", vbYesNo + vbInformation, "Закрепление ярлыка на Панели задач") = vbYes Then
	' Здесь код
End If





?!



Вот всё, что требовалось сделать:



Код:

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

If WScript.Arguments.Count  1 Then
	MsgBox "Drag'n'drop exe file to pin to taskbar", , "Pin to Taskbar"
	WScript.Quit
End If
strPath = WScript.Arguments(0)
If MsgBox("Закрепить ярлык на [" & strPath & "] на Панели задач?", vbYesNo + vbInformation, "Закрепление ярлыка на Панели задач") = vbYes Then
	Set objShell = CreateObject("Shell.Application")
	Set objFSO = CreateObject("Scripting.FileSystemObject")
	Set objFolder = objShell.NameSpace(objFSO.GetParentFolderName(strPath))
	Set objFolderItem = objFolder.ParseName(objFSO.GetFileName(strPath))
	If objFolderItem Is Nothing Then
		MsgBox strPath & vbCrLf & "not found", , "Pin to Taskbar"
		WScript.Quit
	End If
	Set colVerbs = objFolderItem.Verbs
	bPinned = False
	For Each objVerb In colVerbs
		VerbName = Replace(objVerb.Name, "&", "")
		If VerbName = "Закрепить программу в панели задач" Or VerbName = "Закрепить на панели задач" Or VerbName = "Pin to Taskbar" Then
			objVerb.DoIt
			bPinned = True
			Exit For
		End If
	Next
	If bPinned Then
		Msgbox "Ярлык закреплен", vbOKOnly + vbInformation, "ххх"
	Else
		Msgbox "Ошибка", vbOKOnly + vbCritical, "ххх"
	End If
End If


Цитата Dodakaedr:



Изображение
VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS




Коллега, «По-моему вы слишком много кушать» Изображение.
Аватара пользователя
Iska

Re: VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS

Сообщение Iska »

Цитата Dodakaedr:



А можно создать такой скрипт который после установки программы автоматов будет ассоциировать поддерживаемые форматы? А то вручную долго прописывать???
VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS




Для этих целей не лишена смысла идея посмотреть в сторону *.reg файлов.

Кстати, исходные ассоциации можно бы забэкапить в эти файлы, но это попахивает извращением: поскольку как такового процесса деинсталляции нет,- пользователю придется самому запускать *.reg для восстановления ассоциаций; плюс ко всему, будут восстановлены ассоциации неизвестно какой давности, с момента создания бэкапа пользователь мог их неоднократно изменить.
Аватара пользователя
omegastripes

Re: VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS

Сообщение omegastripes »

Цитата Iska:



я как не по-русски написал:
VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS




Но при выборе "Нет" выскакивала ошибка!
Аватара пользователя
Dodakaedr

Re: VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS

Сообщение Dodakaedr »

Цитата Dodakaedr:



Но при выборе "Нет" выскакивала ошибка!
VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS




Потому что Вы неверным образом составили код. По
VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS
теперь понятно, как следовало сие сделать?
Аватара пользователя
Iska

Re: VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS

Сообщение Iska »

Цитата Iska:



Потому что Вы неверным образом составили код. По приведённому примеру теперь понятно, как следовало сие сделать?
VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS




Действительно все работает норм, а у меня не получалось...Спасибо!!!
Аватара пользователя
Dodakaedr

Re: VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS

Сообщение Dodakaedr »

Iska, Как теперь написать этот код в язык LUA???
Аватара пользователя
Dodakaedr

Re: VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS

Сообщение Dodakaedr »

Цитата Dodakaedr:



Iska, Как теперь написать этот код в язык LUA???
VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS




Без понятия. Я LUA пока не трогал, жду пока третья версия Far Manager'а «устаканится», тогда и приступлю.
Аватара пользователя
Iska

Re: VBS/WSH/JS - [решено] Создание ярлыка с помощью VBS

Сообщение Iska »

omegastripes, Iska, а можете обратный код написать, чтобы извлекал ярлык с панели задач? Просто после удаления программы остается как-бы след ярлыка (но сам ярлык удаляется через стандартный uninstall).
Ответить

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