資源簡(jiǎn)介
c# 設(shè)置ip代理,可自由切換代理IP,如果有代理IP列表...

代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?System.ComponentModel;
using?System.Linq;
using?System.Runtime.InteropServices;
using?System.Text;
namespace?test
{
????public?class?Proxies
????{
????????public?static?bool?UnsetProxy()
????????{
????????????return?SetProxy(null?null);
????????}
????????public?static?bool?SetProxy(string?strProxy)
????????{
????????????return?SetProxy(strProxy?null);
????????}
????????public?static?bool?SetProxy(string?strProxy?string?exceptions)
????????{
????????????InternetPerConnOptionList?list?=?new?InternetPerConnOptionList();
????????????int?optionCount?=?string.IsNullOrEmpty(strProxy)???1?:?(string.IsNullOrEmpty(exceptions)???2?:?3);
????????????InternetPerConnOption[]?options?=?new?InternetPerConnOption[optionCount];
????????????//not?use?or?use?proxy?server
????????????options[0].m_Option?=?PerConnOption.INTERNET_PER_CONN_FLAGS;
????????????options[0].m_Value.m_Int?=?(int)((optionCount?2)???PerConnFlags.PROXY_TYPE_DIRECT?:?(PerConnFlags.PROXY_TYPE_DIRECT?|?PerConnFlags.PROXY_TYPE_PROXY));
????????????//proxy?server
????????????if?(optionCount?>?1)
????????????{
????????????????options[1].m_Option?=?PerConnOption.INTERNET_PER_CONN_PROXY_SERVER;
????????????????options[1].m_Value.m_StringPtr?=?Marshal.StringToHGlobalAuto(strProxy);
????????????????//except?for?these?addresses?...
????????????????if?(optionCount?>?2)
????????????????{
????????????????????options[2].m_Option?=?PerConnOption.INTERNET_PER_CONN_PROXY_BYPASS;
????????????????????options[2].m_Value.m_StringPtr?=?Marshal.StringToHGlobalAuto(exceptions);
????????????????}
????????????}
????????????//?default?stuff
????????????list.dwSize?=?Marshal.SizeOf(list);
????????????list.pszConnection?=?IntPtr.Zero;
????????????list.dwOptionCount?=?options.Length;
????????????list.dwOptionerror?=?0;
????????????int?optSize?=?Marshal.SizeOf(typeof(InternetPerConnOption));
????????????//?make?a?pointer?out?of?all?that?...
????????????IntPtr?optionsPtr?=?Marshal.AllocCoTaskMem(optSize?*?options.Length);
????????????//?copy?the?array?over?into?that?spot?in?memory?...
????????????for?(int?j?=?0;?j?????????????{
????????????????IntPtr?opt?=?new?IntPtr(optionsPtr.ToInt32()?+?(j?*?optSize));
????????????????Marshal.StructureToPtr(options[j]?opt?false);
????????????}
????????????list.pOptions?=?optionsPtr;
????????????//?and?then?make?a?pointer?out?of?the?whole?list
????????????IntPtr?ipcoListPtr?=?Marshal.AllocCoTaskMem((Int32)list.dwSize);
????????????Marshal.StructureToPtr(list?ipcoListPtr?false);
????????????//?and?finally?call?the?API?method!
????????????int?returnvalue?=?NativeMethods.InternetSetOption(IntPtr.Zero
???????????????InternetOption.INTERNET_OPTION_PER_CONNECTION_OPTION
???????????????ipcoListPtr?list.dwSize)???-1?:?0;
????????????if?(returnvalue?==?0)
????????????{??//?get?the?error?codes?they?might?be?helpful
????????????????retur
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2017-05-03?16:09??test\
?????文件????????8108??2017-04-27?15:54??test\Class1.cs
?????文件????????4972??2017-05-02?15:33??test\Form1.Designer.cs
?????文件????????1520??2017-05-03?15:41??test\Form1.cs
?????文件????????5817??2017-05-02?15:33??test\Form1.resx
?????文件????????2022??2017-05-02?15:33??test\Form2.Designer.cs
?????文件????????1742??2017-05-02?16:17??test\Form2.cs
?????文件????????5817??2017-05-02?15:33??test\Form2.resx
?????文件?????????485??2017-04-27?14:44??test\Program.cs
?????目錄???????????0??2017-04-27?14:44??test\Properties\
?????文件????????1328??2017-04-27?14:44??test\Properties\AssemblyInfo.cs
?????文件????????2860??2017-04-27?14:44??test\Properties\Resources.Designer.cs
?????文件????????5612??2017-04-27?14:44??test\Properties\Resources.resx
?????文件????????1091??2017-04-27?14:44??test\Properties\Settings.Designer.cs
?????文件?????????249??2017-04-27?14:44??test\Properties\Settings.settings
?????目錄???????????0??2017-04-27?14:44??test\bin\
?????目錄???????????0??2017-05-02?11:50??test\bin\Debug\
?????文件???????27648??2015-08-18?16:24??test\bin\Debug\HttpHelper.dll
?????文件???????13824??2017-05-03?15:41??test\bin\Debug\test.exe
?????文件???????34304??2017-05-03?15:41??test\bin\Debug\test.pdb
?????文件???????22472??2017-05-03?15:56??test\bin\Debug\test.vshost.exe
?????文件?????????490??2010-03-17?22:39??test\bin\Debug\test.vshost.exe.manifest
?????文件????????8704??2017-05-02?15:22??test\bin\Debug\test1.exe
?????目錄???????????0??2017-04-27?14:44??test\obj\
?????目錄???????????0??2017-05-03?15:41??test\obj\Debug\
?????文件????????1451??2017-04-27?20:56??test\obj\Debug\DesignTimeResolveAssemblyReferences.cache
?????文件????????6969??2017-05-03?16:09??test\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
?????目錄???????????0??2018-02-26?17:22??test\obj\Debug\TempPE\
?????文件?????????180??2017-05-02?15:33??test\obj\Debug\test.Form1.resources
?????文件?????????180??2017-05-02?15:33??test\obj\Debug\test.Form2.resources
?????文件?????????180??2017-04-27?21:34??test\obj\Debug\test.Properties.Resources.resources
............此處省略38個(gè)文件信息
評(píng)論
共有 條評(píng)論