View Single Post
  #22  
Old November 2nd 11, 03:29 PM posted to microsoft.public.win98.gen_discussion,microsoft.public.windowsxp.general,alt.windows7.general
Dave \Crash\ Dummy
external usenet poster
 
Posts: 2
Default Tool to fix IE nags and restrictions

Mayayana wrote:
| One option that I don't see immediately available is making Zone 0
| settings visible. Do you have any clues?

That's in there, under the misc. settings, near the bottom. But in my
experience there's a bug or change in Windows 7. It works with IE5-8
on XP. I haven't tested on Vista. When I try it with IE8 on Win7 I
find that it makes the computer icon visible for the local zone, but
it doesn't work when clicked!

Also see the "Setting Security Options" window. You probably already
know about this, but Zone 0 is normally overridden by Local Machine
Lockdown. It can also be overridden by Group Policy settings. And in
some cases it's overriden by HKLM settings. Yet in all cases, what
you see on the Security tab is only your own HKCU settings coming
from:

HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Internet
Settings\Zones\0

So even accessing the Security tab settings for Zone 0 is a mixed
blessing.

It's all explained in the "Setting Security Options" window. There's
also a utility there to change all 8 possible settings at once. (The
visible one plus the other 7 that could be the values actually in
effect.) IE settings have become so convoluted that I decided it was
easiest to just write my scripts to change any security zone value in
all 8 possible locations.

The 8-setting function might also be useful as template code, but
it's a bit tricky to work it out. For convenience the functions use a
simple Registry class, which itself wraps a more involved Registry
class that uses the WMI StdRegProv. (StdRegProv is so poorly designed
that I like to keep at least 1 class interface between my code and
the StdRegProv functions.

When you click the button for the 8-value setting it calls
ButSetSec_click. That calls SetIESecVal8 in the main class. That
calls SetIESecurityValue in the IERegFuncs class, which calls
Registry functions in the WMI class. SetIESecurityValue demonstrates
the basic operation.

I'm glad you asked about that. I just found a typo that would cause
the 8-value setting to fail. Where it was like this:

Public Sub SetIESecVal8(sVal, iVal, sZone, DType) SetIESecurityValue
sVal, iVal, sZone, DataType End Sub

when it should have been like this:

Public Sub SetIESecVal8(sVal, iVal, sZone, DType)
CReg.SetIESecurityValue sVal, iVal, sZone, DataType End Sub

( I've been searching for typos and bugs for days, but it's a big
code base and I missed that one. An updated version has been
uploaded.)


Yes, I should have specified. I mean for IE8 on Windows 7. The fixes
that worked with IE6 on Windows 2000 don't work here. This has been less
of a problem for me with the availability of HTA, which is like a local
HTM zone with NO restrictions!
--
Crash

Committed to the search for intraterrestrial intelligence.