Что нового

Изменить настройки проски

DanSaratov

Новичок
Сообщения
112
Репутация
1
Пишу в реестр данные о прокси.
Код:
$proxy = '112.16.76.188:8080'
RegWrite('HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings','ProxyEnable','REG_DWORD','00000001')
RegWrite('HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings','ProxyServer','REG_SZ',$proxy)

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

Панель управления->Свойства обозревателя->Настройка прокси-сервера->Моё подключение к интернету->Настройка

С чем это может быть связано?
 
Автор
DanSaratov

DanSaratov

Новичок
Сообщения
112
Репутация
1
Никто не поможет?


Добавлено:
Сообщение автоматически объединено:

Нашёл реализацию на Delphi
Код:
begin
InternetSetOption(0, INTERNET_OPTION_SETTINGS_CHANGED, 0, 0); 
InternetSetOption(0, INTERNET_OPTION_REFRESH, 0, 0); 
end
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
UDF: WinINet.au3

Код:
_WinINet_InternetSetOption
 
Автор
DanSaratov

DanSaratov

Новичок
Сообщения
112
Репутация
1
Данные слетают после выполнения функции _WinINet_InternetSetOption
Делаю так:
Код:
$hIntenet = _WinINet_InternetOpen()
$r1 = _WinINet_InternetSetOption($hIntenet ,$INTERNET_OPTION_SETTINGS_CHANGED ,0)
$r2 = _WinINet_InternetSetOption($hIntenet ,$INTERNET_OPTION_REFRESH,0)



Добавлено:
Сообщение автоматически объединено:

Нашёл это:
http://autoit-script.ru/index.php?topic=12106.0
Код:
DllCall('wininet.dll', 'int', 'InternetSetOption', 'none', 'null', 'int', 39, 'none', 'null', 'int', 0);INTERNET_OPTION_SETTINGS_CHANGED
        DllCall('wininet.dll', 'int', 'InternetSetOption', 'none', 'null', 'int', 37, 'none', 'null', 'int', 0);INTERNET_OPTION_REFRESH


Не помогает.


Добавлено:
Сообщение автоматически объединено:

Нашёл другой ключ в реестре куда нужно писать.

Код:
func setproxy($flag, $proxy='')
	if $flag = 0 Then
		$dt = '0x46000000000000000' & 0 & '00000020000000'
	elseif $flag = 1 Then
		$dt = StringToBinary($proxy,0)
$dt = StringRight($dt,StringLen($dt)-2)
$dt = '0x46000000000000000' & 3 & '00000020000000' & $dt
EndIf
RegWrite('HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections','Dom.tv','REG_BINARY',$dt)
DllCall('wininet.dll', 'int', 'InternetSetOption', 'none', 'null', 'int', 39, 'none', 'null', 'int', 0);INTERNET_OPTION_SETTINGS_CHANGED
DllCall('wininet.dll', 'int', 'InternetSetOption', 'none', 'null', 'int', 37, 'none', 'null', 'int', 0);INTERNET_OPTION_REFRESH
EndFunc
 
Верх