No me funciona shellexecute. Saber caducidad certificado digital

Post Reply
Garbi
Posts: 347
Joined: Wed Nov 02, 2005 3:28 pm

No me funciona shellexecute. Saber caducidad certificado digital

Post by Garbi »

Hola a todos,

Estoy probando esta sentencia para saber la fecha de caducidad de un certificado digital

..\openssl\bin\openssl.exe x509 -in ..\dbf\certificado.pem -noout -enddate >..\dbf\fecha.txt

Si lo ejecuto desde comando me funciona y me crea el fichero fecha.txt, que aunque no lo pone claro se puede obtener la fecha de caducidad del certificado digital :certificado.pem

Pero al ejecutarlo en aplicación he probado :

Code: Select all | Expand

shellexecute(0,"runas","..\openssl\bin\openssl x509 -in ..\dbf\certificado.pem -noout -enddate >..\dbf\fecha.txt","","",1)
Pero no me crea el fichero fecha.txt que desde el comando si me crea.

¿Alguna sugerencia?

Gracias
Saludos,
Regards,

Jose Luis Alepuz
joseluis@mancomputer.com
www.mancomputer.com
User avatar
sysctrl2
Posts: 1073
Joined: Mon Feb 05, 2007 7:15 pm
Has thanked: 8 times
Been thanked: 3 times
Contact:

Re: No me funciona shellexecute. Saber caducidad certificado digital

Post by sysctrl2 »

WaitRun
Cesar Cortes Cruz
SysCtrl Software
Mexico

' Sin +- FWH es mejor "
Garbi
Posts: 347
Joined: Wed Nov 02, 2005 3:28 pm

Re: No me funciona shellexecute. Saber caducidad certificado digital

Post by Garbi »

lo he puesto asi:

Code: Select all | Expand

   vresultado:=waitrun("..\openssl\bin\openssl.exe x509 -in ..\dbf\b96370556.pem -noout -enddate >..\dbf\fecha.txt")
   msgalert(vresultado)
Y el vresultado es 1,que un resultado que no aparece en la ayuda de waitrun
Y además de que no me crea el fichero fecha.txt me abre una ventana y se cierra, cuando con shellexecute no abre ninguna ventana cuando "realiza" el comando

¿Algo estoy haciendo mal? ¿Alguna sugerencia?
Saludos,
Regards,

Jose Luis Alepuz
joseluis@mancomputer.com
www.mancomputer.com
User avatar
sysctrl2
Posts: 1073
Joined: Mon Feb 05, 2007 7:15 pm
Has thanked: 8 times
Been thanked: 3 times
Contact:

Re: No me funciona shellexecute. Saber caducidad certificado digital

Post by sysctrl2 »

prueba copiando los archivos en en la carpeta de tu aplicación.

Code: Select all | Expand

cFileCer := "b96370556.pem"
cToTxt := "fecha.txt"
bBloc := {|cCer, cTxt| "openssl.exe x509 -in " + cCer + " -noout -enddate > " + cTxt }
WaitRun( (Eval(bBloc , cFileCer, cToTxt )), 0 )

saludos
Cesar Cortes Cruz
SysCtrl Software
Mexico

' Sin +- FWH es mejor "
Ariel
Posts: 379
Joined: Wed Nov 29, 2006 1:51 pm
Location: Rosario - Argentina

Re: No me funciona shellexecute. Saber caducidad certificado digital

Post by Ariel »

Buenas,

prueba de poner el path completo, reemplace ..\ por c:\....turuta

Slds.
User avatar
cmsoft
Posts: 1308
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina
Has thanked: 2 times
Been thanked: 4 times

Re: No me funciona shellexecute. Saber caducidad certificado digital

Post by cmsoft »

Puedes probar haciendo un bat con los comandos que deseas, y despues lanzar ese bat

Code: Select all | Expand

cComando := cComando + '..\openssl\bin\openssl.exe x509 -in ..\dbf\certificado.pem -noout -enddate >..\dbf\fecha.txt'
memowrit( 'cert.bat', cComando )
WaitRun( 'cert.bat' , 0 )
Garbi
Posts: 347
Joined: Wed Nov 02, 2005 3:28 pm

Re: No me funciona shellexecute. Saber caducidad certificado digital

Post by Garbi »

Cesar, funcionado perfectamente.
Muchas gracias.

Ahora tocar obtener una fecha validad de la información que da.
Pero eso ya es más sencillo. Solo leer caracteres y transformar el mes.
Ejemplo de fecha.txt : notAfter=Dec 27 10:16:45 2026 GMT -> 27/12/2026

Un saludo
Saludos,
Regards,

Jose Luis Alepuz
joseluis@mancomputer.com
www.mancomputer.com
Post Reply