Кнопка для запуска приложения с флешки
Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер
Кнопка для запуска приложения с флешки
Подскажите пожалуйста с кнопкой
Ситуация:
часто подключаю разные флешки, буква диска которым присваивается произвольно. Необходимо запускать программы по одному и тому же адресу, например ?:\aaa\bbb\ccc\ddd.exe, где "?" - буква диска, которая только и меняется.
Хотелось бы кнопку на панели инструментов, которая позволяла бы открывать программу по заданному пути, где буква диска бралась из открытой левой вкладки.
Спасибо
Ситуация:
часто подключаю разные флешки, буква диска которым присваивается произвольно. Необходимо запускать программы по одному и тому же адресу, например ?:\aaa\bbb\ccc\ddd.exe, где "?" - буква диска, которая только и меняется.
Хотелось бы кнопку на панели инструментов, которая позволяла бы открывать программу по заданному пути, где буква диска бралась из открытой левой вкладки.
Спасибо
Какое-то извращение. Это так принципиально?laburj писал(а):где буква диска бралась из открытой левой вкладки
Можно перебрать все внешне подключённые диски и в них искать нужное. Либо брать последнюю букву.
И это, конечно, не из области общих вопросов..
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Если можно так, то было бы гораздо удобнее, я просто предположил, что взять букву диска из пути текущей вкладки будет прощеFlasher писал(а):Какое-то извращение. Это так принципиально?
Можно перебрать все внешне подключённые диски и в них искать нужное. Либо брать последнюю букву.
И это, конечно, не из области общих вопросов..
Так - это как?laburj писал(а):Если можно так
Написано было:laburj писал(а): из пути текущей вкладки
Левая ещё не значит текущая или активная.laburj писал(а):из открытой левой вкладки
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Код: Выделить всё
'============================================================
' Запуск первой существующей программы из внешнего накопителя
' Параметр: <Путь без имени диска>
' Пример: "\ProgramFolder\Program.exe"
'============================================================
If WScript.Arguments.Count > 0 Then
Path = WScript.Arguments(0)
With CreateObject("Scripting.FileSystemObject")
For Each D In .Drives
If D.DriveType = 1 Then
If .FileExists(D & Path) Then
CreateObject("WScript.Shell").Run """" & D & Path & """"
Exit For
End If
End If
Next
End With
End IfАвтору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
-
Serge Yolkin
- Сообщения: 664
- Зарегистрирован: Сб июл 25, 2009 11:12
- CaptainFlint
- Сообщения: 6239
- Зарегистрирован: Вт дек 14, 2004 22:34
- Контактная информация:
- Моторокер
- Сообщения: 1517
- Зарегистрирован: Пт май 06, 2005 08:22
- Откуда: г. Пермь (читается Перьмь)
- Контактная информация:
Re: Кнопка для запуска приложения с флешки
Если вкладка эта активная, почему сразу так не запускать?laburj писал(а):Необходимо запускать программы по одному и тому же адресу, например ?:\aaa\bbb\ccc\ddd.exe, где "?" - буква диска, которая только и меняется.
\aaa\bbb\ccc\ddd.exe
плагины для Total Commander, статьи Graphics Converter; NSCopy; SEO HTML; KillOK; Плагин на Delphi
ПармаСруб - строительство домов и бань в Перми
ПармаСруб - строительство домов и бань в Перми
Можно запускать батником run_from_label.bat:
В кнопке тулбара прописать (на примере флешки с меткой MY_FLASH для запуска программы \Program\Program.exe при условии, что батник лежит в папке тотала):
В батнике в скобках команды for задаются буквы дисков, для которых метка сравнивается с заданной. Можно убрать ненужные буквы и изменить порядок букв, поставив наиболее вероятные буквы раньше. Сравнение производится нестрогое, т.е. ищется первая буква диска, метка которой содержит указанный текст.
Код: Выделить всё
@echo off
if -%1==- echo Parameters: ^<drive_label^> <^path_to_run^> [^<parameters^>]
set drive_letter=
for %%d in (D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
echo "*" | label %%d: 2>nul | find /I "%~1" >nul
if not errorlevel 1 (
start "" "%%d:\%~2" %3 %4 %5 %6 %7 %8 %9
goto :EOF
)
)
Код: Выделить всё
Команда: "%COMMANDER_PATH%\run_from_label.bat"
Параметры: MY_FLASH Program\Program.exeMVV
Думаешь, твой батник окажется быстрее моего скрипта?
Сократи хотя бы список через fsutil fsinfo drives.
Думаешь, твой батник окажется быстрее моего скрипта?
Сократи хотя бы список через fsutil fsinfo drives.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.