![]() |
Как задать "относительные" ярлыки?
Прошу прощения за корявую формулировку темы. А суть такая: можно ли задать (и как) ярлыки в корне флэшки, указывающие на файлы в папках на той же флэшке, чтобы эти ярлыки срабатывали на любом компьютере независимо от того, какую букву система назначила флэшке на данном компьютере?
И попутный вопрос - может, есть какие-то вспомогательные утилиты, чтобы открывать определенные файлы, содержащиеся на флэшке, через них - т. е. задавать эти относительные пути как-то средствами утилиты? |
На вскидку, кажется, что нет, а вот если в автозапуске выполнять батник или скрипт, то, наверное, можно. Я в свое время баловался созданием дисков с дистрибутивами с помощью программ типа AutoPlay Menu Builder. Так вот, переиначить, подогнать идею под цель, может, что и получится. Решение крутится возле метода, описанного в статье Запуск RunOnceEx с CD.
|
Pegtop PStart
Цитата:
|
Все уже
|
Vadikan, спасибо за ссылку на программу, попробую. Но замечу, что вопрос, поставленный мной раньше (в приведенной вами цитате) не имел ничего общего с сегодняшним - тогда меня интересовало создание правильных недостающих ярлыков при автоустановке системы.
|
Цитата:
Текст ниже был отредактирован постфактум, поскольку запутал автора темы Вы можете также запускать программы командным файлом, только нужно определить букву диска. Разместить в корне диска файл diskroot.txt. В командном файле прописать: Код:
@echo off |
То есть в XP - set, а в Vista - setx ? То есть командных файлов для запуска данной программы нужно будет два - для использования на компах с различными ОС?
|
truvo, setx задает постоянную переменную, причем она недоступна в текущей командной сессии. А вам нужна только в текущей - найти diskroot.txt, задать переменную и запустить программу.
|
Цитата:
И всё же, я не понял - если в файле написано set, а не setx - этот файл будет работать и в Vista тоже? Или нужны два разных файла, соответственно ОС? |
Цитата:
Цитата:
|
Vadikan, Нешто вариант с маркерным файлом проще, чем
set disk=%~d0 Или у данного кода есть нюансы отработки (в той же Висте или где еще)? Сам пользуюсь портабельными программами с флешИ - еще ни разу не баловались. |
Цитата:
|
Разрешите оживлю топик. Не люблю создавать новые темы .)
Имеем win7 64 Флешка с каталогом "F:\Directuse\Total Commander" Ярлык на "totalcmd.exe" находится в корне флешки. В инете нашел решение относительного пути в ярлыке: %windir%\system32\RunDll32.exe shell32.dll,ShellExec_RunDLL ".\папка_на_флешке\моя_прога.exe" Пробовал %windir%\system32\RunDll32.exe shell32.dll,ShellExec_RunDLL ".\Directuse\Total Commander\Totalcmd.exe" - не работает .(( Подскажите что делаю не правильно? И как юзать параметр ".\" ??? Спасибо. |
Цитата:
Цитата:
Цитата:
Цитата:
|
Amigos,
shell32.dll есть, rundll32.exe есть, но без значка "программа" Выдает это: Цитата:
На 32 битной семерке пробую тоже самое. Ничего. Ярлык в корне флешки. Мне не главное на 64 запустить, главное на 32. Вообще я правильно пишу в ярлыке ".\DirectUse\Total Commander\Totalcmd.exe" ?? Или там с точкой нада че-то как-то по другому? |
Цитата:
|
ShaddyR,
Да братан, ты прав. В ХР работает. Проверил на виртуалке. Ну вот собсна и проблема .)) Как добыть названия процедур семерки? Пока только через батник start %cd:~0,2%"\DirectUse\Total Commander\Totalcmd.exe" (( |
Ну с bat-ником можно проще использовать относительные пути:
Код:
.\folder\program.exe |
Решено. Ищущий всегда найдет.
Решение взято с вот этого сайта Собсна сами решения: Первое: %windir%\system32\cmd.exe /C start \directuse\total commander\Totalcmd.exe + рабочая папка %cd% .Подскажите только че тут с кавычками или еще с чемнить нада замутить чтобы \directuse\total commander\Totalcmd.exe читалось в cmd. Второе решение: %windir%\system32\cmd.exe /c cd “\DirectUse\Total_Commander” & “totalcmd.exe” рабочая папка пусто. Вопрос тут же... как сделать (че прописать в пути ярлыка имхо) чтобы черное окошко закрывалось после вызова программы??? |
Цитата:
> Цитата:
%comspec% /c cd /d "\DirectUse\Total_Commander"&& start "" totalcmd.exe |
Да это лана.. а как закрыть cmd'шное окно? Можно после всего пути прописать еще ченить чтобы окошко исчезло?
|
Цитата:
|
Сори. Юзал до этого чето не получилось. Щас перепопробЫвал пашет. Все сладко. Спасибо.
|
Подскажите плиз...
Необходимы ярлыки с относительными путями до папок. Использую путь типа: %windir%\explorer.exe "путь к папке" Другие варианты с Windows 7 не прокатывают. Проблема в том, что при таком раскладе папка открывается в новом окне, а мне надо открывать её в том же, откуда был запущен ярлык - возможно ли? |
Цитата ShaddyR:
%comspec% /c cd /d "\DirectUse\Total_Commander"&& start "" totalcmd.exe » если запускать ярлык от админа, то исполняемый файл не найдётся... можно это как-нибудь обойти? |
Цитата:
Код:
@Echo off Заодно, перечитав тему, сейчас ярлык к нему тематический кинул, с относительным (относительно корня флэшки) путём: Код:
%windir%\system32\cmd.exe /C start .\starttc.cmd ...который не работает при запуске от имени Администратора – в отличие от исходного батника: "Не могу найти .\starttc.cmd". :( |
Время: 19:28. |
Время: 19:28.
© OSzone.net 2001-