CMD, иконки и пакетные файлы

CMD, иконки и пакетные файлы

Я пытаюсь хранить свои скрипты и пользовательские автозагрузки в двух разных папках (конечная цель — скрыть основные скрипты программы)

Поэтому я поместил пакетные файлы в папку скриптов, создал ярлыки и поместил их в «RunMe».

Это работает, за исключением одного условия. В полях «Цель» и «Начать с» отображается буква диска, ОТНОСЯЩАЯСЯ К МОЕЙ МАШИНЕ. Когда я копирую папки на USB-накопитель (который на моем компьютере обозначен как «R:»), я почти уверен, что путь не обновится. Более того, когда я передам USB другому конечному пользователю, буква диска в ярлыке будет безнадежно неправильной?

Пару недель назад кто-то предоставил «дисконезависимый» пакетный скрипт (%~d0\foldername)... но, насколько я могу судить, вы не можете добавить значок непосредственно в пакетный файл, только в ярлык. (Я хочу сохранить значки с моим «брендом», если это возможно)

Есть ли у кого-нибудь обходные пути?

решение1

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

%windir%\explorer.exe "..\my\files"

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


Редактировать: Вместо того, чтобы вызывать нужную программу напрямую с помощью explorer.exe, вы можете вызвать пользовательский скрипт запуска Powershell, который запускает, перемещает и иным образом управляет вашими программами. Таким образом, вы можете использовать метод, такой как показанныйздесьдля изменения положения окна.

Связанный контент