SendTCUserCommand("em_blablabla")
Return
SendTCUserCommand(Command) ; string
{
If Command <>
{
VarSetCapacity(CopyDataStruct, 3*A_PtrSize, 0) ; Set up the structure's memory area.
dwData := Asc("E") + 256 * Asc("M")
NumPut(dwData, CopyDataStruct, 0)
cbData := StrPutVar(Command, Command, "cp0")
NumPut(cbData, CopyDataStruct, A_PtrSize) ; OS requires that this be done.
NumPut(&Command, CopyDataStruct, 2*A_PtrSize) ; Set lpData to point to the string itself.
SendMessage, 0x4a, 0, &CopyDataStruct,, ahk_class TTOTAL_CMD ; 0x4a is WM_COPYDATA. Must use Send not Post.
}
}
StrPutVar(string, ByRef var, encoding)
{
VarSetCapacity( var, StrPut(string, encoding) * ((encoding="utf-16"||encoding="cp1200") ? 2 : 1) ) ; Ensure capacity.
return StrPut(string, &var, encoding) ; Copy or convert the string.
}
|