Ejecutar aplicación externa, pero sin extensión .exe

10/11/2010 - 17:17 por Ariel M. | Informe spam
Buenos dias a tod@s. Les comento el problema que tengo. Un cliente
necesita distribuir una aplicación (de su propiedad) a sus clientes, que
realiza ciertos cálculos complejos relacionados con ciertos productos
que les vende, (como una forma de servicio agregado). El asunto es que
estos productos son comercializados también por otros proveedores (los
cuales no disponen del soft), entonces necesita que sus clientes
dispongan del uso libre de su programa en la medida en que le compren
los productos a él. Perdió hace tiempo contacto con el programador que
le desarrolló la aplicación, asi es que solamente dispone del ejecutable.
La idea es realizar una pequeña aplicación en VB6 que sirva para lanzar
el programa de mi cliente, y en mi aplicación una vez por mes leer
(mediante conexión a internet) un pequeño archivo montado en un
servidor, y si encuentra el código interno de dicho cliente le permita
seguir utilizando el soft (y en caso contrario bloquee su ejecución).
El asunto es que si la aplicación de mi cliente se distribuye con su
extensión .exe, poco tiempo va a pasar para que se den cuenta que
ejecutando este .exe (y no el mio) se saltean el proceso de validación y
podrán hacer las copias que deseen, por lo cual una idea era lanzar esta
aplicación como un ejecutable (mediate shell, shellexecute o lo que sea
que sirva), pero con una extensión distinta (ej: ".bin" o lo que sea).
Espero haberme explicado bien. Gracias por su ayuda de antemano.

Saludos. Ariel M.
Mendoza (ARG)

Preguntas similare

Leer las respuestas

#1 Leonardo Azpurua
11/11/2010 - 02:57 | Informe spam
Hola,

En C:\Archivos de Programa\cpuz tengo una archivito llamado cpuz.exe, que da
información sobre el equipo (no se por que no termino de borrarlo).

Le cambio el nombre a cpuz.jkl, y escribo en la ventana de ejecucion
inmediata:

ChDir "C:\Archivos de Programa\cpuz"
shell "CMD /C ""C:\Archivos de Programa\cpuz\cpuz.jkl"""

Si no me coloco en la carpeta, me da un error diciendo que no puede cargar
el driver, pero imagino que esas son cosas del programa, pero despues de
hace el ChDir lo abre sin problemas.

O sea que con un simple Shell puedes hacerlo.


Salud!




"Ariel M." escribió en el mensaje
news:ibegi1$kp5$
Buenos dias a Les comento el problema que tengo. Un cliente
necesita distribuir una aplicación (de su propiedad) a sus clientes, que
realiza ciertos cálculos complejos relacionados con ciertos productos que
les vende, (como una forma de servicio agregado). El asunto es que estos
productos son comercializados también por otros proveedores (los cuales no
disponen del soft), entonces necesita que sus clientes dispongan del uso
libre de su programa en la medida en que le compren los productos a él.
Perdió hace tiempo contacto con el programador que le desarrolló la
aplicación, asi es que solamente dispone del ejecutable.
La idea es realizar una pequeña aplicación en VB6 que sirva para lanzar el
programa de mi cliente, y en mi aplicación una vez por mes leer (mediante
conexión a internet) un pequeño archivo montado en un servidor, y si
encuentra el código interno de dicho cliente le permita seguir utilizando
el soft (y en caso contrario bloquee su ejecución).
El asunto es que si la aplicación de mi cliente se distribuye con su
extensión .exe, poco tiempo va a pasar para que se den cuenta que
ejecutando este .exe (y no el mio) se saltean el proceso de validación y
podrán hacer las copias que deseen, por lo cual una idea era lanzar esta
aplicación como un ejecutable (mediate shell, shellexecute o lo que sea
que sirva), pero con una extensión distinta (ej: ".bin" o lo que sea).
Espero haberme explicado bien. Gracias por su ayuda de antemano.

Saludos. Ariel M.
Mendoza (ARG)
Respuesta Responder a este mensaje
#2 Ariel M.
11/11/2010 - 23:05 | Informe spam
Leonardo, muchas gracias pro tu respuesta. Voy a aplicarlo de esta forma
y veremos como me va.
Saludos y gracias nuevamente
Ariel

P.D.: A propósito, el programa CPUZ es una aplicación muy buena para
obtener información del equipo. Esta constantemente actualizado a medida
que salen nuevos microprocesadores. Es gratuito y hay una version .zip,
la cual se descomprime y no hace falta instalarla (ademas de ser una
aplicación muy liviana, de apenas algunos megas)

http://www.cpuid.com/softwares/cpu-...story.html




El 10/11/2010 22:57, Leonardo Azpurua escribió:
Hola,

