Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Обмен кнопками
Goto page Previous  1, 2, 3 ... 35, 36, 37 ... 43, 44, 45  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Секреты и советы printer-friendly view
View previous topic :: View next topic  
Author Message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Sat Jun 26, 2010 20:52    Post subject: Reply with quote

Проблема в том, что консоль требует имена в кодировке DOS.
Попробуй вместо %L поставить %l или %D. И скрести пальцы - если у твоих файлов нет дополнительных коротких имен, ничего не выйдет. Smile

Еще можно переделать командный файл, чтобы передавать имена как параметры - тогда будут работать в нормальной кодировке, но длина командной строки ограничена (не знаю, каков предел, в справке по ТК написано, что 32767 символов Smile), поэтому очень-очень много файлов не влезет. Чтобы укоротить имена, лучше передавать их без путей, при этом поле рабочей папки должно быть пустым, чтобы имена искались в текущей папке. Итак, файл:
Code:
@echo off
:loop
if -%1==- pause && cls && goto :EOF
"%COMMANDER_PATH%\SOFT\UPX\upx.exe" -9 --lzma --compress-icons=0 %1
shift
goto loop

Он принимает имена не в виде списка файлов, а через пробел в командной строке. В параметры кнопки надо прописать %S.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
ask-rus



Joined: 10 Nov 2009
Posts: 2076
Location: Russian Federation

Post (Separately) Posted: Tue Jun 29, 2010 18:17    Post subject: Reply with quote

MVV wrote:
Еще можно переделать командный файл, чтобы передавать имена как параметры - тогда будут работать в нормальной кодировке

Так и поступил.
MVV wrote:
но длина командной строки ограничена (не знаю, каков предел, в справке по ТК написано, что 32767 символов ), поэтому очень-очень много файлов не влезет.

Редко до 20 файлов пак, поэтому всё пучком. Батник работает. Благодарствую.
_________________
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Back to top
View user's profile Send private message
ask-rus



Joined: 10 Nov 2009
Posts: 2076
Location: Russian Federation

Post (Separately) Posted: Sun Jul 04, 2010 18:41    Post subject: Reply with quote

Какая-то мистика, но батник перестал работать в один прекрасный вчерашний день (просто моргает окно кмд). Причины мне неизвестны: восстановил раздел с ОС с LiveCD, переименовал каталог с TC, перенес батник, но потом тут же вернул его на место - больше ничего не делал.

d:\Total Commander\SOFT\UPX\upx.exe
d:\Total Commander\PLUGINS\bat\MultiUPX.bat
Code:
@echo off
:loop
if -%1==- pause && cls && goto :EOF
"%COMMANDER_PATH%\SOFT\UPX\upx.exe" -9 --lzma --compress-icons=0 %1
shift
goto loop

Code:
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\PLUGINS\bat\MultiUPX.bat
%S
%COMMANDER_PATH%\ICO\UPX_2.ico
UPX


-1


_________________
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2218
Location: Москва, Россия

Post (Separately) Posted: Sun Jul 04, 2010 20:01    Post subject: Reply with quote

ask-rus wrote:
Какая-то мистика, но батник перестал работать

Первым делом для проверки в команде кнопки перед вызовом батника напиши "cmd /k".
_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
ask-rus



Joined: 10 Nov 2009
Posts: 2076
Location: Russian Federation

Post (Separately) Posted: Sun Jul 04, 2010 20:33    Post subject: Reply with quote

Batya
Code:
TOTALCMD#BAR#DATA
cmd /k "%COMMANDER_PATH%\PLUGINS\bat\MultiUPX.bat"
%S
%COMMANDER_PATH%\ICO\UPX_2.ico
UPX


-1

Так работает, но после в консоли вижу:
Quote:
C:\>

Собственно, это было проверкой (?) и проверка прошла.
Без "cmd /k" всё по-прежнему.
_________________
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Sun Jul 04, 2010 21:13    Post subject: Reply with quote

А если вручную запустить из командной строки этот бат-файл, передав любой экзешник как параметр (запускать по Shift+Enter) - сработает?

А вообще, если с cmd работает, то замени cmd /k на cmd /c, и окно будет закрываться после выполнения команды.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
ask-rus



Joined: 10 Nov 2009
Posts: 2076
Location: Russian Federation

Post (Separately) Posted: Sun Jul 04, 2010 22:13    Post subject: Reply with quote

MVV wrote:
А если вручную запустить из командной строки этот бат-файл, передав любой экзешник как параметр (запускать по Shift+Enter) - сработает?

Не знаю, как правильно это сделать.
MVV wrote:
А вообще, если с cmd работает, то замени cmd /k на cmd /c, и окно будет закрываться после выполнения команды.

Да, всё в норме.
_________________
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Sun Jul 04, 2010 23:01    Post subject: Reply with quote

