Hello,
I work with application compatibility on Vista and Windows 7.

I noticed the more recent releases of PSPad are internally security manifested
"asInvoker"

I was wondering why this was done?  The only think I could think of was to
disable Vista's on the fly virtualization?

I wanted to point out a couple things I discovered with this change to the
internal manifest:

*) by disabling on the fly virtualization, PS pad stops saving it's settings
when it otherwise would virtualize them when running under a restricted admin
token (admin with UAC on).  Many corporations will not be turning UAC off (Vista
or Windows 7) so developers in these environments don't have the option to
change this.  Also, if someone has disabled UAC, they should have their full
admin token so Vista/Win7 it won't virtualize anything anyway.

*) I like to run PS pad with admin permissions each time it launches.  This is
possible by using the "Compatibility" tab in the shortcut.  However, this does
not work with PS Pad's context menu because it uses a DLL to launch PSPad (in
fact it breaks it).  So with a some guidance from Microsoft I used the
compatibility toolkit to add the "RelaunchElevated" shim on pspad.exe.  However
it turns out that the internal manifest overrides this shim.  Once I remove the
internal manifest - elevation works fine, event with PSPad's native context
menu.

Would be interested in the reasons for the internal security manifest.

Also, I can provide the compatibility shim and instructions for installing it -
you could have an option in your setup (and possibly your configuration menus)
that asks whether to always launch admin permissions and if so, simply install
the shim.  This would make your shell DLL work with elevation with no code
changes.  Due to the nature of how the Windows shim infrastructure works, this
should also work unmodified for Windows 7.

Thanks,
D.

-- 
<http://forum.pspad.com/read.php?4,48095,48095>
PSPad freeware editor http://www.pspad.com

Odpovedet emailem