Whatsapp automation with VFP
PUBLIC cPMensaje
DECLARE INTEGER FindWindow IN WIN32API STRING , STRING
DECLARE INTEGER SetForegroundWindow IN WIN32API INTEGER
DECLARE INTEGER ShowWindow IN WIN32API INTEGER , INTEGER
*******************************************
Declare Integer ShellExecute In shell32.Dll ;
INTEGER hndWin, ;
STRING cAction, ;
STRING cFileName, ;
STRING cParams, ;
STRING cDir, ;
INTEGER nShowWin
Local lt, lhwnd
cPhone='523351379680'
cPMensaje = "¡¡ PRUEBA DE ENVIO !!"+ CHR(13) + CHR(10) + ;
" Estimado Sr(a): "+ CHR(13) + CHR(10) + ;
"Saldo actual: "+ CHR(13) + CHR(10) + ;
"Artículos vendidos: "
ccMessage=ALLTRIM(cPMensaje)
ccMessage = STRTRAN(ccMessage, CHR(13)+CHR(10), "%0A")
ccMessage = STRTRAN(ccMessage, " ", "%20")
cmd='whatsapp://send?phone=&cPhone&text='+ccMessage
=ShellExecute(0, 'open', cmd,'', '', 1)
Wait "" Timeout 3
lt = "Whatsapp"
lhwnd = FindWindow (0, lt)
If lhwnd!= 0
SetForegroundWindow (lhwnd)
ShowWindow (lhwnd, 1)
ox = Createobject ( "Wscript.Shell" )
Sleep(500)
ox.sendKeys ( '{ENTER}' )
Sleep(500)
IF nLcontador == 4
ox.sendkeys ( '%{F4}' )
ENDIF
ELSE
Messagebox ( "Whatsapp no esta activado!" )
ENDIF
FUNCTION Sleep(lnMiliSeg)
*----------------------------------------
* Función que detiene la ejecución de un programa
* durante "n" milisegundos sin interfase con el teclado.
* USO: ? Sleep(1500)
*----------------------------------------
FUNCTION Sleep(lnMiliSeg)
lnMiliSeg = IIF(VARTYPE(lnMiliSeg) = "N", lnMiliSeg, 1000)
DECLARE Sleep IN WIN32API ;
INTEGER nMillisecs
RETURN IIF(Sleep(lnMiliSeg) = .T., .T., .F.)
ENDFUNC