Страница 13 из 243
Добавлено: Чт мар 10, 2011 10:30
Loopback
MVV писал(а):Думаю, можно не утруждать себя парсингом кучи имен в одной команде, нагляднее будет, если будет несколько строчек с TerminateProcess.
Как раз несколько штук парсить - не проблема. И никто не мешает использовать несколько команд с одним параметром.
MVV писал(а):А вот поддержка масок бы скорее всего не помешала.
Посмотрим.
MVV писал(а):Еще, думаю, могла бы быть полезной функция убийства процесса по заголовку или классу окна. Хотя, для решения таких задач есть более специализированные решения.
Ну как бы да, второй Autoit писать не хочется.
Добавлено: Чт мар 10, 2011 13:17
HA3APET
MVV писал(а):Неужели появляющаяся на секунду кнопка панели задач так мозолит глаза?
Свёрнутый батник висит на протяжении всей работы с ТС, или вы задумывали не так?
Добавлено: Чт мар 10, 2011 13:33
MVV
HA3APET писал(а):MVV писал(а):Неужели появляющаяся на секунду кнопка панели задач так мозолит глаза?
Свёрнутый батник висит на протяжении всей работы с ТС, или вы задумывали не так?
Конечно не так. Если батник завершает работу, его окно должно закрываться. И вообще, я ничего не задумывал, это всё лежит на системе.
Проги из батника надо запускать командой
start (
start "" "x:\path\to\program.exe"), чтобы они запускались в фоне, иначе батник будет ожидать их завершения.
Также надо убрать команды
pause из батника, вставленные для наглядности.

