Internet Explorer Proxy Settings

I need to be able to programmatically change the proxy server values in internet explorer, for LAN,
and dialup.

I would prefer no registry hacks thanks! need that uses InternetSetOption ...

I say this only because of risk issues associated with corrupting peoples registries, I have heard some horror stories
about moding these particular settings in the registry...

Anyone got any code to do this using "InternetSetOption" api calls?

Thanks...

P.S. there is an artical here in C++ but I have no idea how to convert it :-)

http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/q226/4/73.asp&NoWebContent=1
LVL 1
NeXusAsked:
Who is Participating?
 
CetusMODCommented:
PAQed, with points refunded (500)

CetusMOD
Community Support Moderator
0
 
NeXusAuthor Commented:
Ok whacked it up some, points wise, I feel this is a tricky / undocumented area
0
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

 
NeXusAuthor Commented:

>_agi_ suggested http://www.vbip.com/wininet/wininet_connection_02.asp 
...  nothing here about proxies or here: http://www.vbip.com/wininet

>harris_c said: http://www-tcsn.experts-exchange.com/Programming/Programming_Languages/Visual_Basic/Q_20680780.html
... saw this yesterday,  but this doesnt compile under VB6! plus I need to set the option permanently.

500 points up for grabs here boys n gurls! come on down!!!

how about some code?

NeXus

0
 
_agj_Commented:
The first link is not a total zero, there is some general overview of the process, but nothing as to the SPECIFIC one.
0
 
NeXusAuthor Commented:
thanks, sure _agj_

but unfortunately nothing worth any points...
0
 
_agj_Commented:
Try (reuse this code):

Option Explicit

Private Type INTERNET_PROXY_INFO
    dwAccessType    As Long
    lpszProxy       As String
    lpszProxyBypass As String
End Type

Private Const ERROR_INSUFFICIENT_BUFFER = 122
Private Const INTERNET_OPTION_PROXY = 38
Private Const INTERNET_OPEN_TYPE_DIRECT = 1
Private Const INTERNET_OPEN_TYPE_PROXY = 3

Private Declare Function InternetSetOption Lib "wininet.dll" Alias "InternetSetOptionA" (ByVal hInternet As Long, ByVal dwOption As Long, ByRef lpBuffer As Any, ByVal dwBufferLength As Long) As Long

'On form add a command1 button


Private Sub Command1_Click()
   
    Dim iRet As Long
    Dim ProxyInfo As INTERNET_PROXY_INFO
   

        ProxyInfo.dwAccessType = INTERNET_OPEN_TYPE_PROXY
        ProxyInfo.lpszProxy = ("http=127.0.0.1:8080")
        ProxyInfo.lpszProxyBypass = "<local>"

   
    iRet = InternetSetOption(0&, INTERNET_OPTION_PROXY, ProxyInfo, LenB(ProxyInfo))
    '
    If iRet <> 0 Then
      MsgBox "Now Using Proxy Service.", vbInformation
        Else
      MsgBox "Error in Setting IE Proxy Service.", vbInformation
       End If
   
End Sub
0
 
_agj_Commented:
The difference is in some declarations added n changed.
0
 
NeXusAuthor Commented:
Sorry that didnt work,

That may have changed the proxy settings temporarily, but I need them to visually change (and persist) in the internet explorer settings.

Thanks for the effort
:-)
0
 
EDDYKTCommented:
0
 
EDDYKTCommented:
ooppps that is c++ code but you should get the idea
0
 
Richie_SimonettiIT OperationsCommented:
I think after you did the change to proxy setting should broadcast a message to the system to tell that it was... Changed.
0
 
NeXusAuthor Commented:
Not answered: get a refund thanks
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.