Vider le cache de My.Computer.Network.DownloadFile ?

cs_sebeto Messages postés 7 Date d'inscription dimanche 11 mars 2007 Statut Membre Dernière intervention 29 septembre 2010 - 21 mars 2007 à 19:34
cs_sebeto Messages postés 7 Date d'inscription dimanche 11 mars 2007 Statut Membre Dernière intervention 29 septembre 2010 - 22 mars 2007 à 15:09
Salut !

J'ai créé un programme qui pour vérifier si des mises à jour sont disponibles télécharge sur internet un fichier maj.ini contenant la dernière version téléchargeable.

Le problème étant qu'apparemment ce fichier maj.ini est du coup stocké dans un cache je ne sais où sur l'ordi, et qu'il n'est pas retéléchargé automatiquement quand je relance mon programme...

        If My.Computer.Network.IsAvailable = True Then
            Try
                My.Computer.Network.DownloadFile _
                    ("http://www.esperantomondo.net/vortaro/maj.ini", _
                    My.Application.Info.DirectoryPath.ToString & "\maj.ini", "", "", _
                    True, 100, True, FileIO.UICancelOption.ThrowException)
            Catch ex As Exception
                MsgBox("Le fichier internet de mise à jour n'a pas pu être téléchargé !", MsgBoxStyle.Critical, _
                "Information de mise à jour")
            End Try
        End If

Exemple :

Je lance mon prog avec sur internet le fichier maj.ini contenant 1009.

Il le télécharge, c'est la bonne version du prog, ok.

Je ferme le programme, mets sur internet maj.ini contenant 1010 (qui doit cette fois faire afficher "nouvelle version").

Je relance le programme (après avoir supprimé maj.ini en local pour être sûr), et là... il télécharge maj.ini qui contient toujours 1009 !

Sur le serveur, maj.ini contient bien 1010 pourtant !

Seule explication : ce maj.ini est contenu dans un cache quelque part sur l'ordi, et My.Computer.Network.DownloadFile le récupère dans ce cache et non pas sur internet les fois suivantes...

Merci de m'indiquer comment je peux vider ce cache afin que la version téléchargée de maj.ini soit bien toujours celle disponible sur le serveur !

Note : j'ai déjà tenté de vider les temporary internet files, visiblement ça n'est aps stocké là-dedans...

2 réponses

Utilisateur anonyme
21 mars 2007 à 21:52
Salut,

Si c'est une simple vérification, pourquoi le télécharger ?







Try

  Dim Wc As New System.Net.WebClient()
  Dim SR As New System.IO.StreamReader(Wc.OpenRead("http://www.esperantomondo.net/vortaro/maj.ini"))
  Dim UpdateStr As String = SR.ReadToEnd()
  SR.Dispose()
  Wc.Dispose()
  System.Windows.Forms.MessageBox.Show(String.Format("Update: {0}", UpdateStr))
Catch
  System.Windows.Forms.MessageBox.Show("Le fichier internet de mise à jour n'a pas pu être téléchargé !", _
        "Information de mise à jour", System.Windows.Forms.MessageBoxButtons.OK, _
        System.Windows.Forms.MessageBoxIcon.Asterisk)
End Try,

----

(Coloration syntaxique automatique par Kenji)







__________
Kenji
0
cs_sebeto Messages postés 7 Date d'inscription dimanche 11 mars 2007 Statut Membre Dernière intervention 29 septembre 2010
22 mars 2007 à 15:09
> Si c'est une simple vérification, pourquoi le télécharger ?

Euh... parce que je ne savais pas comment faire autrement ;)

Je teste ce code dès que possible et je valide la réponse si ça marche, merci beaucoup d'avance !
0
Rejoignez-nous