Форум: "Сети";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2003.05.01;
Скачать: [xml.tar.bz2];




Вниз

свойства обозревателя 


ga3   (2003-03-06 03:51) [0]

добрый вечер. может быть ктото знает как с помощью функции InternetSetOption установить прокси-сервер в свойствах обозревателя, поделитесь плиз куском кода. вот здесь: http://msdn.microsoft.com/library/en-us/wininet/wininet/setting_and_retrieving_internet_options.asp есть пример, но он на Си, а этого языка я не знаю вообще. помогите плиз.



int64   (2003-03-06 11:17) [1]

Проблема не в переводе. Логика как-раз примитивная:
1. Объявляется переменная list.
2. Заполняются её поля, как тебе надо.
3. InternetSetOption(..., @list, sizeof(list));

Проблема в том, что структура list и типы с константами для заполнения не описаны в Delphi (или описаны под другими именами). Не хочется разбираться. Легче поискать готовые решения. Они и здесь проскальзывали.

Для решения проблемы могу предложить альтернативный метод. Лобовой и примитивный. Связанный с непосредственным редактированием реестра.


uses ..., WinInet, Registry;
...
Procedure EnableProxy(cost Server: String);
var
Reg : TRegistry;
begin
Reg := TRegistry.Create;
Reg.OpenKey("Software\Microsoft\Windows\CurrentVersion\Internet Settings",False);
Reg.WriteString("ProxyServer",Server);
Reg.WriteBool("ProxyEnable,True);
Reg.CloseKey;
Reg.Free;
InternetSetOption(0, INTERNET_OPTION_SETTINGS_CHANGED, 0, 0);
end;

Procedure DisableProxy;
var
Reg : TRegistry;
begin
Reg := TRegistry.Create;
Reg.OpenKey("Software\Microsoft\Windows\CurrentVersion\Internet Settings",False);
Reg.WriteBool("ProxyEnable,False);
Reg.CloseKey;
Reg.Free;
InternetSetOption(0, INTERNET_OPTION_SETTINGS_CHANGED, 0, 0);
end;


Примеры:

EnableProxy("proxyserver:8080")
EnableProxy("ftp=ftpproxyserver:2121;gopher=goproxyserver:3333;http=httpproxyserver:8080;https=httpsproxyserver:8080");
EnableProxy("http=httpproxyserver:8080");


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



ga3   (2003-03-06 18:27) [2]

этот код действует только на директ коннекшен, при работе с диалап подключением ничего не меняется:-(



Anatoly Podgoretsky   (2003-03-06 18:43) [3]

То же самое, но только делать для каждого отдельного соединения, а вот в реестре они могут быть в разных местах, зависит от многих фауторов.
Правильный путь это все таки с помощью WinInet.dll но тебе тут мешает незнания языка к сожалению.



Anatoly Podgoretsky   (2003-03-06 18:46) [4]

Тебе может помочь описание на русском языке http://rsdn.ru/, но надо хорошо знать работу сети



ga3   (2003-03-06 21:09) [5]

2Anatoly Podgoretsky:
я там ничего нового не нашел, все это есть на мсдн.
вобщем проблема осталась... неужели никто не знает как в дельфях организовать все это дело? блин все обыскал нигде нету описания этих гребаных констант и типов для дельфи.



nikkie   (2003-03-06 23:18) [6]

такие вещи надо искать на http://www.delphi-jedi.org/
ftp://delphi-jedi.org/api/WinInet.zip



ga3   (2003-03-07 03:41) [7]

спасибо за ссылку. только вот одна маленькая проблемка:-)) после замены штатного wininet.pas на скачанный с типами и константами все решилось, но при компиляции появилось сообщение:
[Fatal Error] Project1.dpr(5): Unit ShlObj was compiled with a different version of WinInet.INTERNET_MAX_URL_LENGTH
во, бля:-)))
и че теперь делать не подскажете?



ga3   (2003-03-07 03:43) [8]

кстати, мож это изза кривизны моих рук и "инсталлировать" этот wininet нужно как-то по-другому? у меня Д6 если это критично.



ga3   (2003-03-07 05:44) [9]

ПАМАГИТЕ!!!




Форум: "Сети";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2003.05.01;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.74 MB
Время: 0.055 c
3-382             td                    2003-04-14 08:44  2003.05.01  
запрос не работает


1-529             Владимир5             2003-04-18 12:46  2003.05.01  
Шрифты в разных кодировках


14-701            NetBreaker666         2003-04-12 18:32  2003.05.01  
test


1-630             Мыш                   2003-04-18 17:25  2003.05.01  
Как изменить свойства формы из своего невизуального компонента


3-375             MicroWorld            2003-04-14 21:02  2003.05.01  
IB &Create Database