Войти

Показать полную графическую версию : [решено] Как отправить ярлык в определенную папку?


ruslaw
21-06-2020, 10:51
Как известно опция контекстного меню "Отправить" (Send to) на Рабочий стол создает на Рабочем столе ярлык файла (папки).
Как можно изменить это меню чтобы ярлык создавался в другой папке?

Iska
21-06-2020, 12:21
Лучше создайте скрипт, который создаёт ярлык для переданного параметром объекта в искомом каталоге и поместите его в %UserProfile%\SendTo.

ruslaw
21-06-2020, 16:31
чувствуется что идея великолепная, но я от ее реализации достаточно далек :(

Iska
21-06-2020, 17:39
Пробуйте (на WSH):
Option Explicit

Const strPath2DestFolder = "C:\Мои проекты\0317\DataBase"

Dim strSourceFSOObject

Dim objFSO
Dim strContent


If WScript.Arguments.Count = 1 Then
strSourceFSOObject = WScript.Arguments.Item(0)

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

If objFSO.FolderExists(strPath2DestFolder) Then
If objFSO.FileExists(strSourceFSOObject) Then

ElseIf objFSO.FolderExists(strSourceFSOObject) Then

Else
WScript.Echo "Can't find source file system object [" & strSourceFSOObject & "]."
WScript.Quit 3
End If

With WScript.CreateObject("WScript.Shell").CreateShortcut(objFSO.BuildPath(strPath2DestFolder, objFSO.GetBaseName(strSourceFSOObject) & ".lnk"))
.TargetPath = strSourceFSOObject
.WorkingDirectory = objFSO.GetParentFolderName(strSourceFSOObject)
.Save
End With
Else
WScript.Echo "Can't find destination folder [" & strPath2DestFolder & "]."
WScript.Quit 2
End If

Set objFSO = Nothing
Else
WScript.Echo "Usage: cscript.exe //nologo """ & WScript.ScriptName & """ <Source file>"
WScript.Quit 1
End If

WScript.Quit 0

ruslaw
21-06-2020, 19:58
Большое спасибо, отлично работает!




© OSzone.net 2001-2012