Foros - Stratos

Programadores => General Programadores => Mensaje iniciado por: Loopen en 15 de Diciembre de 2002, 11:28:29 PM

Título: Ejecutar aplicacion externa desde VB 6
Publicado por: Loopen en 15 de Diciembre de 2002, 11:28:29 PM
                                Hola, queria saber si hay alguna forma sencilla de ejecutar una aplicacion externa (de linea de comandos) desde VB 6

Espero vuestras respuestas!!                                
Título: Ejecutar aplicacion externa desde VB 6
Publicado por: Mars Attacks en 16 de Diciembre de 2002, 09:56:20 AM
                                Puesssss creo que con esta cabecera:



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



y este código:



sFile = "system32notepad.exe"



noth = ShellExecute(0, "OPEN", _

Environ("SystemRoot") & sFile, "", "", 1)



te abriría el notepad. No sé qué significa cada elemento del parseo pero ShellExecute es tu orden (me parece, no tengo ni zorra de VB pero anoche leí por casualidad un programa que ejecutaba cosas).[/code]                                
Título: Ejecutar aplicacion externa desde VB 6
Publicado por: Geo en 17 de Diciembre de 2002, 03:40:12 AM
                                pues yo he intentado con lo siguiente:


Private Declare Function WinExec Lib "kernel32" (ByVal lpCmdLine As String, ByVal nCmdShow As Long) As Long


y luego:


Resultado = WinExec("notepad.exe hola.txt", 1)


y me abre el archivo hola.txt en el notepad, claro que el hola.txt se encuentra en la misma carpeta que el notepad, o se envía la ruta completa de carpetas donde está hola.txt                                
Título: Mas sencillo aun
Publicado por: [EX3] en 19 de Diciembre de 2002, 09:56:00 PM
                                Y no es mas sencillo usar la simple funcion del VB "Shell()"?

Sintaxis:
Shell ([Ruta y/o nombre de programa], [Estilo de presentacion]) As Double
El primer parametro es simplemente la direccion y nombre del programa ejecutable.
El segundo parametro es la forma de presentar la ventana (Nomal, Maximizada, Minimizada, etc...)

Abrimos el block de notas tal cual. Ejemplo:
Private Sub Form_Load()

Shell "c:windowsnotepad.exe", vbNormalFocus

End Sub



Abrimos el block de notas y le decimos que abra el archivo texto.txt que se encuentra en c:. Ejemplo:
Private Sub Form_Load()

Shell "c:windowsnotepad.exe c:texto.txt", vbNormalFocus

End Sub



Como puedes ver es la manera más sencilla que tiene VB de llamar a un programa externo.

Salu2...

[EX3]                                
Título: Gracias a todos.
Publicado por: Loopen en 19 de Diciembre de 2002, 10:20:28 PM
                                Perdonad pero no he podido contestar antes, os agradezco todos vuestras respuestas, al final encontre una forma, es la propuesta por EX3. Ademas parece la mas sencilla.


Muchas gracias a todos por tomaros interes en mi pregunta y  FELIZ NAVIDAD!!!