1

webbrowserとは、chromeやIEではなく、VBで作成されたオブジェクトを意味します。ブラウザがページの閲覧に使用するプロキシを変更するにはどうすればよいですか?

4

2 に答える 2

1

This look promising. http://www.pinvoke.net/default.aspx/wininet/InternetSetOption.html?diff=y

于 2012-08-14T14:31:45.937 に答える
1

インターネットのC#であなたの質問の解決策を見つけたので、これは私が提案できるVBバージョンです。System.Runtime.InteropServicesをインポートすることを確認してください。

<Runtime.InteropServices.DllImport("wininet.dll", SetLastError:=True)> _
         Private Shared Function InternetSetOption(ByVal hInternet As IntPtr, ByVal dwOption As Integer, ByVal lpBuffer As IntPtr, ByVal lpdwBufferLength As Integer) As Boolean
                End Function

                Public Structure Struct_INTERNET_PROXY_INFO
                        Public dwAccessType As Integer
                        Public proxy As IntPtr
                        Public proxyBypass As IntPtr
                End Structure

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

                        Dim struct_IPI As Struct_INTERNET_PROXY_INFO

                        ' Filling in structure
                        struct_IPI.dwAccessType = INTERNET_OPEN_TYPE_PROXY
                        struct_IPI.proxy = Marshal.StringToHGlobalAnsi(strProxy)
                        struct_IPI.proxyBypass = Marshal.StringToHGlobalAnsi("local")

                        ' Allocating memory
                        Dim intptrStruct As IntPtr = Marshal.AllocCoTaskMem(Marshal.SizeOf(struct_IPI))

                        ' Converting structure to IntPtr
                        Marshal.StructureToPtr(struct_IPI, intptrStruct, True)

                        Dim iReturn As Boolean = InternetSetOption(IntPtr.Zero, INTERNET_OPTION_PROXY, intptrStruct, System.Runtime.InteropServices.Marshal.SizeOf(struct_IPI))
     End Sub
于 2012-08-29T06:31:22.207 に答える