Difference between revisions of "Boot CD Plugins"
(New page: Boot CD plugins are XML files that offer instructions on how to locate and insert specific applications into bootable CD images created by our Boot CD Creator. =appplugin= This is the roo...) |
(→registry) |
||
Line 64: | Line 64: | ||
<registry> | <registry> | ||
<value method="copy">HKEY_CURRENT_USER\Software\Safer Networking Limited\SpybotSnD\Language</value> | <value method="copy">HKEY_CURRENT_USER\Software\Safer Networking Limited\SpybotSnD\Language</value> | ||
− | <value method="set" type=" | + | <value method="set" type="REG_SZ" data="[$DESTDIR]">HKEY_CURRENT_USER\Software\Safer Networking Limited\SpybotSnD\Path</value> |
</registry> | </registry> | ||
===value=== | ===value=== | ||
A registry value is the smallest unit that this deals with. | A registry value is the smallest unit that this deals with. | ||
+ | |||
+ | ====method==== | ||
+ | The method to apply; either ''copy'' to copy existing settings from the current system (as in this example the language the user prefers) or ''set'' to add a new registry value. | ||
+ | |||
+ | ====type==== | ||
+ | Supported are some standard types; strings as they are: | ||
+ | * REG_SZ | ||
+ | * REG_EXPAND_SZ | ||
+ | * REG_MULTI_SZ | ||
+ | |||
+ | Integers are supported by their pure decimal representation, no hex yet: | ||
+ | * REG_DWORD | ||
+ | * REG_DWORD_LITTLE_ENDIAN | ||
+ | * REG_DWORD_BIG_ENDIAN | ||
+ | * REG_QWORD | ||
+ | * REG_QWORD_LITTLE_ENDIAN | ||
+ | |||
+ | ====data==== | ||
+ | The data to be set. Contrary to the example, no custom or standard path templates are supported yet. | ||
==menu== | ==menu== |
Latest revision as of 17:10, 25 March 2009
Boot CD plugins are XML files that offer instructions on how to locate and insert specific applications into bootable CD images created by our Boot CD Creator.
Contents
appplugin
This is the root node of any plugin file, no attributes required.
application
This part contains the generic information about the application.
<application> <name>spybotsd</name> <guid>B4092C6D-E886-4CB2-BA68-FE5A88D31DE6</guid> <displayname>Spybot - Search & Destroy</displayname> <purpose>Malware detection and removal.</purpose> <dependencies> <dependency>dummy</dependency> </dependencies> </application>
name
A short, simple name for the application for internal use. No spaces or special characters, keep it as simple as possible.
displayname
A nicer name that is used in places visible to the user.
purpose
A short explanation of the application.
guid
A unique ID that identifies the application. Using the one the application uses for its Uninstall entry is a good decision usually.
dependencies
Not yet implemented, this would control dependencies. If this application depends on another plugins one to be installed, adding a depency for that ones name would ensure consistency.
files
Files are either required or optional and specify single files, or, by using wildcards, groups of files.
<required>advcheck.dll</required> <optional>aports.dll</optional> <required>blindman.exe</required> <optional>Default configuration.ini</optional> <required>DelZip179.dll</required> <required>messages.zres</required> <optional>OptOut.ini</optional> <optional group="Resident">SDHelper.dll</optional> <optional group="Resident">SDMain.exe</optional> <optional menuitem="Secure Shredder" group="Shredder">SDShred.exe</optional> <required menuitem="Spybot-S&D Update">SDUpdate.exe</required>
Each file can have a group attribute pointing to a filegroup for logical structuring, and a menuitem defining that a shortcut to it should be added to the menu.
filegroups
File groups are just a tool for logical structuring of files. The can be used by applying a group attribute to files nodes.
<filegroups> <filegroup id="Shredder">Secure Shredder as an external application.</filegroup> <filegroup id="Resident">Files for resident protection, useless on PE.</filegroup> </filegroups>
registry
Changes that should be applied to the registry of the bootable CDs Operating System. Example:
<registry> <value method="copy">HKEY_CURRENT_USER\Software\Safer Networking Limited\SpybotSnD\Language</value> <value method="set" type="REG_SZ" data="[$DESTDIR]">HKEY_CURRENT_USER\Software\Safer Networking Limited\SpybotSnD\Path</value> </registry>
value
A registry value is the smallest unit that this deals with.
method
The method to apply; either copy to copy existing settings from the current system (as in this example the language the user prefers) or set to add a new registry value.
type
Supported are some standard types; strings as they are:
- REG_SZ
- REG_EXPAND_SZ
- REG_MULTI_SZ
Integers are supported by their pure decimal representation, no hex yet:
- REG_DWORD
- REG_DWORD_LITTLE_ENDIAN
- REG_DWORD_BIG_ENDIAN
- REG_QWORD
- REG_QWORD_LITTLE_ENDIAN
data
The data to be set. Contrary to the example, no custom or standard path templates are supported yet.
This entry controls where the item would be listed in a structured menu.
<menu> <group>Security</group> </menu>
group
The name of the group this application should be listed under.
detectors
This group of nodes defines how the application should be detected. Every sub-node here has to be named detector to be recognized. An example:
<detectors> <detector type="regpath">HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{B4092C6D-E886-4CB2-BA68-FE5A88D31DE6}_is1\InstallLocation</detector> <detector type="regpathbyfile">HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{B4092C6D-E886-4CB2-BA68-FE5A88D31DE6}_is1\DisplayIcon</detector> <detector type="filesys">[$PROGRAMFILES]\Spybot - Search & Destroy\</detector> </detectors>
There are three detector types available currently:
regpath
A registry path to a REG_SZ or REG_EXPAND_SZ that lists the installation path of the application.
regpathbyfile
Similar to regpath, except that the entry would contain a fully qualified filename, from which the path would be taken.
filesys
Locate th application through the filesystem. This supports path templates, with the exception that they are to be put into square brackets, as seen in the example.