1

Тема: AHK: Включение прокси сервера

Здравствуйте, помогите пожалуйста. Как включить прокси посредствам AutoHotKey?
Пробовал заменять данные в реестре, не помогло.
Надеюсь на вашу помощь.

2

Re: AHK: Включение прокси сервера

tuma4ok,

1) Правильно ли я понял - Речь о включении настройки, отвечающей за использование браузерами прокси-сервера ? Или же всё-таки мы говорим о написании своего прокси сервера на AutoHotKey ?

2) Можно взглянуть на код с которым Вы работаете ?

3) Конечную задачу узнать можно ? Предполагаю, что есть альтернативные более простые решения.

Передумал переделывать мир. Пашет и так, ну и ладно. Сделаю лучше свой !

3

Re: AHK: Включение прокси сервера

Xameleon,
1) Мне как бы нужно поставить вот тут галочку
http://i.imgur.com/mTpbhM2.png
2) Вот я пробовал вот так.

Regwrite, REG_DWORD, HKEY_CURRENT_USER, Software\Microsoft\Windows\CurrentVersion\Internet Settings,ProxyEnable,1

3) Конечная задача: Включение и отключение прокси очень быстро.
Ну, кажется ответил на все вопросы:).

4

Re: AHK: Включение прокси сервера

tuma4ok,

Мне как бы нужно поставить вот тут галочку

1) Дело в том, что IE, как и многие другие браузеры "цепляют" настройки из реестра в момент своей первой загрузки. А это значит, что пока браузер не будет перезапущен, об изменениях в реестре он не узнает.

2) Есть API которыми можно управлять уже запущенными экземплярами браузера Internet Explorer. Но тут придётся повозиться.

3) Есть варианты поднять на своём ПК прокси сервер, который можно перенаправить на нужный прокси и перезапускать его. Но ИМХО коряво как-то.

4)

tuma4ok пишет:

Конечная задача: Включение и отключение прокси очень быстро.

Именно поэтому и уточнял конечную задачу. Всё дело в неправильности понимания конечной задачи. Опять же уточняю "Вы не включаете и выключаете прокси сервер", а "включаете и выключаете настройку ИСПОЛЬЗОВАНИЯ прокси сервера для браузера(ов)". Смысл моего уточнения - не придраться к словам, а пояснить, что сам подход (на мой взгляд) не верен. Так как это косвенная настройка. Есть объекты XMLHTTP / WinHttpRequest, которые имеют метод для выбора желаемого прокси-сервера (SetProxy) для обмена. И срабатывают они мгновенно. Но возможности этих объектов отличаются от движка Internet Explorer-а и т.п.

Поэтому опять же вопрос - какая конечная задача ? (Для чего "БЫСТРО меняем прокси сервер") ?

P.S Попахивает брут атакой конечно, но всё же интересно. )

Передумал переделывать мир. Пашет и так, ну и ладно. Сделаю лучше свой !

5

Re: AHK: Включение прокси сервера

На 1 сайте, мой основной IP адрес заблокирован. И для того что бы там оставить комментарий мне приходится подключать прокси. А каждый раз это делать не удобно. По этому мне нужно БЫСТРО ПОДКЛЮЧИТЬ ПРОКСИ, оставить комментарий, а потом БЫСТРО ОТКЛЮЧИТЬ прокси. Ну как-то так объяснил:).

6

Re: AHK: Включение прокси сервера

По-моему, в самом браузере должна быть возможность изменения настроек proxy "на лету".
По крайней мере, в Опере имеет такая особенность (F12).

7

Re: AHK: Включение прокси сервера

tuma4ok, боюсь руководство не одобрит обсуждение тем такого характера. Так как это некоторым образом противоречит пункту правил 2.9. И я это поддерживаю. Раз Вас заблокировали на том сайте, то на это были причины ? Предполагаю, что да. Попытка обойти эти ограничения, это нарушение правил поведения на форуме.

Передумал переделывать мир. Пашет и так, ну и ладно. Сделаю лучше свой !

8

Re: AHK: Включение прокси сервера

Xameleon пишет:

tuma4ok, боюсь руководство не одобрит обсуждение тем такого характера. Так как это некоторым образом противоречит пункту правил 2.9. И я это поддерживаю. Раз Вас заблокировали на том сайте, то на это были причины ? Предполагаю, что да. Попытка обойти эти ограничения, это нарушение правил поведения на форуме.

На том форуме меня не забанили. С моим аккаунтом все хорошо. Просто, вероятнее всего, кого-то из моей страны заблокировали и забанили подсеть провайдера. Я несколько раз менял IP адрес, но все равно не мог оставлять комментарии.

9

Re: AHK: Включение прокси сервера

