Smart Package Robot 's "Script to Executable" Compiler

<< Click to Display Table of Contents >>

Navigation:  2. Components > 2. EXE-Compiler >

Smart Package Robot 's "Script to Executable" Compiler

'#MAN: - Specify a Manifest for the Executable

Previous Top Next


Compiler-Directives

 

'#MAN:

Used to specify a manifest type for the executable that is to be created

 

 

Intention

 

Compiler-Directives start with the Sequence:

'#

Which is a comment-sign on the left and then the #.

 

Because of the comment sign, the running script ignores these commands at Runtime (at time of script execution).

 

'#MAN:

The '#MAN: Compiler Directive is used to change the Manifest-Type of the final Standalone EXE-File. You can choose between:

 

- asInvoker

- requireAdministrator

- highestavailable

- none

 

    alternative you can specify an own ".xml"-File with Path:

 

'#MAN:?path\User-Manifest.xml

 

For example:

'

' choose Manifest that shows that admin rights are required:

'#MAN:ra

or

'#MAN:requireAdmin

or

'#MAN:User-Manifest.xml

 

If you omit the '#MAN: - directive, per default "asInvoker" is used for the compiled Package. The internally used MR01.exe (Robot-Executable) does not have an own Manifest therefore.

 

 

 

Syntax:

 

'#MAN:[P1]

 

P1 -  (optional) Manifest Type can be one of these:

 

- ai,asInvoker

- ra,requireAdministrator

- ha,highestavailable

- -,none

 

    or you can specify an ".xml"-Manifest File with complete path.

    If you just specify the filename, ?path\ is taken as path.

 

'#MAN:User-Manifest.xml

 

 

Example:

 

'----------------------------------------

' Compiler Manifest

'----------------------------------------

'

'

' "requireAdmin" Manifest is used

'#MAN:ra

' or

'#MAN:requireAdmin

 

' No Manifest will be used

'#MAN:-

' or

'#MAN:None

 

' "highestavailable" Manifest is used

'#MAN:ha

' or

'#MAN:ra

'

'#MAN:User-Manifest.xml

 

 

END.

 

 

Manifest Explanation:

 

This is the Manifest that is basically used for the SPR.
The brown colored lines are internally changed to the value that is needed for "required execution level" and "UIAccess".

 

 

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">

 

<assemblyIdentity type="win32" name="{decriptioA}" version="1.0.0.0" processorArchitecture="x86" />

 

<description>{decriptioB}</description>

 

<dependency> <dependentAssembly> <assemblyIdentity

type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0"

processorArchitecture="x86" publicKeyToken="6595b64144ccf1df" language="*"  />

 

</dependentAssembly> </dependency> <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">

 

<security>

<requestedPrivileges> <requestedExecutionLevel

 

' The following two lines differ due to the Manifest settings

level="{levelio}"

uiAccess="{uiacio}"

  />

 

</requestedPrivileges> </security> </trustInfo>

<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">

<application>

 

<!-- Windows 10 -->

<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/>

<!-- Windows 8.1 -->

<supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}"/>

<!-- Windows Vista -->

<supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/>

<!-- Windows 7 -->

<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>

<!-- Windows 8 -->

<supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}"/>

</application> 

</compatibility>

 

<asmv3:application>

<asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">

<dpiAware>true</dpiAware>

</asmv3:windowsSettings>

</asmv3:application>

</assembly>

 

 

Remarks:

The Icon of the Executable will show the Letter of the used Manifest, A, H or R.

In case you specify a "User-Manifest.xml", the Icon will show "U".

 

Internally this statement can be emulated using the '#CIL:-Directive:

'#CIL:Rempara|Manifest|(Number 0 to 3)

    and in case a User-Manifest is used:

  '#CIL:Rempara|Manipfad|(path)

 

 

Limitations:

 

-

 

 

See also:

 

    2.3.1. '#MAU: - UI-Access for Manifest for Executable

  2.4.0. '#VER: - Version-Informations

 

See further:

2.0.0 Smarty's EXE-Compiler

2.1.1 '#RAU: - Run As User

2.1.2 #AOS: - Choose valid OS for executable

2.1.3 '#EXE: - Set Executable Path and Name

2.1.4 '#EXV: - Execute on System Desktop

2.1.5 '#HID: - Hidden Desktop Scripts

2.1.7 '#SPI: - Special Instructions

2.1.8 '#INC: - Include Files and Folders into the Executable

2.1.9 '#EXC: - Exclude Files or Dirs from Executable

2.1.A #LIB: - User-Library Path

2.1.B #CRY: - enCrypt the Script

2.1.C '#AFT: - Run AFTER Compile

2.2.1 '#ICO: - Choose own Icon

2.2.2 '#ICF: - Icon from Icon-Folder

2.2.3 '#ICS: / '#ICS: Icon-Set

2.3.0. '#MAN: - Manifest for Executable

2.3.1. '#MAU: - UI-Access for Manifest for Executable

2.4.0. '#VER: - Version-Informations

2.5.0. '#CIL: - Direct Compiler Interface