Страница 1 из 1

Разница в формате передаваемых параметров

Добавлено: Пт янв 25, 2013 09:42
gora
1 Создаем папку c:\test
2 В ней два скрипта test.vbs, test.bat и файл Имя кириллицей с пробелами.txt
3 Скрипты:
test.vbs

Код: Выделить всё

MsgBox Wscript.Arguments(0)
test.bat

Код: Выделить всё

@Echo Off
Echo %*
Pause>Nul
4 Создаем две кнопки на панели для запуска скриптов:

Код: Выделить всё

TOTALCMD#BAR#DATA
c:\test\test.vbs
%P%N %P%S
C:\Windows\System32\WScript.exe,2
test


-1

Код: Выделить всё

TOTALCMD#BAR#DATA
c:\test\test.bat
%P%N %P%S
C:\Windows\System32\imageres.dll,-68
test


-1
5 На левой панели открываем упомянутую папку
6 На правой в той же папке поиском ищем файл Имя кириллицей с пробелами.txt и результаты поиска выводим на панель (правую)
7 Перетаскиваем файл Имя кириллицей с пробелами.txt с левой панели на обе кнопки по очереди, затем перетаскиваем тот же файл с правой панели по очереди.
8 Получаем:
https://dl.dropbox.com/u/35142695/dif_data.png

Почему в окнах консоли мы видим одинаковые результаты, а в окнах vbs результаты (формат переданных параметров) различаются ?

Спасибо.

Добавлено: Пт янв 25, 2013 09:59
Avada
Работу скриптов принято обсуждать в подфоруме "Автоматизация", куда всё это и переносится.

Добавлено: Пт янв 25, 2013 10:37
gora
Avada писал(а):Работу скриптов принято обсуждать в подфоруме
Avada
Дело не в скриптах, а в передаче Тоталом параметров, но пусть будет здесь.

Поигрался с параметрами кнопок, менял их, ставил даже %L, а потом совсем удалил их - результат тот же самый.
Значит при перетаскивании ТС передает какой-то иной параметр (или же его передает оболочка), но какой? Каков его формат? И почему он разный для разного представления панелей?

Добавлено: Пт янв 25, 2013 13:04
Flasher
Согласен, что вопрос к скриптам отношение имеет весьма косвенное.
Всего параметров при таком способе TC передаёт в vbs 4 (ни больше ни меньше), сепарируя по пробелу. Кавычки ни подставные, ни автоматические ничего не дают. Почему-то в этом режиме параметры при D&D возвращают именно короткие пути. Можно свободно обращаться к Гислеру по поводу передачи параметров из списка результатов поиска. Кстати, там ещё косяки есть в этом режиме (возможно, я их где-то уже описывал - не помню).
Сам никогда перетаскиваниями на кнопки скриптов не баловался за ненадобностью.

Добавлено: Пт янв 25, 2013 14:40
gora
Flasher писал(а):Кавычки ни подставные, ни автоматические ничего не дают.
При полном отсутствии параметров в кнопках кавычки уже и ставить некуда, а имя файла все равно передается. При D&D, видимо, параметры в кнопке игнорируются.
Flasher писал(а):Почему-то в этом режиме параметры при D&D возвращают именно короткие пути.
И тоже не факт, что короткое. В батник передается ВСЕГДА длинное да еще и в кавычках, а вот в vbs при D&D из панели, действительно короткое, но при D&D из панели с результатами поиска, длинное и без кавычек.
Flasher писал(а):Сам никогда перетаскиваниями на кнопки скриптов не баловался за ненадобностью
При D&D автоматически выбирается нужная панель и курсор устанавливается на нужный файл. :) Привычка...

Добавлено спустя 25 минут:

Сделал еще две кнопки для запуска test.au3 и test.exe, скомпилированного из этого test.au3.
test.au3:

Код: Выделить всё

MsgBox(0,'',$CmdLine[1])
В кнопках убрал передаваемые параметры.
Кнопка для test.au3 дает для D&D результаты аналогичные кнопке с vbs, а вот кнопка для test.exe, в обоих случаях D&D показывает полные пути без кавычек!

Добавлено: Пт янв 25, 2013 15:09
Flasher
gora писал(а):При полном отсутствии параметров в кнопках кавычки уже и ставить некуда, а имя файла все равно передается. При D&D, видимо, параметры в кнопке игнорируются.
Есть такое. И число передаваемых параметров прямо зависит от числа пробелов.
gora писал(а):И тоже не факт, что короткое. В батник передается ВСЕГДА длинное да еще и в кавычках
Я как раз про vbs писал.
gora писал(а):и курсор устанавливается на нужный файл.
Это как?

Про AutoIt понятно. Однако..