SoloCodigo

Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: Fernando_P en Martes 20 de Enero de 2004, 20:24

Título: Llamada A Aplicacion Externa
Publicado por: Fernando_P en Martes 20 de Enero de 2004, 20:24
Hola a todos, tengo un problema que me esta quebrando la cabeza.
Resulta que debo llamar a una aplicacion externa, que no esta hecha en VB.
PAra mi caso esta aplicaciuon se llama hidra2.exe, el problema es que si yo llamo a hidra2.exe con la sentencia:
   
Dim a
a = Shell("c:\Datos\Hidraulica\hidra2.exe")

no resulta porque la aplicac ion funciona llamandola con el parametro que es un archivo, es decir, la aplicaciuon se llama de la siguiente manera:

hidra2 <nombre_archivo.dat.6
ahi funciona.

He probado con:

Dim a
a = Shell("c:\Datos\Hidraulica\hidra2<hidra.dat.6")

y no funciona

Alguien sabe como puedo automatizar esta llamada?

Cualquier ayuda me sirve, estoy desesperado.

Gracias.

Fernando.
Título: Re: Llamada A Aplicacion Externa
Publicado por: ROBER.29 en Miércoles 21 de Enero de 2004, 10:32
Hola,

Utiliza la API ShellExecute. Sería de la siguiente forma:


Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Const SW_SHOWNORMAL = 1

Dim Parameters AS String

Parameters = "nombre_archivo.dat.6"

ShellExecute Me.hwnd, "Open", "c:\Datos\Hidraulica\hidra2.exe ", Parameters, "C:\", SW_SHOWNORMAL

Saludos.