Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Как изменить свойства ярлыка? (http://forum.oszone.net/showthread.php?t=272624)

Valek271183 22-11-2013 23:06 2260142

Как изменить свойства ярлыка?
 
Можно ли с помощью CMD/BAT изменить свойства ярлыка проводник в панели задач, т.е. там написано %windir%\explorer.exe а мне хочется дописать туда C:\Users\%username%\Downloads, как можно это сделать?

G.V.E. 27-11-2013 14:14 2262399

Есть программа под названием shortcut.exe.
В сети можно найти несколько версий.
Связано это с тем что доминирующий shortcut в сети относится к Windows 95/98, а к старшим версиям найти посложнее, но тоже можно.

Valek271183 27-11-2013 14:27 2262406

G.V.E., Спасибо, поищу
т.е. получается командной строкой это не сделать, а может VBS можно?

Iska 27-11-2013 17:19 2262562

Цитата:

Цитата Valek271183
а может VBS можно? »

Можно.

Укажите путь к ярлыку:
Цитата:

Цитата Valek271183
свойства ярлыка проводник в панели задач »

в файловой системе (у меня не Windows 7).

Но не проще ли Вам будет создать новый ярлык, открывающий потребную папку?

Valek271183 27-11-2013 17:21 2262565

"C:\Users\5\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar\Windows Explorer.lnk"

Ещё хочется научиться как это делать

Instant_SR 27-11-2013 18:22 2262622

Я сам недавно искал способ создания ярлыка через .*bat но в конце концов поиски увенчались реализацией:
.bat открывает .vbs - .vbs создает ярлык:
.bat
Код:

cscript.exe //nologo "\\path\script.vbs"
.vbs
Код:

Option Explicit
With WScript.CreateObject("WScript.Shell").CreateShortcut(WScript.CreateObject("Shell.Application").NameSpace("shell:desktop").self.Path & "\shortcut.lnk")
        .TargetPath  = "C:\path\programm.exe"
        .Save
End With
WScript.Quit 0

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

Valek271183 27-11-2013 20:20 2262688

это с созданием на рабочем столе а как быть с моим путем к ярлыку?

Iska 27-11-2013 22:06 2262760

Примерно так, если Вы изложили всё верно:
читать дальше »
Код:

Option Explicit

Dim objShell
Dim objFolder

Dim objFSO
Dim objWshShell

Dim strPath


Set objShell  = WScript.CreateObject("Shell.Application")
Set objFolder = objShell.NameSpace("shell:User Pinned")

If Not objFolder Is Nothing Then
        Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
       
        strPath = objFSO.BuildPath(objFolder.self.Path, "TaskBar\Windows Explorer.lnk")
       
        If objFSO.FileExists(strPath) Then
                Set objWshShell = WScript.CreateObject("WScript.Shell")
               
                With objWshShell.CreateShortcut(strPath)
                        If .TargetPath = objFSO.BuildPath(objWshShell.ExpandEnvironmentStrings("%windir%"), "explorer.exe") Then
                                .Arguments = """%UserProfile%\Downloads"""
                                .Save
                        Else
                                WScript.Echo "Shortcut's target path is not [%windir%\explorer.exe]."
                        End If
                End With
               
                Set objWshShell = Nothing
        Else
                WScript.Echo "Can't find shortcut [" & strPath & "]."
        End If
       
        Set objFolder = Nothing
Else
        WScript.Echo "Can't connect to folder [shell:User Pinned]."
End If

Set objShell = Nothing

WScript.Quit 0


Только для Windows 7 (и, наверняка, выше). Но я бы предложил создавать новый ярлык, указывающий на заданную папку, а не править существующий.

G.V.E. 28-11-2013 11:49 2263012

да, неет.
Как раз сделать.
Это утилита командной строки, специально сделанная микрософтом для того, чтобы можно было делать и CMD'шников ярлыки.


Время: 16:35.

Время: 16:35.
© OSzone.net 2001-