Работа с приложениями

User's plugins

Работа с приложениями

Postby Ilya » Sat, 06 Feb 2010, 17:30

Работаем с сторонними приложениями.
Ilya
 
Posts: 443
Joined: Mon, 07 Aug 2006, 09:51
Location: Санкт-Петербург

Генератор пользовательских меню для Total Commander.

Postby Ilya » Sat, 06 Feb 2010, 17:34

Генератор меню Total Commander из списка задача ннкрона

Автор: VoidVolker
Обсуждение
Скачать tc-menu-generator.spf

При перечитывании кронтаба создает файл описания меню со списком задач ннкрона.
Возможно создание меню как выбранной группы задач, так и всех задач ннкрона.

Использование: в кронтабе за пределами задачи в секции <% ... %>
Имеется фильтр на задачи вида CLASSIC-TASK-#-xxx - они также не добавляются в меню, и
есть возможность вставки разделителя.

Создание меню из группы задач:
Code: Select all
<% S" C:\<путь к TC>\nncron-tasks.bar" TC-MENU: <Название меню с любыми символами до конца строки>
%>

 < ... Задачи кронтаба для отображения в меню ... >

<% TC-MENU-OFF %>  \ Временно отключаем создание меню  \ Опционально

< ... Задачи скомпилированные здесь не будут добавлены в меню ... >

<% TC-MENU-ON %>  \ Включаем обратно создание меню  \ Опционально

 < ... Задачи кронтаба для отображения в меню ... >

 <% ;TC-MENU %>


А вот так сохраняется меню для всех задач:
Code: Select all
 <% S" Задачи ннкрона" S" C:\<путь к TC>\nncron-tasks.bar" SAVE-TC-BUTTONBAR %>

Задачи определенные уже после сохранения меню не будут добавлены в него. Меню полостью динамическое и обновляется каждый раз при перечитывании кронтабов.


Создание пользовательского меню для Total Commander

Скачать tc-menu.spf

Для создания меню достаточно выполнить вот такой код в консоли или задаче:
Code: Select all
TcMenu: <Название меню с любыми символами до конца строки>
NewItem
S" path\program.exe" TcmButton
S" path\program.exe" TcmCmd
S" path\" TcmPath
S" 0" TcmIconic
S" Программа" TcmMenu
S" C:\<путь к TC>\my-menu.bar" TcMenuSave
Ilya
 
Posts: 443
Joined: Mon, 07 Aug 2006, 09:51
Location: Санкт-Петербург

Расширенная работа с командным интепретатором

Postby Ilya » Fri, 12 Feb 2010, 16:19

Автор:AlikasS
Code: Select all
\ File:         bat-script.spf
\ Author:       AlikasS
\ Date:         --
\ Modified:     09.01.10 ( CMD-EVAL-OFF / CMD-EVAL-OFF для переключения обработки %%)
\ Words: <CMDscript> </SCRIPT> CMD-EVAL-OFF CMD-EVAL-ON CMD-File
\
\ Usage:
\ <CMDscript> <команды интепретатора> </SCRIPT>
\
\ Settings:
\ CMD-File - массив для изменения используемого командного интепретатора ( S" CMD.exe /c" CMD-File PLACE )
\ CMD-EVAL-OFF / CMD-EVAL-OFF - для включения/выключения обработки переменных nncron между знаками %% в тексте команд
\
\ Description:
\ 1. Позволяет писать команды bat (cmd) файлов прямо в тексте задачи
\ <CMDscript>
\ <команды интепретатора>
\ </SCRIPT>
\
\ 2. CMD-EVAL-ON - для включения возможности использоваться макро-переменные nnCron,
\ окруженные с двух сторон знаками процента (%).
\ но при этом командный интерпретатор не сможет обработать свои команды со знаком % ( %1 )
\ т.к. nncron обработает\съест все знаки %
\
\ 3. CMD-EVAL-OFF - (по умолчанию) %% не обрабатываются.
\
\ 4. CMD-File -смена командного интепретатора
\ S" CMD.exe /c" CMD-File PLACE

0 [IF]   \ this is a comment string

Example:

#( ~test-start-bat
AsLoggedUser
NoActive
Action:
 SWHide \ если необходим скрытый запуск батника
<CMDscript>
cd c:\
HELP > helpcmd.txt
</SCRIPT>
)#

[THEN]   \ this is a comment string

USER-CREATE CMD-File 250 USER-ALLOT S" " CMD-File PLACE
VECT <CMDscript-exec>

: script-exec2 ( a u a1 u1 --)
SCR-EXT 2!
S" %GetCurrentThreadId ABS%_%GetTickCount%.%SCR-EXT 2@%" EVAL-SUBST SCR-FNAME 2!
SCR-FNAME 2@ R/W CREATE-FILE 0=
IF >R
 R@ WRITE-FILE THROW
R> CLOSE-FILE DROP
CMD-File COUNT DUP IF S"  " S+ THEN S" %SCR-FNAME 2@%" S+ EVAL-SUBST StartScriptApp
SCR-FNAME 2@ DELETE-FILE THROW
ELSE
2DROP
THEN
;

: script-exec3 ( a u a1 u1 --)
SCR-EXT 2!
S" %GetCurrentThreadId ABS%_%GetTickCount%.%SCR-EXT 2@%" EVAL-SUBST SCR-FNAME 2!
SCR-FNAME 2@ R/W CREATE-FILE 0=
IF >R
EVAL-SUBST R@ WRITE-FILE THROW
R> CLOSE-FILE DROP
CMD-File COUNT  DUP IF S"  " S+ THEN S" %SCR-FNAME 2@%" S+ EVAL-SUBST StartScriptApp
SCR-FNAME 2@ DELETE-FILE THROW
ELSE
2DROP
THEN
;

: CMD-EVAL-OFF ['] script-exec2 TO <CMDscript-exec> ; CMD-EVAL-OFF
: CMD-EVAL-ON ['] script-exec3 TO <CMDscript-exec> ;

: cmd-exec ( a u -- )  S" cmd" <CMDscript-exec> ;
: <CMDscript> ['] cmd-exec S" </SCRIPT>" <script> ; IMMEDIATE

Ilya
 
Posts: 443
Joined: Mon, 07 Aug 2006, 09:51
Location: Санкт-Петербург


Return to Plugins

Who is online

Users browsing this forum: No registered users and 0 guests

cron