Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

All information about your package resides in a manifest file that is loaded by the host process. It describes the modules in the package, and the files and metadata for each module. For a manifest to be usable by a retail WinGate, it needs to be signed with the Manifest Prep tool which is found in the tools directory of the SDK. For developing your modules in Developer Mode you do not need to sign your manifest file.

Here is an example manifest file. 

...

Code Block
languagexml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<wingatePackage packageVersion="1.0"> 
 <package id="{1a3e50d9-bd41-4c1a-a8eb-b81b2aa593f3}" name="Facebook sanitiser" description="Turns all Facebook pictures into pictures of cats" >
	<modules>
		<module name="Facebook Sanitiser UI" host="UI" id="{2a1d44a9-db14-2c3c-a1eb-b61b3db697e3}"  subPath="" debugPath="UI\Debug" releasePath="UI\Release">
			<dependencies>
				<dependency file="FBSanitiserUI.dll" description="Sanitiser UI dll" entryPoint="1" >
					<md5 value="" />
					<platform os="Any" />
					<destination value="local" />
					<signInfo path="%SourceRoot%\MyModules\FBSanitiser\UI\Release" />
				</dependency>
			</dependencies>
		</module>
		<module name="Facebook Sanitiser Engine" host="Engine" id="{0b3b5011-ca0d-23d6-a9ea-711c5b43f7bd}"  mandatory="yes" subPath="" debugPath="Engine\Debug" releasePath="Engine\Release">
			<dependencies>
				<dependency file="FBSanitiserEng.dll" description="Sanitiser Engine dll" entryPoint="1" >
					<md5 value="" />
					<platform os="Any" />
					<destination value="local" />
					<signInfo path="%SourceRoot%\MyModules\FBSanitiser\Engine\Release" />
				</dependency>
			</dependencies>
		</module>
	</modules>
</package>
</wingatePackage>

...

Describes the package as a whole. See About Packages, Modules, Components and Interfaces for more information.

id - The UUID of your package.

...

Root node for the modules within your package. There can be any number of modules in a package.

<module>

Describes a single module within your package. 

name - User friendly name of this module.

Tip

You may wish to distinguish between the UI or Engine versions of your module when specifying the name in order to make it easier to identify in the Modules panel in the WinGate Management Console

...

id - The UUID of the module, including the braces.

mandatory - Whether this module is mandatory and therefore cannot be disabled by a user.

subPath - Must be empty.

debugPath - The path relative to the manifest file where module files are located when running in debug mode. NOTE: Only valid when running with a WinGate Developer License

...

Root path for module dependencies. See About Packages, Modules, Components and Interfaces for more information.

<dependency>

Describes a single dependency file for the enclosing module. 

file -  The filename of the file

description -  A user friendly description of this file. 

entryPoint - Indicates whether this file is considered the  the Entry Point for the module. the one to be loaded and initialised for this module. Value values are "1" and "0"

From this file is determined entry points for your module(s), dependent files that need synchronising between the WinGate engine and WinGate Management Console and to ensure they haven't been tampered with. In order to prepare a manifest file for distribution you need to run the ManifestPrep utility on it which is found in the tools directory of the SDK.

 

 

<md5>

value - Filled out by the Manifest Prep tool with the MD5 of this dependency file's contents. Leave blank.

<platform>

os - The operating system that this dependency will be synchronised for. Supported values are WinAny, WinNt351, WinNt4, WinXp, Win2k, Win2k3, WinVista, Win7, Win2k8, Win2k8R2, Win2k12, Win2k12R2, Win8, Win81, Win10

<destination>

value - Where the dependency's destination is. Values are:

local - File is placed in the same location as the manifest file

shared - File is placed in the WinGate installation directory

<signInfo>

path - The folder that holds the final version of this dependency that should be signed. See SourceRoot for more information.