seleccion de ruta para instalacion...

Iniciado por soru13, 2 Julio 2006, 23:31 PM

0 Miembros y 2 Visitantes están viendo este tema.

soru13

ok, estoy haciendo un instalador personalizado, y necesito que me deje elegir la ruta donde se moveran unos archivos que ya tengo predeterminados o los borre. ok, mi codigo es el siguiente, solo me hace falta eso

Private Sub Command1_Click()
Set variable = CreateObject("Scripting.FileSystemObject")
variable.MoveFolder ".\Speed Island files", "C:\Archivos de programa\Rockstar Games\GTA San Andreas\Speed Island files"
variable.DeleteFile "C:\Archivos de programa\Rockstar Games\GTA San Andreas\models\txd\LOADSCS.txd"
variable.MoveFile ".\models\txd\LOADSCS.txd", "C:\Archivos de programa\Rockstar Games\GTA San Andreas\models\txd\LOADSCS.txd"
variable.DeleteFile "C:\Archivos de programa\Rockstar Games\GTA San Andreas\models\fronten2.txd"
variable.MoveFile ".\models\fronten2.txd", "C:\Archivos de programa\Rockstar Games\GTA San Andreas\models\fronten2.txd"
variable.DeleteFolder "C:\Archivos de programa\Rockstar Games\GTA San Andreas\data"
variable.MoveFolder ".\data", "C:\Archivos de programa\Rockstar Games\GTA San Andreas\data"
Form4.Show
Form2.Hide
End Sub

Gorky

No se si habre entendido correctamente lo que pides pero si es lo que creo que es, es bastante sencillo:

Pones un textbox y en el codigo cambias:
"C:\Archivos de programa\Rockstar Games\GTA San Andreas\
por:
text1.text

El primero se te quedaria de la siguiente forma:
variable.MoveFolder ".\Speed Island files",text1.text & "Speed Island files"

Entonces ya solo tendrias que introducir la ruta en la interfaz.


<--v1c1ous-->

Especifica el error.

Talvez solo esta mal tu codigo:

Private Sub Command1_Click()
Set variable = CreateObject("Scripting.FileSystemObject")
variable.MoveFolder ".\Speed Island files", Text1.Text & "\Speed Island files"
variable.DeleteFile Text1.Text & "\models\txd\LOADSCS.txd"
variable.MoveFile ".\models\txd\LOADSCS.txd", Text1.Text & "\models\txd\LOADSCS.txd"
variable.DeleteFile Text1.Text & "\models\fronten2.txd"
variable.MoveFile ".\models\fronten2.txd", Text1.Text & "\models\fronten2.txd"
variable.DeleteFolder Text1.Text & "\data"
variable.MoveFolder ".\data", Text1.Text & "\data"
Form4.Show
Form2.Hide
End Sub


Donde Text1.Text tiene que tener la ruta del GTA San Andreas especificada por el usuario:

C:\Archivos de programa\Rockstar Games\GTA San Andreas

Para no especificar la ruta manualmente en un textbox, usa el contro Command Dialog.



soru13

perdon por el doble post pero tengo un problema

ya consegi eso, pero ahora tengo otro

Private Sub Command1_Click()
Set variable = CreateObject("Scripting.FileSystemObject")
variable.MoveFolder ".\Speed Island files", Text1.Text & ".\"
mcpbar1.Value = 10
variable.DeleteFile "(Text1.Text)models\txd\LOADSCS.txd"
mcpbar1.Value = 25
variable.MoveFile ".\models\txd\LOADSCS.txd", Text1.Text & ".\models\txd\"
mcpbar1.Value = 35
variable.DeleteFile "models\fronten2.txd"
mcpbar1.Value = 50
variable.MoveFile ".\models\fronten2.txd", Text1.Text & ".\"
mcpbar1.Value = 65
variable.DeleteFolder ".\data"
mcpbar1.Value = 85
variable.MoveFolder ".\data", Text1.Text & ".\"
mcpbar1.Value = 99
End Sub

Private Sub Dir1_Change()
Text1.Text = Dir1.Path
End Sub


esto

variable.DeleteFile "(Text1.Text)models\txd\LOADSCS.txd"

se que esta mal, pero no se como hacer que me borre el models\txd\LOADSCS.txd pero necesito que me lo borre de la ruta que se selecciono, por ej, si se selecciono, C:/pepito

que me borre C:/pepito/models\txd\LOADSCS.txd

o C:/otromodo//models\txd\LOADSCS.txd

gracias

<--v1c1ous-->

La sintaxis correcta es:

variable.DeleteFile (Text1.Text & "\models\txd\LOADSCS.txd")
*No note tu error anteriormente

Fijate primero de todo si existe o no el archivo a borrar o la ruta "\models\txd\".

Text1.Text tiene que valer textualmente:
Sin comillas y sin el "\" a lo ultimo, ya que ya esta puesto en "\models\txd\".
CitarC:\Archivos de programa\Rockstar Games\GTA San Andreas


Si no entiendes donde esta el error, pone en variables las direcciones de carpetas, y leelas en tiempo de ejecucion, de esta forma podes advertir si el valor que se le asigna es correcto y advertir tu error.

Un ejemplo seria:

Dim Variable1 as String
Variable1 = Text1.Text & "\models\txd\LOADSCS.txd"


Asi, podrias asignar al mismo tiempo el valor de la Variable1 a una Label por ejemplo, y saber que valor se le asigna a la hora de ejecucion por si tenes problemas.

Y ojo con lo que lees por internet, estas usando FileSystemObject en Visual Basic, no es ASP.