Войти

Показать полную графическую версию : Можно ли создать ярлык на рабочем столе с определенными координатами ???


Саша.Саша@vk
17-03-2020, 10:26
Добрый день,вопрос можно ли с помощью bat или vbs сделать ярлык на рабочий стол.
------------ Можно НО!!!----------
1)
====== vbs====
Set WshShell = WScript.CreateObject("WScript.Shell")
Set oShellLink = WshShell.CreateShortcut("C:\Users\имя юзера\Desktop\ИМЯ.lnk")
oShellLink.TargetPath = "адрес к .exe"
oShellLink.WindowStyle = 1
oShellLink.WorkingDirectory = "адрес к папке"
oShellLink.Save
2)
====bat======
copy "адрес к файлу\ярлыку\*имя копируемого файла\ярлыка*" "C:\Users\имя юзера\Desktop\" /Y
================================================================
3)
еще есть вариант тут на форуме но он создает ярлык только с той же папки где и находится батник.
@set @x=0 /*
@cscript/nologo /e:jscript "%~f0" "%~dp0file.exe" "%~dp0"
@exit */
sh=WScript.CreateObject("WScript.Shell")
lk=sh.CreateShortcut(sh.SpecialFolders("Desktop")+"\\file.lnk")
lk.TargetPath=WScript.Arguments(0)
lk.WorkingDirectory = WScript.Arguments(1)
lk.Save()
Вопрос
1)Как в третьем варианте прописать чтоб можно было создавать ярлык с любого места(где прописать или дописать путь к папке к .ехе к примеру (с:\trud\имя.ехе или D:\trud\имя.ехе )
2)И ГЛАВНЫЙ вопрос МОЖНО ЛИ в этих bat\vbs прописать координаты ярлыка,чтоб ярлык создавался на рабочем столе к примеру в низу или посередине и тд.

Если можно то как и с разными разрешениями экрана к примеру( 1366х768 ) (1920х1080) и как там на рабочем столе находить\определить координаты для ярлыка .

Elven
17-03-2020, 14:34
2. Сколь помню задать расположение ярлыка низзя. Ну это и логично. Если Вася Пупкин на рабочем столе держит только ярлык корзины и проводника, то у Василисы с аналогичной фамилией он (рабочий стол) может оказаться усеянным ярлыками, папками, ярлыками на папки, папками с ярлыками, файлами на которые создано по несколько ярлыков, да так что на упомянутом 1920х1080 место закончилось, тут ярлык на нужное место никак не положишь.
1. Для создания ярлыков лучше использовать групповые политики (сиречь GPO), подкостыливание того, для чего и так есть функционал это не есть хорошо, кроме того не придется решать вопрос с правильностью создания ярлыка и с несозданием дубликатов.

Iska
18-03-2020, 02:32
Как в третьем варианте прописать чтоб можно было создавать ярлык с любого места(где прописать или дописать путь к папке к .ехе к примеру (с:\trud\имя.ехе или D:\trud\имя.ехе ) »
Используйте первый вариант.

И ГЛАВНЫЙ вопрос МОЖНО ЛИ в этих bat\vbs прописать координаты ярлыка,чтоб ярлык создавался на рабочем столе к примеру в низу или посередине и тд. »
Такой возможности нет.

2)
====bat======
copy "адрес к файлу\ярлыку\*имя копируемого файла\ярлыка*" "C:\Users\имя юзера\Desktop\" /Y
================================================================ »
Такое вообще крайне не рекомендуется к использованию.

кроме того не придется решать вопрос с правильностью создания ярлыка и с несозданием дубликатов. »
Elven, на WSH нельзя случайно создать дубликат ярлыка: в нём и для создания нового ярлыка, и для «редактирования» существующего ярлыка используется один и тот же метод «.CreateShortcut()» :).

Саша.Саша@vk
19-03-2020, 15:42
хорошо пойдем другой дрогой.
Где хранится инфа о расположении файлов ярлыков на рабочем столе при выключении или включении пк.??к примеру фаил .ini или конфиг,может в реестре гдето??Есть что-то такое ??

iglezz
19-03-2020, 16:12
Где хранится инфа о расположении файлов ярлыков на рабочем столе »
Отправная точка: HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Bags\1\Desktop\IconLayouts
А дальше в интернет выковыривать ссылки вроде этой (http://misty.moe/2018/08/21/reverse-engineering-of-newly-introduced-iconlayouts-registry-value/)

Саша.Саша@vk
19-03-2020, 17:26
Отправная точка: HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Bags\1\Desktop\IconLayouts »
да да,я какраз копаю в этом напровлении !




© OSzone.net 2001-2012