Использование утилиты TCIMG в скриптах


Команды утилиты можно использовать в различных скриптах.

'===========================================================================
' Пример вызова команд утилиты в VBScripting
'===========================================================================
Dim WSH
Set WSH = CreateObject("WScript.Shell")

' Путь до утилиты. Измените, если он отличается
TCIMG = "%COMMANDER_PATH%\TCIMG.exe"

' активация окна Total Commander
TCIMGRUN("buttn=TTOTAL_CMD||x|$f")
WScript.Sleep 1000

' вызов окна настроек Total Commander
TCIMGRUN("tcimg=$cm490")
WScript.Sleep 1000
If MsgBox("Вызвали окно настроек" & vbNewLine & "Продолжить?", 33, "TCIMG") = 2 Then Quit

' установка прозрачности окну
TCIMGRUN("trans=200||$TDLGCONFIGALL")
WScript.Sleep 1000
If MsgBox("Сделали окно настроек прозрачным" & vbNewLine & "Продолжить?", 33, "TCIMG") = 2 Then Quit

' сохранение размеров окна
TCIMGRUN("ssize=1||TDLGCONFIGALL")
WScript.Sleep 1000

' перемещение окна
R=200
For i = 0 To 365 Step 50
angle = i * 3.14 / 180
x = Int(R * Cos(angle) + 600)
y = Int(R * Sin(angle) + 400)
TCIMGRUN("wpull=" & x & "," & y & ",,||TDLGCONFIGALL")
WScript.Sleep 400
Next

' возвращение размеров окна и непрозрачности
TCIMGRUN("rsize=1||TDLGCONFIGALL||rdraw<0>")
TCIMGRUN("trans=255||$TDLGCONFIGALL")
WScript.Sleep 1000
If MsgBox("Побегали по кругу и вернулись обратно" & vbNewLine & "Продолжить?", 33, "TCIMG") = 2 Then Quit

' закрыть око настроек
TCIMGRUN("buttn=TDLGCONFIGALL||x|$z")

WSH.Popup "Всё!", 1, "Финиш", 64
Quit

Sub TCIMGRUN(LineParamenters)
  WSH.Exec("""" &TCIMG & """ """ & LineParamenters & """")
End Sub

Sub Quit
  Set WSH = Nothing
  WScript.Quit
End Sub



/* =====================================================*/
/* Пример вызова команд утилиты в JSScripting */
/* ===================================================== */
var WSH = new ActiveXObject("WScript.Shell");

// Путь до утилиты. Измените, если он отличается
var TCIMG = "%COMMANDER_PATH%\\TCIMG.exe";
TCIMG = WSH.ExpandEnvironmentStrings(TCIMG)

// активация окна Total Commander
TCIMGRUN("buttn=TTOTAL_CMD||x|$f");

// вызов окна настроек Total Commander
TCIMGRUN("tcimg=$cm490");
WScript.Sleep(1000);
WScript.Echo("Вызвали окно настроек");

// установка прозрачности окну
TCIMGRUN("trans=200||$TDLGCONFIGALL");
WScript.Sleep(1000);
WScript.Echo("Сделали окно настроек прозрачным");

// сохранение размеров окна
TCIMGRUN("ssize=1||TDLGCONFIGALL");
WScript.Sleep(1000);

// перемещение окна
var R=200, i, y, angle
for (var i = 0; i < 365; i = i + 50) {
  angle = i * 3.14 / 180;
  x = Math.ceil(R * Math.cos(angle) + 600);
  y = Math.ceil(R * Math.sin(angle) + 400);
  TCIMGRUN("wpull=" + x + "," + y + ",,||TDLGCONFIGALL");
  WScript.Sleep(400);
}

// возвращение размеров окна и непрозрачности
TCIMGRUN("rsize=1||TDLGCONFIGALL||rdraw<0>");
TCIMGRUN("trans=255||$TDLGCONFIGALL");
WScript.Sleep(1000);

WScript.Echo("Побегали по кругу и вернулись обратно");

// закрыть око настроек
TCIMGRUN("buttn=TDLGCONFIGALL||x|$z")

WSH.Popup("Всё!", 1, "Финиш", 64);

function TCIMGRUN(LineParamenters)
{
  WSH.Exec('"' + TCIMG + '" "' + LineParamenters + '"');
}


Примеры для команды prgrs

'======================================================
' Пример запуска прогресса с помощью утилиты в VBScripting
'======================================================
' Путь до утилиты. Измените, если он отличается
TCIMG = "%COMMANDER_PATH%\TCIMG.exe"

' запуск окна прогресса
RunTCIMG "prgrs=x||Заголовок|Текст окна|5|5|250|75", False

For i = 1 To 50
  ' установка значения полосе прогресса
  RunTCIMG "prgrs=" & i & "|" & 50, True
Next

' закрытия окна прогресса
RunTCIMG "prgrs=-1", True

' запуск утилиты с параметрами
Sub RunTCIMG(Param,WaitOnReturn)
  CreateObject("WScript.Shell").Run Chr(34) & TCIMG & Chr(34) & " " & Replace(Param, " ", "~~"), 1, WaitOnReturn
End Sub



:: ======================================================
:: Пример запуска прогресса с помощью утилиты в cmd, bat
:: ======================================================
@echo off
:: запуск прогресс бара - процесс остаётся в системе
start TCIMG.exe "prgrs=x||Заголовок|Текст|5|5|250|75"
:: ожидание 2 секунды
timeout 2 /nobreak
:: обновление прогресс бара - процесс автоматически закрывается после обновления
start /wait TCIMG.exe "prgrs=1|3||Сделано~~№1"

timeout 2 /nobreak

start /wait TCIMG.exe "prgrs=2|3||Сделано~~№2"

timeout 2 /nobreak

start /wait TCIMG.exe "prgrs=3|3||Сделано~~№3"

timeout 2 /nobreak
:: закрытие начального процесса
start TCIMG.exe "prgrs=-1"


© Аверин Андрей для Total Commander Image  Averin-And@yandex.ru