Добавлено: Чт мар 10, 2011 14:13
HA3APET
MVV
pause конечно убрал, а вот запускал не через start, спасибо теперь всё ок. Ещё перевёл bat в exe и наконец то добился чего хотел.
Обнаружилась одна проблема. Если открыть TC и перейти в Сеть/FS-плагины, то батник не отрабатывает второй раз при закрытии ТС, а следовательно программа не закрывается.
Код: Выделить всё
@echo off
title Starter
if -%1==-0 goto starter_load
if -%1==-1 goto starter_unload
goto :EOF
:starter_load
start "" "%commander_path%\Camper.exe"
echo Loading...
goto :EOF
:starter_unload
taskkill /T /IM Camper.exe
echo Unloading...
goto :EOF
Добавлено: Чт мар 10, 2011 15:49
Flasher
Loopback писал(а):Можно, но просто не хочется тратить время на временные решения.
Всё-таки возмёшься за autorun? Просто с библиотекой всё вышло бы значительно быстрее. Ну, смотри.
Loopback писал(а):Не лучше, потому что неудобно с точки зрения парсинга.
Почему? После оригинального тега парсишь построчно. А ты предлагаешь всё в одну строку пихнуть, или перенос строки будет также учитываться как завершающий строку с параметрами ключ?
Добавлено: Чт мар 10, 2011 16:23
MVV
HA3APET писал(а):Обнаружилась одна проблема. Если открыть TC и перейти в Сеть/FS-плагины, то батник не отрабатывает второй раз при закрытии ТС, а следовательно программа не закрывается.
Не знаю, это не должно влиять на то, как система выгружает процессы.
А если вернуть оригинал, который запускает батник, и оригинальный батник из архива, его кнопка будет появляться на панели задач при закрытии тотала?
Добавлено: Чт мар 10, 2011 19:54
Loopback
Flasher писал(а):Всё-таки возмёшься за autorun? Просто с библиотекой всё вышло бы значительно быстрее. Ну, смотри.
Да вроде как спешки-то и нет. Жили же без этой функции?
Flasher писал(а):Почему? После оригинального тега парсишь построчно.
Потому что так сделан парсер. Одна строка - одна команда. Это кардинально упрощает парсинг. С разбиванием гемора не оберешься, да и не нравится мне так.
Flasher писал(а):А ты предлагаешь всё в одну строку пихнуть, или перенос строки будет также учитываться как завершающий строку с параметрами ключ?
Выше уже с MVV обговаривали этот момент. Хочешь - несколько параметров в одной команде, хочешь - несколько команд. Может еще как-нибудь, но без многострочности.
Добавлено: Чт мар 10, 2011 19:59
Flasher
Loopback писал(а):Да вроде как спешки-то и нет. Жили же без этой функции?
Как и без всего остального, и без autorun-a в своё время...
Loopback писал(а):Хочешь - несколько параметров в одной команде, хочешь - несколько команд. Может еще как-нибудь, но без многострочности.
А если я хочу несколько команд с параметрами, тогда что? Без многострочности - плохо для конечного юзера. Правка одной строки крайне неудобна, даже с переносом в редакторе. Неужели так трудно обрабатывать 0Ah?
Добавлено: Чт мар 10, 2011 20:19
Loopback
Flasher писал(а):Как и без всего остального, и без auotrun-a в своё время...
Ну так появился же. Всё появится, рано или поздно, так или иначе...
Flasher писал(а):А если я хочу несколько команд с параметрами, тогда что?
И в чем проблема? Записываешь несколько команд с параметрами.
Flasher писал(а):Без многострочности - плохо для конечного юзера. Правка одной строки крайне неудобна, даже с переносом в редакторе. Неужели так трудно обрабатывать 0Ah?
Для многострочности есть Autoit, AHK, VBS и куча других полноценных скриптовых языков. Autorun на это звание не претендует.
В Autorun конец строки является однозначным маркером завершения команды. Если ограничение убрать, что парсер должен делать в такой ситуации?
Считать bla "my dir" продолжением команды или ошибочной строкой с мусором?
Добавлено: Чт мар 10, 2011 20:26
Flasher
Loopback писал(а):И в чем проблема? Записываешь несколько команд с параметрами.
И как же парсер отличит exe/bat/au3/vbs/... в качестве параметра от команды?
Loopback писал(а):Считать bla "my dir" продолжением команды или ошибочной строкой с мусором?
Если это параметр, то строкой с мусором, он же не на одной строке с program.exe.
Добавлено: Чт мар 10, 2011 20:45
Loopback
Flasher писал(а):И как же парсер отличать exe/bat/au3/vbs... в качестве параметра от команды?
Эээ. Ты вообще про что? Мы же вроде про команду завершения процессов говорили. Какие еще параметры?
Flasher писал(а):Если это параметр, то Строкой с мусором, не на одной строке же с program.exe.
Не катит. Любая команда/функция должна иметь маркер начала и маркер конца. Без этого парсер не поймет, где заканчиваются данные, относящиеся к этой команде, особенно это критично для команд с необязательными параметрами. В Autoit маркером конца является закрывающая скобка ), в Autorun - перевод строки.
На этом предлагаю закрыть тему с многострочностью. В существующем виде я все равно не вижу пути ее реализации.
Добавлено: Чт мар 10, 2011 21:02
Flasher
Loopback писал(а):Эээ. Ты вообще про что? Мы же вроде про команду завершения процессов говорили. Какие еще параметры?
Ты сам про них написал. Я так понял, что ты имел в виду существующий парсер для ShellExec. Вот я и спрашиваю, как парсер при написании путей к exe-файлам в кач. параметра отличит их от путей к вызываемым прогам, если и те и другие написаны в одну строку?
Loopback писал(а):Не катит. Любая команда/функция должна иметь маркер начала и маркер конца. Без этого парсер не поймет, где заканчиваются данные, относящиеся к этой команде, особенно это критично для команд с необязательными параметрами. В Autoit маркером конца является закрывающая скобка ), в Autorun - перевод строки.
Так придумай новые маркеры. Сделай, чтобы для списка программ использовался перевод строки в качестве разделителя, а для основной команды открывающий и закрывающий маркер, например, символ "&".
Добавлено: Чт мар 10, 2011 21:08
Loopback
Flasher писал(а):Так придумай новые маркеры
Это приказ?

Добавлено: Чт мар 10, 2011 21:11
Flasher
Это предложение, которого может очень качественно отразиться на юзабильности при добавлении утилит/программ к общему списку.

А её лучше начинать новую команду autorun-a с "кавычка + перевод строки", но списки обрабатывать по "новый маркер + перевод строки". Как такая мысль?
Добавлено: Чт мар 10, 2011 21:36
Loopback
Ради 1 (одной) функции (которой, кстати, еще даже нет) и удобства работы со списком из десятка программ, ты мне предлагаешь убить не один час работы, полностью изменить идеологию работы плагина и похоронить прозрачность работы с ним. Я пока к этому не готов.