А зачем тогда переключаться туда-сюда? Просто открываешь параллельно другой браузер, в котором настроен прокси-сервер.

10 (изменено: Malcev, 2014-09-22 23:37:05)

Re: AHK: Включение прокси сервера

1) Дело в том, что IE, как и многие другие браузеры "цепляют" настройки из реестра в момент своей первой загрузки. А это значит, что пока браузер не будет перезапущен, об изменениях в реестре он не узнает.

А разве так нельзя?

SID := GetUserSID()
Regwrite, REG_DWORD, HKEY_USERS, %SID%\Software\Microsoft\Windows\CurrentVersion\Internet Settings,ProxyEnable,1
return

GetUserSID() {
Loop, HKEY_CURRENT_USER
    , Software\Microsoft\Protected Storage System Provider, 2
  Return A_LoopRegName
}

11

Re: AHK: Включение прокси сервера

Спасибо всем за ответы. Решил проблему установкой расширения для браузера.

12

Re: AHK: Включение прокси сервера

Malcev,

Malcev пишет:

А разве так нельзя?

Не понял. А это каким-то образом меняет ситуацию с перезапуском браузера ? И к тому же зачем считывать SID пользователя если раздел HKCU и так ссылается на текущего юзера ?

Ради интереса проверил "шаманство", но увидел логичный результат - в запущенном IE ничего не меняется при выполнении этого кода.

Передумал переделывать мир. Пашет и так, ну и ладно. Сделаю лучше свой !

13

Re: AHK: Включение прокси сервера

У меня меняется без перезапуска броузера.
В Internet Options->Connections->Lan settings-> Use a proxy server появляется галочка.
Как я понял, этого и хотел добиться топикстартер.

14

Re: AHK: Включение прокси сервера

Malcev, а какой у Вас браузер, позвольте полюбопытствовать ?

Передумал переделывать мир. Пашет и так, ну и ладно. Сделаю лучше свой !

15 (изменено: Malcev, 2014-09-23 11:55:15)

Re: AHK: Включение прокси сервера

IE11.
Но у меня срабатывает и этот код:

Regwrite, REG_DWORD, HKEY_CURRENT_USER, Software\Microsoft\Windows\CurrentVersion\Internet Settings,ProxyEnable,1

Только не моментально.
Может IE обращается к реестру через какой-то промежуток времени?

Ну или так:

SetKeyDelay, -1
Run rundll32.exe shell32.dll`,Control_RunDLL inetcpl.cpl`,`, 4
SendInput, !{vk4C}     ; l
WinWait, Local Area Network (LAN) Settings
SendInput, !{vk58}{enter}{esc}     ;   x

16

Re: AHK: Включение прокси сервера

Malcev, проверил. Действительно, через некоторое время настройка появляется. Значит IE периодически выполняет проверку реестра. Но тем не менее полагаться на это, а тем более подсовывать настройки через нажатия клавиш, я бы не стал потому что:
1) Медленно
2) Ненадёжно и может нарушить работу других программ из-за "промаха" мимо окна.
3) Неизвестно как остальные браузеры отрабатывают такую ситуацию + даже ранние версии IE были без периодической проверки.

Передумал переделывать мир. Пашет и так, ну и ладно. Сделаю лучше свой !

17

Re: AHK: Включение прокси сервера

1) Медленно

Согласен.

2) Ненадёжно и может нарушить работу других программ из-за "промаха" мимо окна.

Если хочется перестраховаться, то можно слать controlclick.

SetControlDelay, -1
Run rundll32.exe shell32.dll`,Control_RunDLL inetcpl.cpl`,`, 4
WinWait, Internet Properties
ControlClick, &LAN settings, Internet Properties
WinWait, Local Area Network (LAN) Settings
ControlClick, Use a pro&xy server for your LAN (These settings will not apply to dial-up or VPN connections)., Local Area Network (LAN) Settings
ControlClick, OK, Local Area Network (LAN) Settings
WinWaitClose, Local Area Network (LAN) Settings
ControlClick, OK, Internet Properties
WinWaitClose, Internet Properties
return

18

Re: AHK: Включение прокси сервера

1) Медленно

Не особо в теме, просто вспомнил, про:

EnvUpdate

Возможно поможет.

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

19

Re: AHK: Включение прокси сервера

Не помогает.

20

Re: AHK: Включение прокси сервера

Вот такой код скомпоновал, который моментально переключает прокси серверы.
Проверял в Internet Options Connections Lan Settings.
Вопрос: как проверить его дееспособность?
Цель зайти под другим айпи на сайт и чтобы сайту была отправлена информация, что я захожу с подмененного айпи.
Прокси сервер мой собственный, нигде не засвеченный.

