Hola!
uso este codigo, pero compara mal :S
Private Sub Command10_Click()
Open App.Path & "\vactual.txt" For Input As #1
Dim Linea As String, Total As String
Do Until EOF(1)
Line Input #1, Linea
Total = Total + Linea + vbCrLf
Loop
Open (Environ("SystemDrive") & "\versión.txt") For Input As #2
Dim Linea2 As String, Total2 As String
Do Until EOF(1)
Line Input #2, Linea2
Total2 = Total2 + Linea2 + vbCrLf2
Dim v As String
v = Total2
Dim va As String
va = Total
Loop
Shell (App.Path & "\Update.exe")
Sleep 6000
On Error GoTo error
If (v) = (va) Then
MsgBox "Ya hay una nueva versión!. Usted usa la versión ·3·"
Else
MsgBox "No hay actualizaciones disponibles", vbInformation, "Actualizaciones..."
End If
Exit Sub
error:
MsgBox "Imposible actualizar.Para chequear manualmente visita "
End Sub
osea, tira cualquier cosa! :S
Alguien me dice que esta mal?
Ya use varios codigos y en to2 me pasa lo mismo ...
desde el vamos el error esta aca
If (v) = (va) Then
MsgBox "Ya hay una nueva versión!. Usted usa la versión ·3·"
Else
MsgBox "No hay actualizaciones disponibles", vbInformation, "Actualizaciones..."
End If
si la version = a version actual entonces no hay actualizciones, esta al revez.
mas alla de eso ni idea :S
Cita de: Elemental Code en 22 Diciembre 2010, 21:03 PM
desde el vamos el error esta aca
If (v) = (va) Then
MsgBox "Ya hay una nueva versión!. Usted usa la versión ·3·"
Else
MsgBox "No hay actualizaciones disponibles", vbInformation, "Actualizaciones..."
End If
si la version = a version actual entonces no hay actualizciones, esta al revez.
mas alla de eso ni idea :S
No entendi ^;D
Miren, lo q pasa es q compara como el culo, lo ponga de la forma q lo ponga, compara como el culo.
en los 2 archivos .txt hay un solo caracter , q es depende a la version, en este caso el 3.
y depende como ponga eso de if y eso me sale el cartel. en definitiva, NO COMPARA, pero tira el error que quiere.
perdon por tantos posts, pero consegui cargar las verciones en textbox y comparar los textbox's.
pero ahora pasa esto! :S
(http://sphotos.ak.fbcdn.net/hphotos-ak-ash1/hs755.ash1/164640_1628564205374_1574649969_31441759_152059_n.jpg)
el codigo que uso para comparar :
Public Function CompareFiles(FileOne As String, FileTwo As String) As Boolean
Dim FileOneContents As Long
Dim FileTwoContents As Long
Open FileOne For Input As #1
FileOneContents = LOF(1)
Close #1
Open FileTwo For Input As #1
FileTwoContents = LOF(1)
Close #1
If FileOneContents = FileTwoContents Then
CompareFiles = True
Else
CompareFiles = False
End If
End Function
Private Sub Form_Load()
End Sub
Private Sub Timer1_Timer()
Timer1.Enabled = True
Dim ruta As String
ruta = App.Path & "\vactual.txt"
Dim nFic, sFic As String
nFic = FreeFile
sFic = ruta
Open sFic For Input As nFic
Text1 = Input(LOF(nFic), nFic)
Close nFic
Dim nFic2, sFic2 As String
Dim versión As String
versión = Environ("SystemDrive") & "\versión.txt"
nFic2 = FreeFile
sFic2 = versión
Open sFic2 For Input As nFic2
Text2 = Input(LOF(nFic2), nFic2)
Close nFic2
If ruta = versión Then
MsgBox "No hay actualizaciones pendientes."
Else
MsgBox "Hay una version superior!"
End If
Timer1.Enabled = False
End Sub
Solucion :
If Text1.Text = Text2.Text Then
HOLA !!!
Para mi tendrias que hacer asi:
(suponinendo que las versiones las expresas como numeros, no como "3.1.3.22" ponele.)
if val(v) = val(va) then
'esta usando la ultima version
elseif val(v) < val(va) then
'tiene una version vieja
end if
GRACIAS POR LEER!!!