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 

Autorun
Goto page Previous  1, 2, 3 ... 40, 41, 42 ... 130, 131, 132  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
KopBuH



Joined: 02 Jul 2010
Posts: 127
Location: Tashkent, Uzbekistan

Post (Separately) Posted: Sun Dec 16, 2012 16:57    Post subject: Reply with quote

Loopback:
Можете сделать команду для вызова выполнения внешнего скрипта, что-то вроде ExecCfg autorun_custom.cfg ?.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Sun Dec 16, 2012 17:11    Post subject: Reply with quote

У кого-нибудь работает такая команда?
Code:
Pragma AutorunFinalizeSection

ShellExec /EV /SW_HIDE %comspec% '/c del C:\Sample.txt'

_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
KopBuH



Joined: 02 Jul 2010
Posts: 127
Location: Tashkent, Uzbekistan

Post (Separately) Posted: Sun Dec 16, 2012 17:23    Post subject: Reply with quote

Flasher wrote:
У кого-нибудь работает такая команда?
Code:
Pragma AutorunFinalizeSection

ShellExec /EV /SW_HIDE %comspec% '/c del C:\Sample.txt'


Так
Code:
ShellExec /EV /SW_HIDE cmd.exe '/c del C:\Sample.txt'

и так
Code:
ShellExec /EV /SW_HIDE '%COMSPEC%' '/c del C:\Sample.txt'

работает.


Last edited by KopBuH on Sun Dec 16, 2012 17:25; edited 1 time in total
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Sun Dec 16, 2012 17:24    Post subject: Reply with quote

Нужно именно при закрытии ТС.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
KopBuH



Joined: 02 Jul 2010
Posts: 127
Location: Tashkent, Uzbekistan

Post (Separately) Posted: Sun Dec 16, 2012 17:27    Post subject: Reply with quote

Flasher wrote:
Нужно именно при закрытии ТС.

добавь одинарные кавычки к строке %COMSPEC% - и всё заработает Wink
пример:
Code:
ShellExec /EV /SW_HIDE '%COMMANDER_PATH%\Macroses\sample.exe' ' -K "%RANDOM%" "%commander_path%\sample.txt"'


Last edited by KopBuH on Sun Dec 16, 2012 17:30; edited 1 time in total
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Sun Dec 16, 2012 17:28    Post subject: Reply with quote

Одинарные кавычки тут не нужны. Пробелов нет. Кавычки пользы не принесут. Просто баг похоже. То ли параметры не обрабатываются после директивы выхода, то ли с кавычками непорядок. Жду автора..
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Loopback



Joined: 07 Sep 2009
Posts: 1274

Post (Separately) Posted: Sun Dec 16, 2012 21:10    Post subject: Reply with quote

KopBuH wrote:
Можете сделать команду для вызова выполнения внешнего скрипта, что-то вроде ExecCfg autorun_custom.cfg ?.

Нет, на текущей реализации это вряд ли получится. Единственное, что можно сделать - аналог include, т.е. включать в тело скрипта содержимое другого файла. Однако, в этом случае надо будет следить, чтобы не получилась вложенность условий.
Flasher wrote:
Кстати, Loopback, а ты можешь добавить возможность работы с условиями без переноса строк и EndIf, как в VB?

В текущей реализации нет, для этого нужен полноценный парсер с разбивкой на токены.
Flasher wrote:
У кого-нибудь работает такая команда?

У меня отработала, на WinXP и на Win7.

Но не исключено, что это опять проблема с одной из самых оригинальных функций WinAPI AssocQueryString, которая на всех системах выдает разные результаты. А иногда и на одной тоже разные.

Завтра сделаю дебажную версию, посмотрим, что там выдается.
Back to top
View user's profile Send private message
MVV



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

Post (Separately) Posted: Sun Dec 16, 2012 21:33    Post subject: Reply with quote

Quote:
Но не исключено, что это опять проблема с одной из самых оригинальных функций WinAPI AssocQueryString

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



Joined: 07 Sep 2009
Posts: 1274

Post (Separately) Posted: Sun Dec 16, 2012 22:37    Post subject: Reply with quote

MVV wrote:
А зачем вызывать эту странную функцию для команды ShellExec?

ShellExecuteEx хороша, если нужно только запустить процесс и больше с ним ничего не делать. Однако когда я делал закрытие процесса при выходе, с ней возникли проблемы. Поэтому пришлось перейти на более предсказуемый CreateProcess.
Back to top
View user's profile Send private message
MVV



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

Post (Separately) Posted: Sun Dec 16, 2012 23:52    Post subject: Reply with quote

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



Joined: 07 Sep 2009
Posts: 1274

Post (Separately) Posted: Mon Dec 17, 2012 14:58    Post subject: Reply with quote

MVV wrote:
А какие проблемы-то?

Не помню точно, уже больше года прошло. Вроде не удавалось получить корректный pid из дескриптора процесса.

Flasher
Попробуй эту версию. В каталоге плагина будет создан файл debug.log, в нем для каждого вызова ShellExec три строчки. Скинь те, которые относятся к проблемному.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Mon Dec 17, 2012 18:03    Post subject: Reply with quote

Loopback
Ничего особого нет.
Code:
Source: C:\WINDOWS\system32\cmd.exe
AssocExePath: %1
CmdLine: "C:\WINDOWS\system32\cmd.exe"

Проверял на XP и 7 x32.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Loopback



Joined: 07 Sep 2009
Posts: 1274

Post (Separately) Posted: Mon Dec 17, 2012 18:18    Post subject: Reply with quote

Flasher
Все правильно, у меня то же самое. Только при этом файл удаляет.

Случайно права на удаляемый файл не ограничены? Или может атрибут какой-нибудь системный стоит?
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Mon Dec 17, 2012 18:40    Post subject: Reply with quote

Loopback
Никаких ограничений. Просто команды не отрабатывают. С любым файлом так.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
MVV



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

Post (Separately) Posted: Mon Dec 17, 2012 20:08    Post subject: Reply with quote

Loopback,
Да, pid не получить просто так. Но нужен ли он тебе? У тебя же есть дескриптор, который можно использовать для проверки состояния процесса и его завершения. А что ты делаешь по pid?
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander All times are GMT + 4 Hours
Goto page Previous  1, 2, 3 ... 40, 41, 42 ... 130, 131, 132  Next
Page 41 of 132

 
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