Thank you very much, Greenhorn. I've managed to do it, basically like you. but something fails me, it stays blocked, the key.
Code new:
.Const
.Data?
KEYBOARDINPUT struc
dtype DWORD ?
wVk WORD ?
wScan WORD ?
dwFlags DWORD ?
ttime DWord ?
dwExtraInfo DWORD ?
dummy1 db 8 dup (?)
KEYBOARDINPUT EndS
.Data
hInst HINSTANCE NULL
szClassName DB 'EasyCode2MainWindow', 0
szTitle DB 'Main window', 0
PrgSend DB "cmd.exe", 0
Handle DD 0
Buscar DB "ConsoleWindowClass", 0
Keys KEYBOARDINPUT <>
.Code
start:
Invoke GetModuleHandle, NULL
Mov hInst, Eax
Invoke GetCommandLine
Invoke EnvioTecla
Invoke ExitProcess, Eax
EnvioTecla Proc
Invoke FindWindowEx, 0, 0, Offset Buscar, NULL
Mov Handle, Eax
.If Eax != NULL
Invoke SetForegroundWindow, Handle
Mov Keys.dtype, INPUT_KEYBOARD
Mov Keys.wScan, 0
Mov Keys.ttime, 0
Mov Keys.dwExtraInfo, 0
Mov Keys.wVk, VK_CONTROL
Mov Keys.dwFlags, 0
Invoke SendInput, 1, Addr Keys, SizeOf Keys
Mov Keys.wVk, 'A'
Mov Keys.dwFlags, 0
Invoke SendInput, 1, Addr Keys, SizeOf Keys
Mov Keys.wVk, 'A'
Mov Keys.dwFlags, WM_KEYUP
Invoke SendInput, 1, Addr Keys, SizeOf Keys
Mov Keys.wVk, VK_CONTROL
Mov Keys.dwFlags, WM_KEYUP
Invoke SendInput, 1, Addr Keys, SizeOf Keys
.EndIf
Ret
EnvioTecla EndP