Si, l'ho visto ieri pomeriggio e ho preso spunto per il codice che ho postato prima. Peccato però che non indica il tipo di errore specifico: cioè ti dice che c'è stato un errore ma non si sa quale.

Poi l'articolo non accenna proprio a calcolare la velocità del download. Nel frattempo ho provato questo, ma non funziona:

codice:
Private Sub UserControl_AsyncReadProgress (AsyncProp As AsyncProperty)
    dim LastReading As Long

    If AsyncProp.BytesRead > 0 Then
        Kbps = IIf (LastReading = 0, 0,  AsyncProp.BytesRead / 1024 / (Timer - LastReading) *1000
        LastReading = Timer    
     End If
End Sub
Kbps è sempre un valore inferiore ad uno, mentre se scarico lo stesso file manualmente (o anche usando l'API DoFileDownload) e vedo il numero di KB scaricati/sec si aggira sui 200-220 KB/sec. Perchè??