f9::
setproxy()
return

f10::
setproxy("91.188.39.232:8888")
return

f11::
setproxy("80.232.241.130:7778")
return


setproxy(address = "")
{
   if (address = "") and (regread("HKCU","Software\Microsoft\Windows\CurrentVersion\Internet Settings","Proxyenable") = 0)
      return
   else if (address = "") and (regread("HKCU","Software\Microsoft\Windows\CurrentVersion\Internet Settings","Proxyenable") = 1)
      regwrite,REG_DWORD,HKCU,Software\Microsoft\Windows\CurrentVersion\Internet Settings,Proxyenable,0
   else
   {
      if regread("HKCU","Software\Microsoft\Windows\CurrentVersion\Internet Settings","Proxyenable") = 0
         regwrite,REG_DWORD,HKCU,Software\Microsoft\Windows\CurrentVersion\Internet Settings,Proxyenable,1
      regwrite,REG_SZ,HKCU,Software\Microsoft\Windows\CurrentVersion\Internet Settings,ProxyServer, %address%
   }
  dllcall("wininet\InternetSetOptionW","int","0","int","39","int","0","int","0")
  dllcall("wininet\InternetSetOptionW","int","0","int","37","int","0","int","0")
  return
}

RegRead(RootKey, SubKey, ValueName = "")
{
   RegRead, v, %RootKey%, %SubKey%, %ValueName%
   Return, v
}

21

Re: AHK: Включение прокси сервера

Есть же сайты, позволяющие узнать, с какого айпи вы зашли. Например, www.myip.ru.

22

Re: AHK: Включение прокси сервера

Хотя нет, конкретно этот что-то перестал работать, но и другие были.

23

Re: AHK: Включение прокси сервера

То есть сайт увидит ту же инфу, что и этот сайт?
http://www.whatismyip.com/
Никаких хитростей и хуков они не могут использовать у себя на сервере?

24

Re: AHK: Включение прокси сервера

Насколько помню где-то читанное, сам прокси-сервер должен сообщить о подмене, иначе не узнают.

25

Re: AHK: Включение прокси сервера

Вот, что нашел - все показывает:
http://whoer.net/extended

26

Re: AHK: Включение прокси сервера

Вот хорошая утилитка:
http://3proxy.ru/download/
Прописываем в конфигурационный файл:

proxy -a

И заголовки, что был использован прокси - подчищаются.

27

Re: AHK: Включение прокси сервера

Malcev попробовал с 20 поста, интернет отключает, проксю не цепляет. Возможно код не актуален, или я что не так делаю. Как решил вопрос, не просвятишь?

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

28

Re: AHK: Включение прокси сервера

У меня код с 20 поста в IE работает.
Может прокси нерабочие?

29 (изменено: serzh82saratov, 2017-01-04 11:05:48)

Re: AHK: Включение прокси сервера

Нет, оказалось у меня к IP требуется добавлять тип

https=108.166.171.198:80

, или у меня какой настройки авто определения типа не хватает?

А не пробовал прокси отдельно для копии IE (ком объекта), и Скайпа?

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

30 (изменено: Malcev, 2017-01-04 17:05:29)

Re: AHK: Включение прокси сервера

оказалось у меня к IP требуется добавлять тип

Наверное у тебя не стоит галочка use the same proxy for all protocols.
http://lh3.ggpht.com/-qVOPbeQ4yN8/TzyUcRUJMBI/AAAAAAAAFzU/7zSzPdgrR74/How-To-Individually-Change-Proxy-Server-For-Different-Internet-Browser-%252526-How-To-Get-Free-Proxy--%252528Chrome-Internet-Explorer-Safari%252529-1-%2525283%252529%25255B2%25255D.png?imgmax=800

А не пробовал прокси отдельно для копии IE (ком объекта), и Скайпа?

Через реестр наверное можно.
Надо создать ветвь:

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Skype\Phone

И изменять параметры ProxySetting, ProxyAddress.
26 стр.
https://download.skype.com/share/busine … -guide.pdf

31

Re: AHK: Включение прокси сервера

Malcev пишет:

Наверное у тебя не стоит галочка use the same proxy for all protocols.

Да, сделал, работает.

http=%ip%;https=%ip%;socks=%ip%

С галочкой вроде socks не устанавливаются.

Malcev пишет:

Через реестр наверное можно.

Спасибо, будет полезно.
Видел некоторые проги вроде дают назначить прокси по процессу. Видимо определяют на каких портах сидит процесс, типа netstat, и как то их перенаправляют...

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

32

Re: AHK: Включение прокси сервера

Кстати не подскажешь как лучше проверить прокси, через браузер например на 2ip.ru определяет новый айпи, а этот код в тоже время возвращает старый:

