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
OS: Win7x64, AutoHotkey_L v1.1.24.04 (Unicode 32-bit).

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