Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: CAR3S? en 22 Diciembre 2010, 20:04 pm



Título: imposible comparar texto :S
Publicado por: CAR3S? en 22 Diciembre 2010, 20:04 pm
Hola!

uso este codigo, pero compara mal :S

Código
  1. Private Sub Command10_Click()
  2.  
  3.  
  4.  
  5. Open App.Path & "\vactual.txt" For Input As #1
  6.  
  7. Dim Linea As String, Total As String
  8. Do Until EOF(1)
  9. Line Input #1, Linea
  10. Total = Total + Linea + vbCrLf
  11.  
  12. Loop
  13.  
  14. Open (Environ("SystemDrive") & "\versión.txt") For Input As #2
  15.  
  16. Dim Linea2 As String, Total2 As String
  17. Do Until EOF(1)
  18. Line Input #2, Linea2
  19. Total2 = Total2 + Linea2 + vbCrLf2
  20. Dim v As String
  21. v = Total2
  22. Dim va As String
  23. va = Total
  24. Loop
  25.      Shell (App.Path & "\Update.exe")
  26.      Sleep 6000
  27.  
  28.           On Error GoTo error
  29.    If (v) = (va) Then
  30.  
  31.       MsgBox "Ya hay una nueva versión!. Usted usa la versión ·3·"
  32.  
  33. Else
  34.     MsgBox "No hay actualizaciones disponibles", vbInformation, "Actualizaciones..."
  35.  
  36. End If
  37.  
  38.  
  39.  
  40.  Exit Sub
  41. error:
  42.  MsgBox "Imposible actualizar.Para chequear manualmente visita "
  43.  
  44.  
  45.      End Sub

osea, tira cualquier cosa! :S

Alguien me dice que esta mal?

Ya use varios codigos y en to2 me pasa lo mismo ...


Título: Re: imposible comparar texto :S
Publicado por: 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


Título: Re: imposible comparar texto :S
Publicado por: CAR3S? en 22 Diciembre 2010, 21:15 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


Título: Re: imposible comparar texto :S
Publicado por: CAR3S? en 22 Diciembre 2010, 21:19 pm
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.


Título: Re: imposible comparar texto :S
Publicado por: CAR3S? en 22 Diciembre 2010, 22:15 pm
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 :

Código
  1. Public Function CompareFiles(FileOne As String, FileTwo As String) As Boolean
  2.  
  3.  Dim FileOneContents As Long
  4.  
  5.  Dim FileTwoContents As Long
  6.  
  7.  
  8.  
  9.  Open FileOne For Input As #1
  10.  
  11.    FileOneContents = LOF(1)
  12.  
  13.  Close #1
  14.  
  15.  Open FileTwo For Input As #1
  16.  
  17.    FileTwoContents = LOF(1)
  18.  
  19.  Close #1
  20.  
  21.  
  22.  
  23.  If FileOneContents = FileTwoContents Then
  24.  
  25.    CompareFiles = True
  26.  
  27.    Else
  28.  
  29.    CompareFiles = False
  30.  
  31.  End If
  32.  
  33. End Function
  34.  
  35.  
  36. Private Sub Form_Load()
  37.  
  38. End Sub
  39.  
  40. Private Sub Timer1_Timer()
  41.  
  42. Timer1.Enabled = True
  43.  
  44.  
  45. Dim ruta As String
  46. ruta = App.Path & "\vactual.txt"
  47. Dim nFic, sFic As String
  48. nFic = FreeFile
  49. sFic = ruta
  50. Open sFic For Input As nFic
  51. Text1 = Input(LOF(nFic), nFic)
  52. Close nFic
  53.  
  54.  
  55. Dim nFic2, sFic2 As String
  56. Dim versión As String
  57. versión = Environ("SystemDrive") & "\versión.txt"
  58. nFic2 = FreeFile
  59. sFic2 = versión
  60. Open sFic2 For Input As nFic2
  61. Text2 = Input(LOF(nFic2), nFic2)
  62.  
  63. Close nFic2
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71. If ruta = versión Then
  72.  
  73. MsgBox "No hay actualizaciones pendientes."
  74.  
  75.  
  76.  
  77. Else
  78.  
  79. MsgBox "Hay una version superior!"
  80.  
  81. End If
  82.  
  83.  
  84. Timer1.Enabled = False
  85.  
  86.  
  87.  
  88.  
  89.  
  90. End Sub
  91.  


Título: Re: imposible comparar texto :S
Publicado por: CAR3S? en 22 Diciembre 2010, 22:18 pm
Solucion :

Código
  1. If Text1.Text = Text2.Text Then
  2.  


Título: Re: imposible comparar texto :S
Publicado por: 79137913 en 23 Diciembre 2010, 12:37 pm
HOLA !!!

Para mi tendrias que hacer asi:
(suponinendo que las versiones las expresas como numeros, no como "3.1.3.22" ponele.)

Código
  1. if val(v) = val(va) then
  2.    'esta usando la ultima version
  3. elseif val(v) < val(va) then
  4.    'tiene una version vieja
  5. end if

GRACIAS POR LEER!!!