desofusca y sacale las comprobaciones redundantes a ver si se le cambio el derecho de autor y volvelo a poner.
El principal problema es que no estas usando bien el archivo txt por lo que parece.
Proba de la forma que dijo deeo raiser y no hagas trampas y comprobaciones. si liberas el codigo es mas que bobo que te pueden sacar la comprobacion de esa linea de derecho de autor ¬¬
Voy a hacerte el trabajo mas facil y voy a hacer un modulo
Aca esta
Option Explicit
'PROOF OF CONCEPT / PRUEBA DE CONCEPTO
'ELEMENTAL CODE (Milton Candelero)
'5/3/2012 (dd/mm/aaaa)
'UPDATE MODULE / MODULO DE ACTUALIZACION
'En caso de uso y/o modificacion, respetar los creditos.
'Hecho para Lordzito ya que su version era fea, ineficiente, y tenia muchisimas comprobaciones de si le habian sacado una linea que decia "By lordzito" ¬¬
Const OldVer As Double = 666 'Version actual (solo admite formato x.x NO USAR FORMATOS COMO x.x.x.x)
Const URLVer As String = "URL del txt" 'url del txt
Const URLSetup As String = "URL del archivo" 'url del archivo
'EDITAR LAS CONSTANTES DE ARRIBA!!
'SINO ESTO NO VA A FUNCIONAR.
'***********************************************************
Dim NewVer As Double
Dim ff As Integer
Dim sVersion As String
'(USO DOUBLES para que si yo tengo la version 1.6 y el txt dice 1.5 no me obligue a actualizar)
'URLDownloadToFile es una de las formas mas feas de bajar un archivo, pero bueh, que se le va a hacer :P
Private Declare Function URLDownloadToFile _
Lib "urlmon" _
Alias "URLDownloadToFileA" ( _
ByVal pCaller As Long, _
ByVal szURL As String, _
ByVal szFileName As String, _
ByVal dwReserved As Long, _
ByVal lpfnCB As Long) As Long
'Verifica y contesta TRUE si hay actualizaciones nuevas y FALSE si no las hay.
Public Function UpdateAvailable() As Boolean
Call URLDownloadToFile(0, URLVer, "c:\Version.txt", 0, 0)
ff = FreeFile
Open "c:\Version.txt" For Binary As ff#
sVersion = Space(LOF(1))
Get #ff, , sVersion
Close #ff
NewVer = CDbl(sVersion)
If NewVer > OldVer Then UpdateAvailable = True Else UpdateAvailable = False
End Function
'Descarga el archivo indicado en la constante "URLSetup"
Public Function DownloadSetup(Optional sPath As String = "c:\SETUP.exe")
Call URLDownloadToFile(0, URLSetup, sPath, 0, 0)
End Function
No tiene msgbox (Cosa HORRIBLE para un modulo)
No tiene comprobaciones de derechos de autor (Estupido, si estas liberando el codigo
)
Usa URLDownload to file (es mal forma de bajar archivos, pero funciona al efecto
)
tiene dos metodos:
Verifica el TXT y devuelbe true o false para que vos puedas decidir si preguntar al usuario o no sobre la actualizacion, o poner otro mensaje, o hacer lo que se te de la gana
Descarga el archivo de actualizacion adonde tu le digas o sino lo descarga automaticamente en C:\
ASI se hace un buen modulo
edito una vez mas.
Creo que lo de poner constantes no es la mejor idea del mundo.
Podria ser todo pasado como parametro a la funcion.
Pero te deje eso para respetar un pooooquiiito del codigo original.