如何让网络浏览器逐行或逐行读取和使用代理?

how to make the webbrowser read and use proxies one by one or line by line?

我正在使用网络浏览器快速填写网站中的表格,所以它一直阻止我的 ip,我在网络浏览器上使用了一个代理,它工作了大约 5 分钟,然后该网站再次阻止它 + 我使用 openFileDialog 导入代理进入一个文本框,然后让下面的代码使用它,但它一直只使用一个代理所以我希望它每次单击按钮时都使用文本框中的另一个代理

Public Structure Struct_INTERNET_PROXY_INFO
        Public dwAccessType As Integer
        Public proxy As IntPtr
        Public proxyBypass As IntPtr
End Structure
Private Declare Auto Function InternetSetOption Lib "wininet.dll" (ByVal hInternet As IntPtr, ByVal dwOption As Integer, ByVal lpBuffer As IntPtr, ByVal lpdwBufferLength As Integer) As Boolean

Private Sub RefreshIESettings(ByVal strProxy As String)
    Const INTERNET_OPTION_PROXY As Integer = 38
    Const INTERNET_OPEN_TYPE_PROXY As Integer = 3
    Dim s_IPI As Struct_INTERNET_PROXY_INFO

    s_IPI.dwAccessType = INTERNET_OPEN_TYPE_PROXY
    s_IPI.proxy = System.Runtime.InteropServices.Marshal.StringToHGlobalAnsi(strProxy)
    s_IPI.proxyBypass = System.Runtime.InteropServices.Marshal.StringToHGlobalAnsi("Global")

    Dim intptrStruct As IntPtr = System.Runtime.InteropServices.Marshal.AllocCoTaskMem(System.Runtime.InteropServices.Marshal.SizeOf(s_IPI))
    System.Runtime.InteropServices.Marshal.StructureToPtr(s_IPI, intptrStruct, True)
    InternetSetOption(IntPtr.Zero, INTERNET_OPTION_PROXY, intptrStruct, System.Runtime.InteropServices.Marshal.SizeOf(s_IPI))

End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    RefreshIESettings(textbox1.Text)

只使用静态索引。当列表耗尽时,它将循环回到第一个 strProxy。

Private lines As List(Of String) = File.ReadLines("proxies.txt").ToList

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Static i As Integer
    If i = lines.Count Then
        i = 0
    End If
    TextBox1.Text = lines(i)
    i += 1
End Sub