Newsgroup: it.comp.lang.visual-basic
Titolo: [VB 6] - Download file txt

Sto realizzando una funzione per verificare la presenza di versioni
aggiornate del mio software via web.
Per farlo scarico dal server un file txt contenente le informazioni, solo
che mentre il file txt caricato contiene dati nella forma:
"3.5.76
#
Novità di questa versione:
- bugfix in stats editor"
quello scaricato li contiene tutti su un'unica riga.
Sapete dirmi come posso risolvere il problema?
Questa è la funzione che utilizzo per scaricare il file:
Dim bytFile() As Byte
Dim intFF As Integer
Dim strFileInfo As String
Dim strFullPath() As String
'ricava il nome del file dall'URL
strFullPath() = Split(strURL, "/")
strFile = strFullPath(UBound(strFullPath))
With frmUpdates.Inet1
   'scarica il file
   bytFile() = .OpenURL(strURL, icByteArray)
   'attende il termine del download
   Do Until .StillExecuting = False
      DoEvents
   Loop
End With
'si assicura che il file non esista, se esiste lo cancella
If Len(Dir(strDestDir & strFile)) Then
   Kill strDestDir & strFile
End If
'salva il file scaricato
intFF = FreeFile
Open strDestDir & strFile For Binary Access Write As #intFF
   Put #intFF, , bytFile()
   DoEvents
Close #intFF
'pulisce la memoria
Erase bytFile()
DoEvents
Grazie

Se può servire, per leggere il file faccio in questo modo
    Update = FreeFile
    If Dir$("c:\" & strFile) <> "" Then
        Open "c:\" & strFile For Input As Update
            ReadFileText = Input$(LOF(Update), Update)
            Text1.Text = ReadFileText
        Close #Update
    Else
        MsgBox "Can't find update info!!!", vbExclamation
    End If

 quello scaricato li contiene tutti su un'unica riga.
Fai l'upload su server in modalitŕ binary e non ascii... probabilmente il
server č unix e trasforma il CR+LF del dos in un CR e basta... prova a
scaricare il file con IE e a controllare.
hth

 scaricare il file con IE e a controllare.
E' qualcosa di simile. In realtà pare che trasformi il CR+LF in un LF.
Infatti ho risolto facendo un replace nella stringa...
        Open "c:\" & strFile For Input As Update
            ReadFileText = Input$(LOF(Update), Update)
            sTemp = Split(ReadFileText, vbLf, , vbBinaryCompare)
            For i = 0 To UBound(sTemp)
                List1.AddItem sTemp(i)
            Next i
        Close #Update
P.S per controllare se il computer è connesso ad internet, va bene questo?
    Private Declare Function InternetGetConnectedState Lib "wininet.dll"
(ByRef lpdwFlags As Long, ByVal dwReserved As Long) As Boolean
Private Sub Command1_Click()
Dim Connected As Boolean
    Connected = InternetGetConnectedState(0&, 0&)
    If Connected = 1 Then
        Msgbox "You're connected"
    Else
        Msgbox "Please Connect to the internet before continuing..."
    End if
End sub

 Infatti ho risolto facendo un replace nella stringa...
ah, il rincoglionimento...
non č una replace dai, č stata una "matita mentale" :D
ho fatto lo split della stringa usando come separatore "LF", con CR non
funzionava.
il risultato finale č simile direi :D
anche se caricando in modalitŕ bin poi si ha dinuovo il problema.
Avevo fatto in questo modo per evitare di dovermi ricordare ogni volta di
impostare leechftp su binary...
Ciao e grassie mille

io sto organizzando una bella dll che utilizza un file XML per fare la
stessa cosa che fai tu....
praticamente il file xml contiene l'elenco di tutti i files che compongono
il mio applicativo, dal primo all'ultimo. A ciascun file associo il tipo (un
enum che dice se è un eseguibile, un report, un doc, un file media,
etc.).....
se all'avvio della mia app il pc è connesso all rete, scarico il file xml
dal mio sito.....
popolo due collection con l'elenco dei files. Una coll contiene le proprietà
dei files installati sul PC, l'altra coll contiene tutti i files aggiornati
sul server web.
poi confronto uno per uno ogni singolo file, con quelli che devono essere
aggiornati popolo un'altra collection. Non ho ancora finito, ma mi sembra
tutto molto figo.....
:-)))
good coding!!!
-- 
Damiani Liborio Igor
ig...@igordamiani.it
 - 
soft...@igordamiani.it
 - 
idam...@hotmail.com
http://www.igordamiani.it
ICQ : 11847262

 good coding!!!
Io ho costruito un razzo e quest'estate me ne vo in vacanza sulla luna!
Scherzi a parte, apprezzo il tuo suggerimento, ma a me serviva una cosa
molto più banale e credo di esserci riuscito.
In fin dei conti il mio proggo è abbastanza semplice e c'è l'installer...
carico il file di testo, e chiunque poi installi il mio software può
controllare con un click se ci sono novità e leggere le novità dell'ultima
versione in una listview.
Ciao e grassie ancora!