View previous topic :: View next topic |
Author |
Message |
sEXEcutor
Joined: 09 Jul 2006 Posts: 24
|
(Separately) Posted: Thu Oct 25, 2012 21:54 Post subject: |
|
|
В некоторых внутренних ассоциациях я пользуюсь командой "%COMMANDER_EXE%" /S=L "%1" для открытия файла в Листере. Как оказалось, ShellExec срабатывает каждый раз, когда Листер вызывается таким образом. Можно ли добавить проверку, чтобы не вызывать ShellExec повторно во время одной сессии TC? |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Fri Oct 26, 2012 09:40 Post subject: |
|
|
Откуда же плагин может знать, с какой целью запущен тотал?
Создай второй wincmd.ini без плагинов (разве что листерные оставь) и запускай второй экземпляр тотала с этим INI с помощью ключа /i=путь_к_ini. Чем меньше лишнего будет в этом конфиге, тем быстрее будет открываться этот отдельный листер.
Можешь даже для секции ListerPlugins в альтернативном конфиге редирект сделать на основной wincmd.ini, тогда плагины всегда будут одни и те же. Думаю, такого конфига вполне хватит (поправь путь к основному конфигу, если у тебя другой):
Code: | [Configuration]
AlternateUserIni=%COMMANDER_PATH%\wincmd.ini
[ListerPlugins]
RedirectSection=%COMMANDER_PATH%\wincmd.ini |
_________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
sEXEcutor
Joined: 09 Jul 2006 Posts: 24
|
(Separately) Posted: Fri Oct 26, 2012 14:59 Post subject: |
|
|
MVV wrote: | Откуда же плагин может знать, с какой целью запущен тотал? |
Разве из плагина нельзя видеть параметры, с которыми запущен TC?
Так или иначе, RedirectSection хороший вариант, спасибо. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sat Oct 27, 2012 13:08 Post subject: |
|
|
sEXEcutor
Можно также открывать через программу Lister.exe, а если не отдельным процессом, то так. |
|
Back to top |
|
|
Loopback
Joined: 07 Sep 2009 Posts: 1291
|
(Separately) Posted: Tue Oct 30, 2012 13:01 Post subject: |
|
|
Пятая бета.
Скачать
В этой версии поменялся API плагинов. Теперь можно добавлять переменные и функции, возвращающие результат. Наверняка, он еще будет меняться. Также добавил исходник тестового плагина.
Сделана эта версия была довольно давно, и долгое время проработала у меня без проблем, но все же вполне могут быть новые косяки.
KopBuH
Определение восьмерки добавил. Но проверить архитектуру пока не могу за отсутствием установленной восьмерки. |
|
Back to top |
|
|
Loopback
Joined: 07 Sep 2009 Posts: 1291
|
(Separately) Posted: Thu Nov 01, 2012 17:15 Post subject: |
|
|
KopBuH wrote: | заметил еще такой глюк: |
Поставил восьмерку (x64 Pro) в виртуалку. Опуская лирику (по большей части матерную) касаемо нового интерфейса, могу сказать, что косяк не наблюдаю, все определяется верно. |
|
Back to top |
|
|
Loopback
Joined: 07 Sep 2009 Posts: 1291
|
(Separately) Posted: Wed Nov 07, 2012 16:42 Post subject: |
|
|
Шестая бета.
Скачать
Что нового:
Code: |
+ возможность использования полноценных условий сравнения
+ возможность использования специальных функций в сравнении
+ плагин Process (работа с процессами)
* изменения в языковом файле
|
Второй и третий пункты подразумевают добавление востребованного функционала по определению запущенности процесса. |
|
Back to top |
|
|
Loopback
Joined: 07 Sep 2009 Posts: 1291
|
(Separately) Posted: Thu Nov 08, 2012 18:03 Post subject: |
|
|
Седьмая бета.
Скачать
Изменения:
Code: |
+ возможность выполнения действий при закрытии TC
+ добавлена функция ProcessTerminate в плагин Process
+ файл конфигурации может быть ANSI или UTF-16(LE).
- исправлена проблема с ShellExec в определенных условиях
|
|
|
Back to top |
|
|
ask-rus
Joined: 10 Nov 2009 Posts: 2076 Location: Russian Federation
|
(Separately) Posted: Thu Nov 08, 2012 18:06 Post subject: |
|
|
Loopback wrote: | + возможность выполнения действий при закрытии TC |
Ух ты! Как вовремя, спасибо. _________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
Back to top |
|
|
KopBuH
Joined: 02 Jul 2010 Posts: 127 Location: Tashkent, Uzbekistan
|
(Separately) Posted: Fri Nov 09, 2012 15:11 Post subject: |
|
|
Loopback:
спасибо, теперь всё работает и в Win8 с таким кодом:
# Проверка версии ОС
If %AUTORUN_OSVERSION% = WIN_XP Then
SetEnv COMMANDER_OSVER "Windows XP"
ElseIf %AUTORUN_OSVERSION% = WIN_2003 Then
SetEnv COMMANDER_OSVER "Windows Server 2003"
ElseIf %AUTORUN_OSVERSION% = WIN_VISTA Then
SetEnv COMMANDER_OSVER "Windows Vista"
ElseIf %AUTORUN_OSVERSION% = WIN_2008 Then
SetEnv COMMANDER_OSVER "Windows Server 2008"
ElseIf %AUTORUN_OSVERSION% = WIN_2008R2 Then
SetEnv COMMANDER_OSVER "Windows Server 2008R2"
ElseIf %AUTORUN_OSVERSION% = WIN_7 Then
SetEnv COMMANDER_OSVER "Windows Seven"
ElseIf %AUTORUN_OSVERSION% = WIN_8 Then
SetEnv COMMANDER_OSVER "Windows 8"
ElseIf %AUTORUN_OSVERSION% = WIN_2012 Then
SetEnv COMMANDER_OSVER "Windows Server 2012"
Else
SetEnv COMMANDER_OSVER "%AUTORUN_OSVERSION%"
EndIf
P.S. (для людей) Если оставить условие сравнения по старому, то есть:
If %AUTORUN_OSVERSION% == WIN_XP Then
то при запуске ТС будет закрыватся с ошибкой.
при переходе на 7 бету увидел, что теперь сравнение производится одним знаком "равно", то есть так:
If %AUTORUN_OSVERSION% = WIN_XP Then |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Fri Nov 09, 2012 18:56 Post subject: |
|
|
Тотал закрывается с ошибкой? Или просто модуль пишет ошибку, но тотал работает? По логике модуль должен сообщить об ошибке, но не закрывать тотал.
Кстати, из DllMain вызывать MessageBox нельзя, может случиться, что его невозможно закрыть. _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
KopBuH
Joined: 02 Jul 2010 Posts: 127 Location: Tashkent, Uzbekistan
|
(Separately) Posted: Sat Nov 10, 2012 08:52 Post subject: |
|
|
если в конфиге оставить условие сравнения по старому, то есть символом ==, то при запуске ТС выдает такое:
версия ТС 8.01 Final. |
|
Back to top |
|
|
ask-rus
Joined: 10 Nov 2009 Posts: 2076 Location: Russian Federation
|
(Separately) Posted: Sat Nov 10, 2012 21:11 Post subject: |
|
|
Loopback
Я не уверен, что у меня выполняется некоторая команда... Замечаний не будет?
Code: | ShellExec %COMMANDER_PATH%\PLUGINS\Tools\TCFS2\TCFS2.exe /ef "set_tcini(TCFS2, Bar, 1)" |
_________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sat Nov 10, 2012 21:20 Post subject: |
|
|
Замечания очевидны:
Quote: | ShellExec "%COMMANDER_PATH%\PLUGINS\Tools\TCFS2\TCFS2.exe" "/ef set_tcini(TCFS2,Bar,1)" |
|
|
Back to top |
|
|
ask-rus
Joined: 10 Nov 2009 Posts: 2076 Location: Russian Federation
|
(Separately) Posted: Sat Nov 10, 2012 21:41 Post subject: |
|
|
Flasher wrote: | Замечания очевидны: |
TCFS2 так не работает, а вот так тем более:
Quote: | ShellExec "%COMMANDER_PATH%\PLUGINS\Tools\TCFS2\TCFS2.exe" "/ef "set_tcini(TCFS2,Bar,1)"" |
_________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
Back to top |
|
|
|