|
121
|
Programación / Programación Visual Basic / Borrar archivo o saltarlo si existe
|
en: 6 Enero 2014, 18:58 pm
|
Amigos, algos simple, pero no he podido dar en el clavo, tengo un botón que borra un archivo, funciona perfecto. El problema esta cuando el archivo ya fue borrado, me lanza error, lo que quiero, es a través de la instrucción IF, se borre el archivo si es que existe y si no, que lo salte y no haga nada. intento con esto, pero esta mal la sintaxis: Private Sub Command2_Click()
Kill App.Path + "\kitserver\dat\0_text.afs\unnamed_535.bin"
If Kill(App.Path + "\kitserver\dat\0_text.afs\unnamed_535.bin") = 1 Then Else End If End Sub haber si me dan una mano amigos saludos
|
|
|
122
|
Programación / Programación Visual Basic / Gif cargando al copiar archivo, ¿se puede?
|
en: 3 Enero 2014, 02:13 am
|
Amigos, les cuento lo que quiero hacer es copiar archivo y que el tiempo que tome en copiar muestre un gif cargando. tengo el form1 que se ve así: al presionar el botón instalar aparece el gif: use la dll "GIF89.DLL", el problema es como hacer para sincronizar el mostrar la imagen con el tiempo que tome en copiar el archivo. creo que con un control "timer" se podría lograr. este es el código: Private Sub Form_Load() On Error Resume Next 'Si bien se carga como un ocx, esta es una dll. La misma copiarla en _ en el directorio de systema de windows para que funcione
Gif89a1.FileName = App.Path + "\cargando.gif"
End Sub
Private Sub Command1_Click() Gif89a1.Visible = True
FileCopy "C:\0_sound.afs", "C:\a\0_sound.afs" End Sub
¿Esto es posible? o alguna forma mas fácil de hacerlo anexo el source por si alguien me puede ayudar por favor https://dl.dropboxusercontent.com/s/08qwy0t1yt3dl12/copiar.rar?dl=1&token_hash=AAEoC7NgB-SrfBRDO2ja6HwpKGyGXOIzrcWifjntTn2WdAGracias amigos
|
|
|
125
|
Programación / Programación Visual Basic / Re: Problema con IF (No se ha encontrado el archivo)
|
en: 18 Diciembre 2013, 05:46 am
|
pues agrega un procedimiento para saber si el archivo existe y si es así que se produzca el renombrado en caso contrario que omita el procedimiento.
Gracias por responder amigo, la verdad es que me parece efectiva la idea, pero no tengo los conocimientos para hacerlo, podrías orientarme un poquito por favor Gracias amigos
|
|
|
126
|
Programación / Programación Visual Basic / Problema con IF (No se ha encontrado el archivo)
|
en: 18 Diciembre 2013, 03:48 am
|
Amigos, les pido su ayuda, lo que quiero lograr es que a través de un optionbuton renombrar una carpeta, al seleccionar el optionbuton y presionar el botón aplicar se renombra un archivo. El problema es que cuando el archivo ya se renombra, al volver a seleccionar el mismo botón, como el archivo ya fue renombrado, me da el error de (No se ha encontrado el archivo) Este es el código: Private Sub opci_Click() 'Si está seleccionado el Option1 se ejecuta la siguiente condición If Option19.Value = True Then Name "c:\a.txt" As "c:\archivo.txt" MsgBox "Fuente por defecto", vbInformation + vbOKOnly Else: Option19.Value = False MsgBox "Fuente cambiada", vbInformation + vbOKOnly End If Gracias amigos
|
|
|
127
|
Programación / Programación Visual Basic / Re: Almacenar opcion de OptionButton en archivo ini
|
en: 12 Diciembre 2013, 15:00 pm
|
Pues para eso existe funciones. ejemplo esta simple. dim Archivosdeprograma as string 'C:\Archivos de programa\ o Archivos de programa (x86) respectivamente Archivosdeprograma=Environ$("ProgramFiles")
saludos Me entro una duda, quedaría algo así? : Private Sub Command1_Click() Dim Archivosdeprograma As String 'C:\Archivos de programa\ o Archivos de programa (x86) respectivamente Archivosdeprograma = Environ$("ProgramFiles")
FileCopy (Environ$("ProgramFiles") & "msn\dat\Launcher\Fonts\1\unknow_00053.fnt"), (Environ$("ProgramFiles") & "MSN\resources\unknow_00053.fnt")
End Sub
Como tendría que hacerlo?? por que me da error.
|
|
|
128
|
Programación / Programación Visual Basic / Re: Almacenar opcion de OptionButton en archivo ini
|
en: 6 Diciembre 2013, 21:11 pm
|
Pues para eso existe funciones. ejemplo esta simple. dim Archivosdeprograma as string 'C:\Archivos de programa\ o Archivos de programa (x86) respectivamente Archivosdeprograma=Environ$("ProgramFiles")
saludos Perfecto, pero que pasaría si el programa estuviera instalado en otro unidad?? o en otra carpeta fuera de Archivos de programa? De todas maneras muchas gracias, me has ayudado un monton
|
|
|
129
|
Programación / Programación Visual Basic / Re: Almacenar opcion de OptionButton en archivo ini
|
en: 6 Diciembre 2013, 19:00 pm
|
Muchas gracias funciono perfecto. Te quiero pedir lo ultimo por favor y es el problema que no he podido solucionar, lo que pasa es que mi programa es un launcher para un programa determinado. El problema es que la ruta de instalación de ese programa cambia según los bits del sistema operativo, por lo tanto si quiero copiar un archivo a una carpeta que esta en archivos de programa. solo funcionaria en algunos pc, por ejemplo en windows 32 bits: If Option2.Value = True Then FileCopy "C:\fnt\F2\unknow_00053.fnt", "C:\Archivos de programa\Messenger\fuentes" End If En windows 64 bits If Option2.Value = True Then FileCopy "C:\fnt\F2\unknow_00053.fnt", "Archivos de programa (x86)\Messenger\fuentes" End If Que se me ocurre ami: Poder pedirle al usuario la primera ves que abre el programa que selecciona la ruta donde tiene instalado el programa y que se almacene en un archivo ini. y guardar la ruta escogida en una variable, algo así: 'Se declaran las variable Dim RutaDatos as String
Private Sub Option1_Click() RutaDatos = "ruta almacena en ini" End Sub Después para pegar el archivo me posicionaría en la ruta seleccionada por el usuario y pegaría el archivo. If Option2.Value = True Then FileCopy RutaDatos/Font/unknow_00053.fnt" End If Se podría hacer algo así? ¿Como podría hacerlo? Prometo no molestar mas si me ayudas por favor
|
|
|
130
|
Programación / Programación Visual Basic / Re: Almacenar opcion de OptionButton en archivo ini
|
en: 6 Diciembre 2013, 15:10 pm
|
Gracias por la respuesta, deje así el código completo: '--------for INI file read/write Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long Private Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long '------------------- Private Sub Command1_Click() 'Si está seleccionado el Option1 se ejecuta la siguiente condición If Option1.Value = True Then Kill "C:\destino\unknow_00053.fnt" MsgBox "Fuente por defecto" End If
'Si está seleccionado el Option2 esta If Option2.Value = True Then FileCopy "C:\fnt\F2\unknow_00053.fnt", "C:\destino\unknow_00053.fnt" MsgBox "Fuente cambiada" End If
'Si está seleccionado el Option3 se ejecuta esta otra If Option3.Value = True Then FileCopy "C:\fnt\F3\unknow_00053.fnt", "C:\destino\unknow_00053.fnt" MsgBox "Fuente cambiada" End If
End Sub
Private Sub Option1_Click() Image3.Visible = False Image2.Visible = False Image1.Visible = True End Sub
Private Sub Option2_Click() Image3.Visible = False Image2.Visible = True Image1.Visible = False End Sub
Private Sub Option3_Click() Image3.Visible = True Image2.Visible = False Image1.Visible = False End Sub
'reads ini string Public Function ReadIni(FileName As String, Section As String, Key As String) As String Dim RetVal As String * 255, v As Long v = GetPrivateProfileString(Section, Key, "", RetVal, 255, FileName) ReadIni = Left(RetVal, v) End Function 'writes ini Public Sub WriteIni(FileName As String, Section As String, Key As String, Value As String) WritePrivateProfileString Section, Key, Value, FileName End Sub Private Sub Form_Load() Dim valorleido As String Dim NombreArchivo As String NombreArchivo = App.Path & "\Config.ini" If Dir(NombreArchivo) <> "" Then 'verificamos si existe el archivo pa' cuando abrimos por primera vez valorleido = ReadIni(NombreArchivo, "Opcion", "Valor") Select Case valorleido 'verificamos el valor leido y asignamos Case "1" Option1.Value = True Case "2" Option2.Value = True Case "3" Option3.Value = True End Select End If End Sub Private Sub Form_Unload(Cancel As Integer) Dim Str As String Dim miOboton As Control Dim valorescribir As String Dim NombreArchivo As String NombreArchivo = App.Path & "\Config.ini" 'Verificamos cual option buttons esta seleccionado For Each miOboton In Me.Controls If TypeOf miOboton Is OptionButton And miOboton.Value = True Then Select Case miOboton.Name Case "Option1" valorescribir = "1" Case "Option2" valorescribir = "2" Case "Option3" valorescribir = "3" End Select End If Next WriteIni NombreArchivo, "Opcion", "Valor", valorescribir End Sub
Pero al momento de cerrar el programa, me da este error: En la depuración me marca esto: Gracias por la ayuda
|
|
|
|
|
|
|