AutoHotkey: Send a command to Total Commander

From TotalcmdWiki
Jump to navigation Jump to search
; Script name: SendTCCommand.ahk

; Sends a Total Commander command to a TC instance.
; Can be used from the scheduler for example.

; Specify the TC command as command line parameter for example:
;   AutoHotkey.exe SendTCCommand.ahk cm_FtpNew
; Or if the cript is compiled:
;   SendTCCommand.exe cm_FtpNew

sCmdParam = %1%
SendTCCommand( sCmdParam )
Return

;
; SendTCCommand 0.1
;
; Function purpose:
;    Sends a Total Commander internal command to a TC instance.
;    It can be used to automate Total Commander.
;
; Parameters:
;    xsTCCommand: The Total Commander internal command, see the list here:
;                 %COMMANDER_PATH%\TOTALCMD.INC
;
; Usage example:
;	SendTCCommand( "cm_RereadSource" )
;

SendTCCommand( xsTCCommand )
{
	loop Read, %COMMANDER_PATH%\TOTALCMD.INC
	{
		StringSplit asCommands, A_LoopReadLine, =
		if (asCommands1 = xsTCCommand)
		{
			StringSplit asCommandsValues, asCommands2, `;
			Break
		}
	}

	if (asCommandsValues1 > 0)
		PostMessage 1075, %asCommandsValues1%, 0, , ahk_class TTOTAL_CMD
}

Back to AutoHotkey