Автор Тема: [Окна, Диалоги] Включение/Отключение прокси в настройках Win 7. Получение значения CheckBox'a  (Прочитано 178057 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн steinebel [?]

  • Новичок
  • *
  • Сообщений: 1
  • Репутация: 0
  • Пол: Мужской
    • Награды
Всем привет. Это мой второй скрипт. С первым, я успешно справился сам. (Он 5 раз подряд открывал и закрывал CDRom  :D).

А вот во втором скрипте, я пытаюсь включать/отключать проксю в ссылка:http://habreffect.ru/files/4de/81f0100ea/proxy.png [nonactive] Win 7 (по ссылке скрин, с окнами которые задействую, кроме первого окна, его встаивл чтобы понять о чем речь).

Вот как я пытаюсь решить задачу (можно ржать и бросать тухлыми яйцами, потому что делаю в лоб, как могу корпя над мануалом и рыская по форуму):

Листинг
Код: AutoIt [Выделить]
;Let's find Internet Options on Win 7 from Start Menu

;Open Start menu
Send("{LWIN}")
Sleep(500)

;Find Internet Options menu, and wait it
Send("Internet Options{Enter}")
WinWaitActive("Свойства: Internet")

;Move to proper tab (Connections)
Send("^{TAB 4}")
Sleep(500)

;Alt+L to choose LAN Settings Button
Send("!l")
WinWaitActive("Local Area Network (LAN) Settings")

;Move to Proxy ChekBox
Send("{TAB 2}");

;Enable|Disable proxy
Send("{Space}")

;Save&Exit
Send("{Enter}")
Send("{Esc}")
 


Все сводится к тому, что мне надо проверить и включить проксю, если она выключена. Я пытался ставить флажок с помощью ControlEnable, но так и не понял ее работу

Собственно вопрос:
Как получить значение чекбокса или другими словами проверить включена/выключена ли прокся и если да/нет, то выключить/включить ее?

p.s. Пинки за кривой и не оптимальный код приветствуются, ровно как и наставления по оптимизации!

Русское сообщество AutoIt


Оффлайн zlo-kazan [?]

  • Скриптер
  • ****
  • Сообщений: 374
  • Репутация: 100
  • Пол: Мужской
    • Награды
 :rofl:
А вот как делают try-пацаны

(нажмите для показа/скрытия)

Код: AutoIt [Выделить]
If RegRead("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings", "ProxyEnable")=0 then
msgbox(0,"","нет галочки на использовать Proxy-сервер")
else
msgbox(0,"","Есть галочка на использовать Proxy-сервер")
endif
 

« Последнее редактирование: Апрель 22, 2011, 18:48:02 от zlo-kazan »

Оффлайн VladUs [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 621
  • Репутация: 180
  • Пол: Мужской
    • Награды
Код: AutoIt [Выделить]
;Задать Proxy

$Port  =  "8080"
$ProxyServer = "MyProxy.ru"

$objWMIService = ObjGet("winmgmts:\\" & "localhost" & "\root\CIMV2")
$objShare = $objWMIService.Get("Win32_Proxy.ServerName='Localhost'")

$objInParam = $objShare.Methods_("SetProxySetting").inParameters.SpawnInstance_()
$objInParam.Properties_.Item("ProxyPortNumber") =  $Port
$objInParam.Properties_.Item("ProxyServer") =  $ProxyServer

$objOutParams = $objWMIService.ExecMethod("Win32_Proxy.ServerName='Localhost'", "SetProxySetting", $objInParam)

;Получить Proxy

$objWMIService = ObjGet("winmgmts:\\" & "localhost" & "\root\CIMV2")
$colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_Proxy")
For $objItem in $colItems
   
$ProxyPort =   $objItem.ProxyPortNumber
$ProxyServer =  $objItem.ProxyServer
 
If $ProxyPort <> "" Or $ProxyServer <> "" Then
    MsgBox(1, "Параметры  Proxy", "ProxyPort: " & $ProxyPort & @CRLF & "ProxyServer: "  & $ProxyServer)
Else
    MsgBox(1, "Параметры  Proxy", "Proxy не настроен")
EndIf

Next

« Последнее редактирование: Апрель 23, 2011, 17:55:48 от VladUs »
Делай что должен и  будь что будет

Оффлайн Astel064 [?]

  • Осваивающий
  • **
  • Сообщений: 227
  • Репутация: 36
  • Пол: Мужской
    • Astel064
    • Награды
  • Версия AutoIt: 3.3.6.1
А есть способ отключить прокси?

Русское сообщество AutoIt


Оффлайн sngr [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 843
  • Репутация: 349
    • Награды
  • Версия AutoIt: 3.3.8.1
Код: AutoIt [Выделить]
$Port  =  " "
$ProxyServer = " "

так отключаешь.

Оффлайн Astel064 [?]

  • Осваивающий
  • **
  • Сообщений: 227
  • Репутация: 36
  • Пол: Мужской
    • Astel064
    • Награды
  • Версия AutoIt: 3.3.6.1
Цитировать
Код: AutoIt [Выделить]
$Port  =  " "
$ProxyServer = " "

так отключаешь.
Прокси в настройках обозревателя не отключается, а меняется на пробельные символы. Есть вариант отключить, а не перезаписать?

Если сделать так:
Код: AutoIt [Выделить]
$Port  =  ""
$ProxyServer = ""

, то вылазиет ошибка...

Русское сообщество AutoIt


 

Похожие темы

  Тема / Автор Ответов Последний ответ
23 Ответов
12384 Просмотров
Последний ответ Октябрь 21, 2011, 23:35:52
от tctdllreg
1 Ответов
2657 Просмотров
Последний ответ Декабрь 27, 2011, 17:34:51
от madmasles
2 Ответов
2441 Просмотров
Последний ответ Август 25, 2012, 17:16:58
от Dimmak
8 Ответов
2589 Просмотров
Последний ответ Ноябрь 09, 2012, 15:48:16
от Booster
2 Ответов
2081 Просмотров
Последний ответ Ноябрь 16, 2012, 19:26:49
от [email protected] Rasta
0 Ответов
1067 Просмотров
Последний ответ Январь 11, 2015, 12:36:27
от kent-34
13 Ответов
1566 Просмотров
Последний ответ Ноябрь 19, 2016, 18:48:36
от InnI
0 Ответов
478 Просмотров
Последний ответ Январь 30, 2017, 14:19:26
от in-com
3 Ответов
377 Просмотров
Последний ответ Май 12, 2017, 21:21:30
от CreatoR
0 Ответов
201 Просмотров
Последний ответ Май 25, 2017, 12:02:24
от musicstashall