Обмен кнопками
Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер
HA3APET жмет всё, что ещё жмецо.
Один из распакованных файлов - это файл *.EXE
Фишка в том, чтобы жать в архив портабл софт. Запуск с панели инструментов скрипта (я думаю, здесь нужен скрипт) вызовет процесс разархивирования и, собственно, запуск программы. Не будет быстро, но можно сэкономить в размере для программ, не так часто используемых.
Я думаю, идея ничё такая... неплохая.
Один из распакованных файлов - это файл *.EXE
Фишка в том, чтобы жать в архив портабл софт. Запуск с панели инструментов скрипта (я думаю, здесь нужен скрипт) вызовет процесс разархивирования и, собственно, запуск программы. Не будет быстро, но можно сэкономить в размере для программ, не так часто используемых.
Я думаю, идея ничё такая... неплохая.
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
В принципе, можно указывать имя файла в параметрах. Создаешь где угодно файл unpexec.cmd (путь к 7z.exe пишешь свой):HA3APET писал(а):MVV
Fine.exe
Код: Выделить всё
@echo off
title Extracting...
if -%2==- goto exit
:loop
set UNIQ_FOLDER=~unpacked_%RANDOM%
if exist "%TEMP%\%UNIQ_FOLDER%" goto loop
"C:\Program Files\7-Zip\7z.exe" x -o"%TEMP%\%UNIQ_FOLDER%" %1
cd /d "%TEMP%\%UNIQ_FOLDER%"
"%2"
rd /s /q "%TEMP%\%UNIQ_FOLDER%"
:exit
clsКод: Выделить всё
Команда: <путь_к_unpexec.cmd>
Параметры: %P%N Fine.exe
В свернутом виде: ДаЕсли ждать завершения команды и удалять файлы не нужно, замени строки:
Код: Выделить всё
"%2"
rd /s /q "%TEMP%\%UNIQ_FOLDER%"Код: Выделить всё
start "" "%2"MVV
Попробовал
С случайными папками не получается, но это мне и не нужно
Остановился пока на этом
Кнопка, как вы и сказали
Всё работает, но естественно только если архив под курсором
А очень хотелось бы, чтобы кнопка срабатывала не зависимо от того где курсор. Имя архива Fine.7z
Думаю, что додумаю самостоятельно, но если не сложно, то не откажусь от помощи. Спасибо.
Попробовал
С случайными папками не получается, но это мне и не нужно
Остановился пока на этом
Код: Выделить всё
@echo off
title Extracting...
if -%2==- goto exit
:loop
if exist "%TEMP%\1" goto loop
"%commander_path%\Soft\SFX Tool\7z.exe" x -o"%TEMP%\1" %1
cd /d "%TEMP%\1"
"%2"
rd /s /q "%TEMP%\1"
:exit
clsКод: Выделить всё
Команда: <путь_к_unpexec.cmd>
Параметры: %P%N Fine.exe
В свернутом виде: ДаА очень хотелось бы, чтобы кнопка срабатывала не зависимо от того где курсор. Имя архива Fine.7z
Думаю, что додумаю самостоятельно, но если не сложно, то не откажусь от помощи. Спасибо.
Случайные папки у меня работают вполне нормально, и ничего делать для этого не нужно. Убери тогда у себя строчку
иначе твой файл зависнет, если папка "%TEMP%\1" существует.
А если имя архива фиксировано, его можно указать вместо %P%N в параметрах команды. Откуда ж мне знать, что за архив ты хочешь распаковывать и зачем)
Если у тебя всего 1 такой архив, и ты постоянно распаковываешь его, возможно, тебе стоит подумать о создании SFX-архива - для 7-Zip есть модули 7zSD, поддерживающие запуск программы после распаковки.
Код: Выделить всё
if exist "%TEMP%\1" goto loopА если имя архива фиксировано, его можно указать вместо %P%N в параметрах команды. Откуда ж мне знать, что за архив ты хочешь распаковывать и зачем)
Если у тебя всего 1 такой архив, и ты постоянно распаковываешь его, возможно, тебе стоит подумать о создании SFX-архива - для 7-Zip есть модули 7zSD, поддерживающие запуск программы после распаковки.
MVV
Всё работает, наконец-то я добился чего хотел )
SFX для моей задачи не подайдёт, так как есть один архив.. а в нём несколько файлов которые хотелось бы запускать, одно из решений кнопочки.
Но может быть есть возможность создания архивов с несколькими модулями sfx, а ключ в параметрах запуска определял бы какой из них запускать?
Спасибо, вам за помощь.
Всё работает, наконец-то я добился чего хотел )
SFX для моей задачи не подайдёт, так как есть один архив.. а в нём несколько файлов которые хотелось бы запускать, одно из решений кнопочки.
Но может быть есть возможность создания архивов с несколькими модулями sfx, а ключ в параметрах запуска определял бы какой из них запускать?
Спасибо, вам за помощь.
Вообще, к одному архиву нельзя прикрепить несколько SFX-модулей, но ничто не мешает после извлечения файлов передавать управление некоему селектору, который будет предоставлять выбор, какую из программ запускать. В банальном случае это может быть просто bat-файл, показывающий список пунктов и запускающий тот или иной по соответствующей клавише, в более продвинутом - специально написанная программка с несколькими кнопочками, или даже некая штука, которая будет выбирать программу для запуска исходя из некоторых внешних факторов (например, особые параметры командной строки родительского процесса, коим будет являться SFX-модуль). От SFX совершенно не требуется встроенная возможность выбора запускаемой программы.
Вообще, это несколько выходит за рамки изначально обсуждаемой темы.
Вообще, это несколько выходит за рамки изначально обсуждаемой темы.
Одной только кнопкой вряд ли получится. Хотя, можно попробовать загнать код JS/VBS-скрипта в кнопку.HA3APET писал(а):не элегантно
Как создать ярлык в Windows с помощю командной строки?
Есть ярлык на Рабочую группу в сетевом окружении.
Кидаю его на панель кнопок, а при нажатии открывается окно проводника со списком ПК рабочей группы. А надо, чтобы этот список открывался в панели ТС.
Или второй вопрос: Какую команду указать в свойствах кнопки, чтобы в ТС открылся список ПК рабочей группы?
Кидаю его на панель кнопок, а при нажатии открывается окно проводника со списком ПК рабочей группы. А надо, чтобы этот список открывался в панели ТС.
Или второй вопрос: Какую команду указать в свойствах кнопки, чтобы в ТС открылся список ПК рабочей группы?
cluster писал(а):Есть ярлык на Рабочую группу в сетевом окружении.
Кидаю его на панель кнопок, а при нажатии открывается окно проводника со списком ПК рабочей группы. А надо, чтобы этот список открывался в панели ТС.
Или второй вопрос: Какую команду указать в свойствах кнопки, чтобы в ТС открылся список ПК рабочей группы?
CD <directory> Пepeйти в yкaзaнный кaтaлoг
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Командой "Копировать полные имена в буфер" не пробовал?cluster писал(а):Да это всё не новость. Но какой путь у рабочей группы (н-р, OFFICE)
Win7
У меня путь такой \\Microsoft Windows Network\Workgroup\
Могу ошибаться.
win xp
Не могу соорудить кнопку, "Д о б а в и т ь в закладки Winamp" выделенные файлы.
Что мы имеем? - Утилита Clamp с cmd:
Это мой стандарт "П л э й" на панели:Bookmarks management
BOOKMARK <file> Add <file> to bookmarks
BOOKMARK CURRENT Add current track to bookmarks
Что-то мне подсказывает что делать нужно так:%COMMANDER_PATH%\PLUGINS\exe\Hidden Start\hstart.exe /NOCONSOLE "%COMMANDER_PATH%\PLUGINS\exe\CLAmp\CLAmp.exe /PLAYPAUSE"
%COMMANDER_PATH%\PLUGINS\exe\Hidden Start\hstart.exe /NOCONSOLE "%COMMANDER_PATH%\PLUGINS\exe\CLAmp\CLAmp.exe /BOOKMARK "%L""
Ну не жесть ли...
Добавился - %L
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Скрипт для создания ярлыка на рабочем столе для текущего пользователя
Код: Выделить всё
' ===============================================
' Автор: SkOle
' Описание: Создает ярлык на рабочем столе
' Параметры: %P%N
' ===============================================
Option Explicit
If WScript.Arguments.Count > 0 Then
Dim WSH, FSO, ShortCut, Desktop
Set WSH = CreateObject("Wscript.Shell")
Desktop = WSH.SpecialFolders("Desktop")
Set FSO = CreateObject("Scripting.FileSystemObject")
Set ShortCut = WSH.CreateShortcut(Desktop & "\" & FSO.GetBaseName(WScript.Arguments(0)) & ".lnk")
ShortCut.TargetPath = WScript.Arguments(0)
ShortCut.Save
Set ShortCut = Nothing
Set FSO = Nothing
Set WSH = Nothing
End If
WScript.Quit