En C:\Archivos de Programa\cpuz tengo una archivito llamado cpuz.exe, que da
información sobre el equipo (no se por que no termino de borrarlo).

Le cambio el nombre a cpuz.jkl, y escribo en la ventana de ejecucion
inmediata:

ChDir "C:\Archivos de Programa\cpuz"
shell "CMD /C ""C:\Archivos de Programa\cpuz\cpuz.jkl"""

Si no me coloco en la carpeta, me da un error diciendo que no puede cargar
el driver, pero imagino que esas son cosas del programa, pero despues de
hace el ChDir lo abre sin problemas.

O sea que con un simple Shell puedes hacerlo.


Salud!




"Ariel M." escribió en el mensaje
news:ibegi1$kp5$
Buenos dias a Les comento el problema que tengo. Un cliente
necesita distribuir una aplicación (de su propiedad) a sus clientes, que
realiza ciertos cálculos complejos relacionados con ciertos productos que
les vende, (como una forma de servicio agregado). El asunto es que estos
productos son comercializados también por otros proveedores (los cuales no
disponen del soft), entonces necesita que sus clientes dispongan del uso
libre de su programa en la medida en que le compren los productos a él.
Perdió hace tiempo contacto con el programador que le desarrolló la
aplicación, asi es que solamente dispone del ejecutable.
La idea es realizar una pequeña aplicación en VB6 que sirva para lanzar el
programa de mi cliente, y en mi aplicación una vez por mes leer (mediante
conexión a internet) un pequeño archivo montado en un servidor, y si
encuentra el código interno de dicho cliente le permita seguir utilizando
el soft (y en caso contrario bloquee su ejecución).
El asunto es que si la aplicación de mi cliente se distribuye con su
extensión .exe, poco tiempo va a pasar para que se den cuenta que
ejecutando este .exe (y no el mio) se saltean el proceso de validación y
podrán hacer las copias que deseen, por lo cual una idea era lanzar esta
aplicación como un ejecutable (mediate shell, shellexecute o lo que sea
que sirva), pero con una extensión distinta (ej: ".bin" o lo que sea).
Espero haberme explicado bien. Gracias por su ayuda de antemano.

Saludos. Ariel M.
Mendoza (ARG)









Entorno: VB6 - ADO - Jet4
Saludos. Ariel M.
Mendoza (ARG)
Respuesta Responder a este mensaje
#3 Ariel M.
12/11/2010 - 21:38 | Informe spam
Leonardo buenas tardes. Implementé la solución que me propusiste y
funcionó perfecto. Consultándole nuevamente a mi cliente me indica ahora
que esta aplicación guarda los distintos proyectos generados en unos
archivos con una extensión propia. El asunto es que la extensión de
estos archivos se encuentra asociada en el registro de Windows a la
aplicación, con lo que al hacerle doble click se abre directamente la
aplicación y carga la información de archivo, haciéndo un puente con mi
aplicación (dejando de funcionar el bloqueo implementado).
Se que a través de la función "Command" de VB puedo recibir el argumento
y estuve haciendo algunas pruebas para pasárselo a la aplicación de mi
cliente pero sin mucho éxito. Si tienes alguna idea de como puedo
pasarle el argumento desde mi app a la otra aplicación te estaría
agradecido por tu tiempo. Muchas gracias.
Saludos a


El 10/11/2010 22:57, Leonardo Azpurua escribió:
Hola,

En C:\Archivos de Programa\cpuz tengo una archivito llamado cpuz.exe, que da
información sobre el equipo (no se por que no termino de borrarlo).

Le cambio el nombre a cpuz.jkl, y escribo en la ventana de ejecucion
inmediata:

ChDir "C:\Archivos de Programa\cpuz"
shell "CMD /C ""C:\Archivos de Programa\cpuz\cpuz.jkl"""

Si no me coloco en la carpeta, me da un error diciendo que no puede cargar
el driver, pero imagino que esas son cosas del programa, pero despues de
hace el ChDir lo abre sin problemas.

O sea que con un simple Shell puedes hacerlo.


Salud!




