Using PowerShell, I can do:
$shell = new-object -com Shell.Application $shell.GetSetting(0x2)
Which correctly returns whether the shell shows extensions for known file types.
Note: see http://msdn.microsoft.com/en-us/library/gg537739(v=VS.85).aspx for a list of flag values ββthat can be passed to GetSetting.
Question I can get the values, but how would I change them? I looked at the Shell object model , but I just don't see a suitable method for this.
Inaccurate answer, but can you edit the registry?
For instance:
set-itemproperty -Name HideFileExt -Value 0 -path HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced