Apagada docs

Aprendiendo a programar el pasado

Herramientas de usuario

Herramientas del sitio


es:basic:vba:cscript_teclea

CSCRIPT: Teclea

Abre un programa concreto (en el ejemplo, el editor de ecuaciones de LibreOffice) y comienza a teclear en él. Convierte todos los caracteres reservados en caracteres normales (es decir, no se pueden enviar teclas de control, ni movimientos del cursor).

cad=… contiene la cadena que se va a teclear. ws.exec indica qué programa se va a ejecutar. En teoría, Q contiene un “handle” a ese programa, pero en la práctica hay que detectarlo por el nombre de la ventana, que es lo que se hace con ws.appActivate(“Math”).

myminimacro.vbs
Set ws = CreateObject("WScript.Shell")
  cad="{{{mi} underbrace {Det/pos} {profesor} underbrace {N/sust} "
  cad=cad+"{{de} underbrace {Enl/prep} {lengua} underbrace "
  cad=cad+"{{T}acute{e}r/SN}} underbrace {CN/SP} } overbrace {Suj/SN} "
  cad=cad+"{{es}underbrace{N/VC} {{un}underbrace {Det/ind}{friki} "
  cad=cad+"underbrace{N/sus}} underbrace{Atr/SN}}overbrace{PN/PN}} "
  cad=cad+"OVER {Orac{i}acute{o}n personal, atributiva, enunciativa }"
set Q=ws.exec("C:\Program Files\LibreOffice\program\smath.exe")
wscript.echo "Esperando..."
wscript.sleep 5000
wscript.echo "Activando el proceso "& Q.ProcessID
for f= 1 to len(cad)
  rem Debería haber usado Q.ProcessId, pero no funciona.
  rem Afortunadamente, ws.AppActivate("Math") busca una ventana
  rem cuyo título empiece o acabe en "Math"
  If ws.AppActivate ("Math") Then
    key=mid(cad,f,1)
    if instr("{}+^%~[]",key)>0 then key="{"+key+"}"
    wscript.echo key
    ws.sendkeys key
  End If
 wscript.sleep 100
next
Este sitio web utiliza cookies. Al utilizar el sitio web, usted acepta almacenar cookies en su computadora. También reconoce que ha leído y entendido nuestra Política de privacidad. Si no está de acuerdo abandone el sitio web.Más información
es/basic/vba/cscript_teclea.txt · Última modificación: 2024/06/11 07:10 por nepenthes