"Ariel M." escribió en el mensaje
news:ibegi1$kp5$
Buenos dias a Les comento el problema que tengo. Un cliente
necesita distribuir una aplicación (de su propiedad) a sus clientes, que
realiza ciertos cálculos complejos relacionados con ciertos productos que
les vende, (como una forma de servicio agregado). El asunto es que estos
productos son comercializados también por otros proveedores (los cuales no
disponen del soft), entonces necesita que sus clientes dispongan del uso
libre de su programa en la medida en que le compren los productos a él.
Perdió hace tiempo contacto con el programador que le desarrolló la
aplicación, asi es que solamente dispone del ejecutable.
La idea es realizar una pequeña aplicación en VB6 que sirva para lanzar el
programa de mi cliente, y en mi aplicación una vez por mes leer (mediante
conexión a internet) un pequeño archivo montado en un servidor, y si
encuentra el código interno de dicho cliente le permita seguir utilizando
el soft (y en caso contrario bloquee su ejecución).
El asunto es que si la aplicación de mi cliente se distribuye con su
extensión .exe, poco tiempo va a pasar para que se den cuenta que
ejecutando este .exe (y no el mio) se saltean el proceso de validación y
podrán hacer las copias que deseen, por lo cual una idea era lanzar esta
aplicación como un ejecutable (mediate shell, shellexecute o lo que sea
que sirva), pero con una extensión distinta (ej: ".bin" o lo que sea).
Espero haberme explicado bien. Gracias por su ayuda de antemano.

Saludos. Ariel M.
Mendoza (ARG)









Entorno: VB6 - ADO - Jet4
Saludos. Ariel M.
Mendoza (ARG)
Respuesta Responder a este mensaje
#4 Leonardo Azpurua
13/11/2010 - 14:42 | Informe spam
"Ariel M." escribió en el mensaje
news:ibk8l1$658$

Leonardo buenas tardes. Implementé la solución que me propusiste y
funcionó perfecto. Consultándole nuevamente a mi cliente me indica ahora
que esta aplicación guarda los distintos proyectos generados en unos
archivos con una extensión propia. El asunto es que la extensión de estos
archivos se encuentra asociada en el registro de Windows a la aplicación,
con lo que al hacerle doble click se abre directamente la aplicación y
carga la información de archivo, haciéndo un puente con mi aplicación
(dejando de funcionar el bloqueo implementado).
Se que a través de la función "Command" de VB puedo recibir el argumento y
estuve haciendo algunas pruebas para pasárselo a la aplicación de mi
cliente pero sin mucho éxito. Si tienes alguna idea de como puedo pasarle
el argumento desde mi app a la otra aplicación te estaría agradecido por
tu tiempo. Muchas gracias.
Saludos a



Hola,

El explorador de Windows implementa las asociaciones llamando al programa y
pasándole como argumento de la linea de comandos la ruta completa del
archivo seleccionado.

Todo lo que le pasas a Shell se le pasa a quienquiera que sea el responsable
de iniciar el programa.

Cuando alguien hace doble clic en un archivo asociado con tu aplicación,
esta es activada, recibiendo en Command el nombre del archivo.

Imagino que podrás hacer lgo del tipo de

Shell <archivoDePrograma> & " " & Command

o, si no te funciona así por el cambio de extension, prueba con esto:

Shell "CMD /C """ & archivoDePrograma$ & """ " & Command

puede ser que tengas que encerrar el argumento Command entre comillas.

Pero por ahi va la cosa.

Salud!
Respuesta Responder a este mensaje
#5 Ariel M.
13/11/2010 - 22:08 | Informe spam
El 13/11/2010 10:42, Leonardo Azpurua escribió:
"Ariel M." escribió en el mensaje
news:ibk8l1$658$

Leonardo buenas tardes. Implementé la solución que me propusiste y
funcionó perfecto. Consultándole nuevamente a mi cliente me indica ahora
que esta aplicación guarda los distintos proyectos generados en unos
archivos con una extensión propia. El asunto es que la extensión de estos
archivos se encuentra asociada en el registro de Windows a la aplicación,
con lo que al hacerle doble click se abre directamente la aplicación y
carga la información de archivo, haciéndo un puente con mi aplicación
(dejando de funcionar el bloqueo implementado).
Se que a través de la función "Command" de VB puedo recibir el argumento y
estuve haciendo algunas pruebas para pasárselo a la aplicación de mi
cliente pero sin mucho éxito. Si tienes alguna idea de como puedo pasarle
el argumento desde mi app a la otra aplicación te estaría agradecido por
tu tiempo. Muchas gracias.
Saludos a



Hola,

El explorador de Windows implementa las asociaciones llamando al programa y
pasándole como argumento de la linea de comandos la ruta completa del
archivo seleccionado.

Todo lo que le pasas a Shell se le pasa a quienquiera que sea el responsable
de iniciar el programa.

Cuando alguien hace doble clic en un archivo asociado con tu aplicación,
esta es activada, recibiendo en Command el nombre del archivo.

Imagino que podrás hacer lgo del tipo de

Shell<archivoDePrograma> & " "& Command

o, si no te funciona así por el cambio de extension, prueba con esto:

Shell "CMD /C """& archivoDePrograma$& """ "& Command

puede ser que tengas que encerrar el argumento Command entre comillas.

Pero por ahi va la cosa.

Salud!







Gracias por la explicación. Voy a probar estas formas que me propusiste
y ver que pasa.

Saludos. Ariel
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida