Hola , Estoy haciendo una aplicacion que va a Abrir un programa desde mi aplicacion con un codigo especificado este es mi codigo por mientras
Private Sub Command1_Click()
Dim A
Dim MyPath
MyPath = "C:\Arhivos de Programa\Aplicacion\Aplicacion.exe
A = Shell(MyPath, vbNormalFocus)
Unload Me
End Sub
Todo funciona bien pero Lo malo es que algunas personas no guardan el programa que quiero abrir aki.
C:\Arhivos de Programa\Aplicacion\Aplicacion.exe
Por Eso quiero hacer otro Form que tiene un boton Browse y un text box y tambien que tenga un Checkbox.
El Boton Browse: Va a Abrir un Open file para que el user seleccione el .exe
El Textbox : Hay quiero la direccion del programa que el user selecciono en el boton Browser.
Checkbox : Hay Quiero que si el user quiere guardar la a direccion del programa que el user selecciono en el boton Browser que estaba en el textbox.
Boton1 : Es el boton que va a aceptar y va abrir el programa que va a abrir la aplicacion.
Boton 2 : Cancelar
Por mientras este es mi codigo.
Option Explicit
Private Declare Function GetOpenFileName Lib "comdlg32.dll" Alias _
"GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Long
Private Type OPENFILENAME
lStructSize As Long
hwndOwner As Long
hInstance As Long
lpstrFilter As String
lpstrCustomFilter As String
nMaxCustFilter As Long
nFilterIndex As Long
lpstrFile As String
nMaxFile As Long
lpstrFileTitle As String
nMaxFileTitle As Long
lpstrInitialDir As String
lpstrTitle As String
flags As Long
nFileOffset As Integer
nFileExtension As Integer
lpstrDefExt As String
lCustData As Long
lpfnHook As Long
lpTemplateName As String
End Type
Private Sub Command1_Click()
Dim OpenFile As OPENFILENAME
Dim lReturn As Long
Dim sFilter As String
OpenFile.lStructSize = Len(OpenFile)
OpenFile.hwndOwner = Form1.hWnd
OpenFile.hInstance = App.hInstance
sFilter = "NyxLauncher (*.Exe)" & Chr(0) & "*.Exe" & Chr(0)
OpenFile.lpstrFilter = sFilter
OpenFile.nFilterIndex = 1
OpenFile.lpstrFile = String(257, 0)
OpenFile.nMaxFile = Len(OpenFile.lpstrFile) - 1
OpenFile.lpstrFileTitle = OpenFile.lpstrFile
OpenFile.nMaxFileTitle = OpenFile.nMaxFile
OpenFile.lpstrInitialDir = "C:\"
OpenFile.lpstrTitle = "Open Nyxlauncher Location"
OpenFile.flags = 0
lReturn = GetOpenFileName(OpenFile)
If lReturn = 0 Then
MsgBox "The User pressed the Cancel Button"
Else
Text1.Text = Trim(OpenFile.lpstrFile)
End If
End Sub
Como ven todo esta bien pero yo no se como se hace para que la otra ves que el user entre a mi programa ya no tenga que estar poniendo Browse y seleccionar otra ves el .exe , sino cuando la otra ves que el user entre la direccion del .exe ya este grabado en el text.text
Private Sub Command1_Click()
Dim A
Dim MyPath
MyPath = "C:\Arhivos de Programa\Aplicacion\Aplicacion.exe
A = Shell(MyPath, vbNormalFocus)
Unload Me
End Sub
Todo funciona bien pero Lo malo es que algunas personas no guardan el programa que quiero abrir aki.
C:\Arhivos de Programa\Aplicacion\Aplicacion.exe
Por Eso quiero hacer otro Form que tiene un boton Browse y un text box y tambien que tenga un Checkbox.
El Boton Browse: Va a Abrir un Open file para que el user seleccione el .exe
El Textbox : Hay quiero la direccion del programa que el user selecciono en el boton Browser.
Checkbox : Hay Quiero que si el user quiere guardar la a direccion del programa que el user selecciono en el boton Browser que estaba en el textbox.
Boton1 : Es el boton que va a aceptar y va abrir el programa que va a abrir la aplicacion.
Boton 2 : Cancelar
Por mientras este es mi codigo.
Option Explicit
Private Declare Function GetOpenFileName Lib "comdlg32.dll" Alias _
"GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Long
Private Type OPENFILENAME
lStructSize As Long
hwndOwner As Long
hInstance As Long
lpstrFilter As String
lpstrCustomFilter As String
nMaxCustFilter As Long
nFilterIndex As Long
lpstrFile As String
nMaxFile As Long
lpstrFileTitle As String
nMaxFileTitle As Long
lpstrInitialDir As String
lpstrTitle As String
flags As Long
nFileOffset As Integer
nFileExtension As Integer
lpstrDefExt As String
lCustData As Long
lpfnHook As Long
lpTemplateName As String
End Type
Private Sub Command1_Click()
Dim OpenFile As OPENFILENAME
Dim lReturn As Long
Dim sFilter As String
OpenFile.lStructSize = Len(OpenFile)
OpenFile.hwndOwner = Form1.hWnd
OpenFile.hInstance = App.hInstance
sFilter = "NyxLauncher (*.Exe)" & Chr(0) & "*.Exe" & Chr(0)
OpenFile.lpstrFilter = sFilter
OpenFile.nFilterIndex = 1
OpenFile.lpstrFile = String(257, 0)
OpenFile.nMaxFile = Len(OpenFile.lpstrFile) - 1
OpenFile.lpstrFileTitle = OpenFile.lpstrFile
OpenFile.nMaxFileTitle = OpenFile.nMaxFile
OpenFile.lpstrInitialDir = "C:\"
OpenFile.lpstrTitle = "Open Nyxlauncher Location"
OpenFile.flags = 0
lReturn = GetOpenFileName(OpenFile)
If lReturn = 0 Then
MsgBox "The User pressed the Cancel Button"
Else
Text1.Text = Trim(OpenFile.lpstrFile)
End If
End Sub
Como ven todo esta bien pero yo no se como se hace para que la otra ves que el user entre a mi programa ya no tenga que estar poniendo Browse y seleccionar otra ves el .exe , sino cuando la otra ves que el user entre la direccion del .exe ya este grabado en el text.text