MsgBox % GetPublicIP()

GetPublicIP() {
    HttpObj := ComObjCreate("WinHttp.WinHttpRequest.5.1")
	Url = https://2ip.ru/ 
    HttpObj.Open("GET", Url) 
    HttpObj.Send()
    RegexMatch(HttpObj.ResponseText,"Ваш IP адрес:.*>([\d\.]+)</big>", match)  
    Return match1
}
По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

33 (изменено: Malcev, 2017-01-04 18:23:28)

Re: AHK: Включение прокси сервера

WinHttp.WinHttpRequest.5.1 не читает настроек IE.
Ему нужно отдельно прописывать:

HttpObj.SetProxy(2, "YourProxy")

А вот Msxml2.XMLHTTP читает.
Вот неплохой ликбез:
https://habrahabr.ru/post/190396/

34

Re: AHK: Включение прокси сервера

Malcev пишет:

А вот Msxml2.XMLHTTP читает.

Ага, этот работает.

GetPublicIP() {
    HttpObj := ComObjCreate("Msxml2.XMLHTTP")
	Url = https://2ip.ru/ 
    HttpObj.Open("GET", Url, 1)
    HttpObj.Send()
	While HttpObj.readyState != 4
		Sleep 100
	RegexMatch(HttpObj.responseText,"Ваш IP адрес:.*>([\d\.]+)</big>", match)  
    Return match1
}

Минусы прокси-серверов:
***
необходимость настройки прокси-сервера для каждого приложения либо использование отдельных программ-соксификаторов, например, Proxifier.

Вообщем что прокси не для всех программ (соединений), то есть для каждого приложения надо настраивать каким то своим путём, одному в реестр записать, а другому неизвестно что и куда...

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

35

Re: AHK: Включение прокси сервера

Malcev пишет:

HttpObj.SetProxy(2, "YourProxy")

такая конструкция поддерживает только HTTP/HTTPS, а как использовать Socks proxy?

36 (изменено: Malcev, 2018-06-17 07:18:08)

Re: AHK: Включение прокси сервера

WinHttpRequest, не работает с Socks proxy.
Если нужен socks4 используйте Msxml2.XMLHTTP либо wininet.
Если выше, то можно через мост, типа Privoxy.

37

Re: AHK: Включение прокси сервера

Malcev пишет:

WinHttpRequest, не работает с Socks proxy.
Если нужен socks4 используйте Msxml2.XMLHTTP либо wininet.
Если выше, то можно через мост, типа Privoxy.

попробовал MSXML2.ServerXMLHTTP, не получается подключить socks. Или нужно использовать именно Msxml2.XMLHTTP? Либо я их неправильно подключаю. Будьте добры, черканите команду как ahk поженить с socks

38

Re: AHK: Включение прокси сервера

Насчет сервера не пробовал.
Лень повторно писать, в этой теме всё расписано.
В 20 соообщении - как вписать прокси через реестр и обновить IE.
Что именно писать вы можете посмотреть сами изменив в IE настройки socks прокси и посмотрев, что написано в реестре.
А Msxml2.XMLHTTP берет настройки с IE.

39

Re: AHK: Включение прокси сервера

Malcev пишет:

Насчет сервера не пробовал.
Лень повторно писать, в этой теме всё расписано.
В 20 соообщении - как вписать прокси через реестр и обновить IE.
Что именно писать вы можете посмотреть сами изменив в IE настройки socks прокси и посмотрев, что написано в реестре.
А Msxml2.XMLHTTP берет настройки с IE.

там только  в один поток получится что можно работать, а мне хотелось бы сделать чтобы каждый поток работал со своим ip. программа работает запросами, не использует internet explorer

40

Re: AHK: Включение прокси сервера

777graf777 пишет:

программа работает запросами, не использует internet explorer

Тогда спрашивайте у авторов программы.
Если хотите в несколько потоков работать - пробуйте winhttprequest + мост, типа Privoxy.

41

Re: AHK: Включение прокси сервера

Malcev пишет:
777graf777 пишет:

программа работает запросами, не использует internet explorer

Тогда спрашивайте у авторов программы.
Если хотите в несколько потоков работать - пробуйте winhttprequest + мост, типа Privoxy.

в том то и дело, что я сам автор программы. используя privoxy  я не смогу ведь менять айпи автоматизированно? или это тоже можно делать через реестр?

42

Re: AHK: Включение прокси сервера

Winhttprequest не использует настройки IE.
Вы Winhttprequest перенаправляете в privoxy, а в нем уже можно вроде автоматизировать выдачу прокси.
Сам я не пробовал. Нужно читать документацию.