Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: jarpon en 28 Septiembre 2022, 16:50 pm



Título: Doble click sobre fichero en vBscript
Publicado por: jarpon en 28 Septiembre 2022, 16:50 pm
Hola a todos.

Quisiera ejecutar un fichero desde Vbscript, pero sin conocer la aplicacion que lo ejecuta, o sea que lo ejecute la que este asociada con ese fichero. Asi poder abrir una image o txt o excel...

Alguien me podria ayudar con el codigo para simular un doble click en el fichero.

Gracias por adelantado.


Título: Re: Doble click sobre fichero en vBscript
Publicado por: MCKSys Argentina en 28 Septiembre 2022, 17:20 pm
Hola!

Para iniciar (ejecutar) un archivo, puedes hacerlo desde batch usando el comando start: https://ss64.com/nt/start.html (https://ss64.com/nt/start.html)

Código:
start miarchivo.vbs

Saludos!


Título: Re: Doble click sobre fichero en vBscript
Publicado por: jarpon en 28 Septiembre 2022, 17:32 pm
Gracias por tu rapida respuesta.

Estoy trabajando con un HMI i este solo ejecuta scrpipts en VB, como debo integrar el comando start dentro de un VBscript?


Título: Re: Doble click sobre fichero en vBscript SOLUCIONADO
Publicado por: jarpon en 28 Septiembre 2022, 17:48 pm
He utilizado el siguiente codigo y funciona correctamente.

Gracias

sFile="D:\PrintQualityImages\Print quality errors.jpg"
Set shell = CreateObject("WScript.Shell")
shell.Run Chr(34) & sFile & Chr(34), 1, false
Set shell = Nothing


Título: Re: Doble click sobre fichero en vBscript
Publicado por: MCKSys Argentina en 28 Septiembre 2022, 17:49 pm
Hola!

No sé a qué te refieres con "HMI i" pero si sólo ejecuta VBScript, vas a tener que usar objetos COM para crear un interprete de comandos y ejecutar lo que quieres.

Revisa este doc para info cobre cómo hacerlo: https://www.vbsedit.com/html/6f28899c-d653-4555-8a59-49640b0e32ea.asp (https://www.vbsedit.com/html/6f28899c-d653-4555-8a59-49640b0e32ea.asp)

EDIT:
He utilizado el siguiente codigo y funciona correctamente.

Gracias

sFile="D:\PrintQualityImages\Print quality errors.jpg"
Set shell = CreateObject("WScript.Shell")
shell.Run Chr(34) & sFile & Chr(34), 1, false
Set shell = Nothing

Perfecto. Saludos!