ask-rus wrote:
MVV wrote:
А если вручную запустить из командной строки этот бат-файл, передав любой экзешник как параметр (запускать по Shift+Enter) - сработает?

Не знаю, как правильно это сделать.

Фокус на MultiUPX.bat, Ctrl+Shift+Enter (полное имя файла пропишется в командную строку), затем фокус на экзешник, который нужно сжать, Ctrl+Shift+Enter (полное имя экзешника добавится к командной строке), и затем Shift+Enter.

А просто запустить MultiUPX.bat двойным щелчком - по идее должна открыться консоль с предложением нажать любую клавишу, а потом закрыться - работает?
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
jentoso



Joined: 20 Dec 2007
Posts: 346

Post (Separately) Posted: Mon Jul 05, 2010 09:30    Post subject: Reply with quote

А почему нельзя просто через MultiArc все сделать?
Back to top
View user's profile Send private message
ask-rus



Joined: 10 Nov 2009
Posts: 2076
Location: Russian Federation

Post (Separately) Posted: Mon Jul 05, 2010 11:15    Post subject: Reply with quote

MVV wrote:
Фокус на MultiUPX.bat, Ctrl+Shift+Enter (полное имя файла пропишется в командную строку), затем фокус на экзешник, который нужно сжать, Ctrl+Shift+Enter (полное имя экзешника добавится к командной строке), и затем Shift+Enter.

Я так и делал, только ручками.
Quote:
"d:\Total Commander\PLUGINS\bat\MultiUPX.bat" "c:\Program Files\Atlantis\Atlantis.exe"

Quote:
Неправильная команда или имя файла

MVV wrote:
А просто запустить MultiUPX.bat двойным щелчком - по идее должна открыться консоль с предложением нажать любую клавишу, а потом закрыться - работает?

Работает.
_________________
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Back to top
View user's profile Send private message
ask-rus



Joined: 10 Nov 2009
Posts: 2076
Location: Russian Federation

Post (Separately) Posted: Mon Jul 05, 2010 11:34    Post subject: Reply with quote

MVV
Тут ещё вот в чем странность. Я заметил, что с твоим батником
Code:
TOTALCMD#BAR#DATA
cmd /c "%COMMANDER_PATH%\PLUGINS\bat\MultiUPX.bat"
%S
%COMMANDER_PATH%\ICO\UPX_2.ico
UPX

0
-1

некоторые исполняемые перестали жаться.
Quote:
NotCompressibleException

В то время, как просто переношу исполняемый на кнопку
Code:
TOTALCMD#BAR#DATA
D:\Total Commander\SOFT\UPX\upx.exe
-9 --lzma
D:\Total Commander\TOTALCMD.EXE,3

D:\Total Commander\SOFT\UPX\

-1

и процесс проходит успешно.
_________________
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2218
Location: Москва, Россия

Post (Separately) Posted: Mon Jul 05, 2010 11:42    Post subject: Reply with quote

ask-rus wrote:
Цитата:
"d:\Total Commander\PLUGINS\bat\MultiUPX.bat" "c:\Program Files\Atlantis\Atlantis.exe"

Цитата:
Неправильная команда или имя файла

Открой консоль. Выполни команды:
Code:
c:
cd c:\Program Files\Atlantis\
"d:\Total Commander\PLUGINS\bat\MultiUPX.bat" Atlantis.exe

Так работает?

ask-rus wrote:
некоторые исполняемые перестали жаться.

Вероятно, в именах таких файлов пробелы.
_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
ask-rus



Joined: 10 Nov 2009
Posts: 2076
Location: Russian Federation

Post (Separately) Posted: Mon Jul 05, 2010 11:57    Post subject: Reply with quote

Batya wrote:
Так работает?

Работает.
Но если повторить действия с другим подопытным:
Quote:
c:\TCFS2.exe

Получим:
Quote:
NotCompressibleException

Как видишь, нет пробелов.
_________________
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2218
Location: Москва, Россия

Post (Separately) Posted: Mon Jul 05, 2010 12:04    Post subject: Reply with quote

ask-rus wrote:
Получим:
Цитата:
NotCompressibleException

Разницу вижу только в параметре "--compress-icons=0". Попробуй без него.
_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
ask-rus



Joined: 10 Nov 2009
Posts: 2076
Location: Russian Federation

Post (Separately) Posted: Mon Jul 05, 2010 12:10    Post subject: Reply with quote

Попробовал:
Code:
@echo off
:loop
if -%1==- pause && cls && goto :EOF
"%COMMANDER_PATH%\SOFT\UPX\upx.exe" -9 --lzma %1
shift
goto loop

Quote:
c:\TCFS2.exe

Аналогия в общем.
Quote:
NotCompressibleException

_________________
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Секреты и советы All times are GMT + 4 Hours
Goto page Previous  1, 2, 3 ... 35, 36, 37 ... 43, 44, 45  Next
Page 36 of 45

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group