j'ai nettoyé une grande partie du code
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionImports System.IO Public Class Form1 Dim WB As New WebBrowser Dim chaine As String Dim pseudo As String Dim Quota As Integer = 1000000 Dim msgquota As Boolean = False Dim rang As String Dim prochrang As Integer Dim ovX As Integer Dim ovY As Integer Dim verifrang As Boolean = True 'Fin des déclarations Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'au lancement Try 'Lecture dans le fichier des options Dim sr As New StreamReader("options.cfg") 'Définition et Ouverture du flux de lecture pseudo = sr.ReadLine() 'Stocke le pseudo dans une variable rang = sr.ReadLine() 'Stocke le rang dans une variable If sr.ReadLine() = "True" Then 'Définit si l'overlay est activé par défaut CBO.Checked = True Overlay.Show() ovX = sr.ReadLine() 'Stocke la coordonnée horizontale de l'overlay ovY = sr.ReadLine() 'Stocke la coordonnée verticale de l'overlay Overlay.Location = New Point(ovX, ovY) 'Définit la position de l'overlay End If sr.Close() 'Fermeture du flux de lecture 'fin de la lecture Overlay.Text = rang 'Le titre de l'overlay correspond au rang LBR.Text = "Rang :" & rang 'Affiche le rang dans l'onglet "pseudo" TB.Text = pseudo 'Affiche le pseudo dans la case dans l'onglet "pseudo" Me.Text = "JVStats - " & pseudo 'Ajoute le pseudo dans le titre de la fenêtre If rang = "Null" Then verifrang = False Else verifrang = True PostsRang() End If WB.Navigate("http://www.jeuxvideo.com/profil/" & pseudo & ".html") 'Ordonne au navigateur (invisible , c'est peût être ça qui est détecté comme trojan) d'aller sur l'URL de a CDV Catch Config_Rapide.Show() Me.Close() End Try End Sub Private Sub TIM_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TIM.Tick 'quand le timer à fait un tour Try If verifrang = False Then rang = WB.Document.GetElementById("prang").InnerHtml rang = rang.Replace("", "") 'enlève les balives Html dans le code récupéré rang = rang.Replace("", "") 'Idem rang = rang.Replace("""", " ") rang = Strings.Right(rang, 10) rang = rang.Replace(" ", "") Sauvegarde() PostsRang() verifrang = True End If chaine = WB.Document.GetElementById("td_pts").InnerHtml 'Stocke une partie de code de la page de la cdv dans une variable chaine = chaine.Replace("", "") 'enlève les balives Html dans le code récupéré chaine = chaine.Replace("", "") 'Idem chaine = chaine.Replace("", "") 'Idem chaine = chaine.Replace("", "") 'Idem chaine = chaine.Replace("points", "") 'Supprime le mot "points" chaine = chaine.Replace(" ", "") 'Supprime les espaces LBL.Text = "Nombre de points : " & chaine 'Affiche les données dans l'onglet "Stats" PB.Value = chaine 'met les données dans la barre de progression If verifrang = True Then Overlay.LBO.Text = chaine 'affiche dans l'overlay le nombre de posts Overlay.LBR.Text = prochrang - chaine 'affiche le nombre de messages avant le prochain rang End If If CB.Checked = True Then 'Si la case de l'objectif est cochée If chaine > Quota Then 'et si le nombre de posts est supérieur au quota If msgquota = False Then 'et si un adjectif est défini MsgBox("Quota atteint avec succès , veillez en entrer un autre ou désactiver l'option !") 'afficher ce message End If End If End If WB.Refresh() 'Rafraichit la navigateur invisible Catch TIM.Enabled = False 'si il y a une erreur , couper le timer (ceux qui permet d'actualiser toutes les 7,5 secondes) MsgBox("Erreur ! Impossible d'obtenir le nombre de posts , vérifiez que le pseudo n'est pas banni et qu'il est juste. S'il est faux, corrigez le et relancez le logiciel !") 'affiche ce message d'erreur End Try End Sub Private Sub CB_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CB.CheckedChanged 'quand l'état de la case change (objectif) If CB.Checked = True Then 'Si la checkbox de l'objectif est cochée CB.Text = "Quota de messages à atteindre :" 'change le texte de la checkbox TBO.Visible = True 'la zone de texte ok devient visible BTO.Visible = True 'le bouton devient visible Else 'sinon (pas cohé) CB.Text = "Activer l'objectif" 'change le texte TBO.Visible = False 'devient invisible BTO.Visible = False 'devient invisible msgquota = True 'Le quota de message est activé End If End Sub Private Sub BTO_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTO.Click 'quand on clique sur OK (objectif) Try Quota = TBO.Text 'le cota prend le nombre dans la case Catch MsgBox("Erreur ! Vérifiez que vous n'avez pas entrés de lettres ou d'espaces !") 'Erreur si autre chose que des chiffres sont entrés ! End Try msgquota = True 'active l'objectif MsgBox("Objectif activé avec succès ! (" & Quota & " messages)") 'message pour dire que c'est ok End Sub Private Sub CBOV_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CBO.CheckedChanged 'quand l'état de la case change If CBO.Checked = True Then 'si cochée Overlay.Show() 'afficer l'overlay Else 'sinon Overlay.Close() 'le cacher End If End Sub 'Partie sauvegardes Private Sub BTS_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTS.Click Sauvegarde() 'invoquation de la sous-procédure "sauvegarde" End Sub Private Sub BTA_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTA.Click Sauvegarde() 'idem End Sub Public Sub Sauvegarde() 'déclaration de la sous-procédure Try 'Ouverture flux d'écriture Dim sw As New StreamWriter("options.cfg", False) 'déclaration du flux sw.WriteLine(TB.Text) 'ecrire la pseudo sw.WriteLine(rang) 'ecrire le rang sw.WriteLine(CBO.Checked.ToString) 'ecris si l'overlay est activé ou non sw.WriteLine(Overlay.Location.X) 'ecris position horizontale overlay sw.WriteLine(Overlay.Location.Y) 'ecris position verticale overlay sw.Close() 'Fermeture flux MsgBox("Options sauvegardés avec succès ! Vous devez relancer le programme pour que les changements soit pris en comptes") 'Message ok Catch MsgBox("Erreur ! Impossible d'accéder au fichier Options.cfg !") 'message erreur End Try End Sub Public Sub PostsRang() If rang = "BRONZE" Then prochrang = 50 ElseIf rang = "ARGENT" Then prochrang = 200 ElseIf rang = "OR" Then prochrang = 1000 ElseIf rang = "RUBIS" Then prochrang = 10000 ElseIf rang = "DIAMANT" Then prochrang = 150000 End If PB.Maximum = prochrang 'définit le nombre de point du prochain rang comme la fin de la barre de chargement LBR.Text = "Rang : " & rang End Sub End Class