Here is some more information about the different execution levels:
asInvoker
The application runs with the same access token as the parent process.
Recommended for standard user applications. Do refractoring with
internal elevation points, as per the guidance provided earlier in
this do***ent.
highestAvailable
The application runs with the highest privileges the current user can
obtain.
Recommended for mixed-mode applications. Plan to refractor the
application in a future release.
requireAdministrator
The application runs only for administrators and requires that the
application be launched with the full access token of an
administrator.
Recommended for administrator only applications. Internal elevation
points are not needed. The application is already running elevated.
Note that the virtualization functionality only is active for unmarked
applications. An application with execution level "asInvoker" who
tries to write in c:\windows will fail.
About Vista installer detection;
Installer Detection only applies to:
1. 32-bit executables
2. Applications without a requestedExecutionLevel
3. Interactive processes running as a standard user with UAC enabled
Before a 32-bit process is created, the following attributes are
checked to determine whether it is an installer:
=95 Filename includes keywords like "install," "setup," "update," etc.
=95 Keywords in the following Versioning Resource fields: Vendor,
Company Name, Product Name, File Description, Original Filename,
Internal Name, and Ex****t Name.
=95 Keywords in the side-by-side application manifest embedded in the
executable.
=95 Keywords in specific StringTable entries linked in the executable.
=95 Key attributes in the resource file data linked in the executable.
=95 Targeted sequences of bytes within the executable.
Mathias
On 22 Apr, 21:45, Mathias <mathias.hakans...@[EMAIL PROTECTED]
> wrote:
> If the application does not have a manifest Vista tries to analyze the
> file to see if it needs admin rights to run. Your Inno installation is
> probably recognized by a bit pattern. The manifest can tell vista =F3ne
> of the following things;
>
> * Require administrator priviledges to run. If these rights are not
> given the application is not started at all. A ****eld is automatically
> added to the application/shortcut icon.
> * Run as Invoker. Normal user rights. You can't write anything in c:
> \program files or c:\windows and a couple of more folders.
> * Run with the best priviligies possible (Same as the user). Don't
> remember the manifest for this (I'm at home now). I'll post another
> message tomorrow...
>
> Mathias
>
> On 21 Apr, 16:30, John Martens <adsl672...@[EMAIL PROTECTED]
> wrote:
>
> > Matias,
>
> > In none of my apps I use a manifest file so I do not see (yet) what
> > causes two apps to behave different concerning the icon.
>
> > John
>
> > Mathias schreef:
>
> > > Use this manifest instead of the standard. You specify which
manifest
> > > in a resource statement like
> > > resource CREATEPROCESS_MANIFEST_RESOURCE_ID RC_RT_MANIFEST
%appwizdir%=
> > > \requireAdministrator.man
>
> > > If an administrator runs this program he has to allow it to run in a
> > > separate dialog. If a normal user runs it he has to specify an
> > > administrator account and password to run it.
>
> > > <?xml version=3D"1.0" encoding=3D"UTF-8" standalone=3D"yes"?>
> > > <assembly xmlns=3D"urn:schemas-microsoft-com:asm.v1"
> > > manifestVersion=3D"1.0">
> > > =A0 =A0<assemblyIdentity
> > > =A0 =A0 =A0 version=3D"1.0.0.0"
> > > =A0 =A0 =A0 processorArchitecture=3D"X86"
> > > =A0 =A0 =A0 name=3D"VO.Application"
> > > =A0 =A0 =A0 type=3D"win32"
> > > =A0 =A0/>
> > > =A0 =A0<description>Visual Objects Application.</description>
> > > =A0 =A0<dependency>
> > > =A0 =A0 =A0 =A0<dependentAssembly>
> > > =A0 =A0 =A0 =A0 =A0 =A0<assemblyIdentity
> > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0type=3D"win32"
> > > =A0 =A0 =A0 =A0 =A0 =A0 =A0
=A0name=3D"Microsoft.Windows.Common-Contro=
ls"
> > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0version=3D"6.0.0.0"
> > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0processorArchitecture=3D"X86"
> > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0publicKeyToken=3D"6595b64144ccf1df"
> > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0language=3D"*"
> > > =A0 =A0 =A0 =A0 =A0 =A0/>
> > > =A0 =A0 =A0 =A0</dependentAssembly>
> > > =A0 =A0</dependency>
> > > =A0 =A0<!-- Identify the application security requirements. -->
> > > =A0 =A0<trustInfo xmlns=3D"urn:schemas-microsoft-com:asm.v2">
> > > =A0 =A0 =A0 <security>
> > > =A0 =A0 =A0 =A0 =A0<requestedPrivileges>
> > > =A0 =A0 =A0 =A0 =A0 =A0<requestedExecutionLevel
> > > =A0 =A0 =A0 =A0 =A0 =A0 =A0level=3D"requireAdministrator"
> > > =A0 =A0 =A0 =A0 =A0 =A0 =A0uiAccess=3D"false"/>
> > > =A0 =A0 =A0 =A0 =A0</requestedPrivileges>
> > > =A0 =A0 =A0 =A0</security>
> > > =A0 =A0</trustInfo>
> > > </assembly>
>
> > > Mathias
>
> > > On 21 Apr, 08:22, John Martens <adsl672...@[EMAIL PROTECTED]
> wrote:
> > >> One app of mine has the logo-icon that I want with a ****eld
attached =
to
> > >> it. This ****eld makes the need for Admin rights to run it.
>
> > >> It is an update app but there is not always the need for Admin
rights=
..
> > >> Other VO apps do not have this. Even my Inno setup EXE doesn;t have
t=
his.
>
> > >> What's causing the ****eld to appear ?
>
> > >> John- D=F6lj citerad text -
>
> > - Visa citerad text -


|