use strict; use warnings; use Win32::TieRegistry( Delimiter=>"/", ArrayValues=>0 ); use Win32::API; #proxy in IE is disabled now my $regpath = 'HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Internet Settings/'; my $penable = $regpath . 'ProxyEnable'; $Registry->{$penable}= '0x00000001'; print my $pe = $Registry->{$penable}; #prints '0x00000001', so value is stored my $InternetSetOption = Win32::API->new("wininet", "InternetSetOption", [qw(N N N N)], 'N'); $InternetSetOption->Call(0, 39, 0, 0) || die "$!\n"; $InternetSetOption->Call(0, 37, 0, 0) || die "$!\n"; #### resources I've found: [1] http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wininet/wininet/internetsetoption.asp [2] http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wininet/wininet/option_flags.asp [3] http://aspn.activestate.com/ASPN/Mail/Message/pdk/1739515 [4] http://www.codeproject.com/internet/changeproxy1.asp