Добавлено: Вт авг 27, 2013 18:43
MVV
Вроде работает. Но такое ощущение, что ещё вчера так тоже пробовал (видимо, где-то была ошибка).
Вроде работает. Но такое ощущение, что ещё вчера так тоже пробовал (видимо, где-то была ошибка).
Конечно интересно, где скрывается баг. Вообще, TCFS2 не должна приводить к таким последствиям. Можно попробовать вызывать любой другой экзешник с теми же параметрами.Avada писал(а):если нужно и дальше разбираться в причинах глюков при использовании TCFS2, я готов, разумеется, продолжать
LonerD писал(а):В связи с появлением команды поиска в отдельном процессе, возникает вопрос - как запустить эту команду, чтобы при её запуске не выполнялось всё то, что прописано в Autorun.cfg ?
Тогда уже комбинацию из команд: установку некоторой переменной окружения и запуск поиска, а в Autorun.cfg все действия выполнять при условии, что эта переменная не определена.LonerD писал(а):Пока что возникла шальная мысль навесить вместо cm_SearchSeparate комбинацию команд
Как же можно отказываться от контентных плагинов в диалоге поиска?Flasher писал(а):Лучше попросить Гислера, чтобы не затрагивал плагины при задействовании подобных команд.
Нельзя, не подумал..MVV писал(а):Как же можно отказываться от контентных плагинов в диалоге поиска?
LonerD писал(а):Наверное, лучшим выходом будет - в сам плагин Autorun вставить возможность игнорировать содержимое Autorun.cfg при запуске команд поиска/сравнения/ит.д. в отдельном процессе.
Да, первая мысль такая и приходит. Он действительно открывает новый экземпляр с этим параметром?MVV писал(а):Раз у нас особый плагин, он и должен решать проблему: при инициализации вызывать функцию GetCommandLine и смотреть, есть ли в командной строке тотала параметр /S=.
Можно и так, но наверно, парсить командную строку средствами плагина будет не слишком удобно.MVV писал(а):А можно сделать универсальную вещь: добавить в плагин возможность чтения командной строки в переменную. Тогда в конфиге можно будет проверять, содержатся ли в командной строке определенные параметры (просмотр/синхронизация/поиск в отдельном процессе) и не выполнять те или иные команды.
А если я запустил кучу процессов?Как вариант можно ещё проверять на запущенность процесса ТС и пихать в условие весь код.
Да, я первым делом проверил, как именно открывается отдельный поиск - просто запускается новый тотал с параметром /S=F (плюс параметры поиска, такие как режим сортировки и путь поиска).Он действительно открывает новый экземпляр с этим параметром?
Тогда можно проверять родительский процесс и заголовок окна.MVV писал(а):А если я запустил кучу процессов?
Есть и такой вариант: проверить, что у текущего процесса НЕТ главного окна (т.к. его нет у процесса фонового поиска), т.е. перебрать окна с классом TTOTAL_CMD и убедиться, что нет окна с нашим PID. Но мне всё равно кажется, что будет более гибко, если в конфиге можно будет вручную искать текст в комстроке.Тогда можно проверять родительский процесс и заголовок окна.