Bonjour,
je voudrais ajouter des sites à bloquer au fichier hosts (un très grand nombre de site, plus de 85 000 minimum).
Je suis donc obligé de désactiver le service "Dnscache" car la navigation devient impossible aussi non.
Le problème n'est pas là, en effet lors de l'ajout de toutes ces lignes, j'ai un message d'erreur comme quoi le fichier hosts est en cours d'utilisation. C'est bien une erreur de mon code mais je ne vois pas d'où cela peut venir. J'espère que quelqu'un verra le problème qui est présent dans mon code.
Merci.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Private Sub ButtonPatcherHosts_Click(sender As Object, e As EventArgs) Handles ButtonPatcherHosts.Click, ButtonPatcherHosts.Click Dim ThreadPatcherHosts As New Threading.Thread(AddressOf PatcherHosts) ThreadPatcherHosts.Start() End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76 If CheckBoxBloquerSitesDangereux.Checked Then Try Dim StreamReaderHosts As New StreamReader("C:\Windows\System32\Drivers\etc\hosts") Dim StreamReaderListe As New StreamReader("C:\Users\Clément\Documents\ListeDeSiteContenusDangereux.txt") Dim ligne As String Dim ligneExistante As String = StreamReaderHosts.ReadToEnd StreamReaderHosts.Close() Dim sw As StreamWriter = New StreamWriter("C:\Windows\System32\Drivers\etc\hosts", True) Do ligne = StreamReaderListe.ReadLine 'on verifie si ligne n'est pas vide If ligne = String.Empty Then sw.Close() Exit Do End If If Not ligneExistante.Contains(ligne) Then sw.WriteLine(ligne) End If Loop Until ligne Is Nothing StreamReaderListe.Close() Catch ex As Exception MessageBox.Show(ex.ToString) End Try End If If CheckBoxBloquerSitesPublicitaires.Checked Then Try Dim StreamReaderHosts As New StreamReader("C:\Windows\System32\Drivers\etc\hosts") Dim StreamReaderListe As New StreamReader("C:\Users\Clément\Documents\ListeDeSiteContenusPublicitaires.txt") Dim ligne As String Dim ligneExistante As String = StreamReaderHosts.ReadToEnd StreamReaderHosts.Close() Dim sw As StreamWriter = New StreamWriter("C:\Windows\System32\Drivers\etc\hosts", True) Do ligne = StreamReaderListe.ReadLine 'on verifie si ligne n'est pas vide If ligne = String.Empty Then sw.Close() Exit Do End If If Not ligneExistante.Contains(ligne) Then sw.WriteLine(ligne) End If Loop Until ligne Is Nothing StreamReaderListe.Close() Catch ex As Exception MessageBox.Show(ex.ToString) End Try End If If CheckBoxBloquerSitesCaracteresSexuels.Checked Then Try Dim StreamReaderHosts As New StreamReader("C:\Windows\System32\Drivers\etc\hosts") Dim StreamReaderListe As New StreamReader("C:\Users\Clément\Documents\ListeDeSiteCaracteresSexuels.txt") Dim ligne As String Dim ligneExistante As String = StreamReaderHosts.ReadToEnd StreamReaderHosts.Close() Dim sw As StreamWriter = New StreamWriter("C:\Windows\System32\Drivers\etc\hosts", True) Do ligne = StreamReaderListe.ReadLine 'on verifie si ligne n'est pas vide If ligne = String.Empty Then sw.Close() Exit Do End If If Not ligneExistante.Contains(ligne) Then sw.WriteLine(ligne) End If Loop Until ligne Is Nothing StreamReaderListe.Close() Catch ex As Exception MessageBox.Show(ex.ToString) End Try End If End Sub
Partager