In order to be able to change an object's settings from "outside" the Workplace Shell, the WPS supports the concept of object setup strings.

A WPS setup string is a sequence of keyword=value pairs, each separated with a semicolon. The keywords that are understood by an object depend on its class.

For example, to change a folder's closed and open icons, you could use the following string:

ICONFILE=C:\closed.ico;ICONNFILE=1,C:\open.ico;

Since the WPS classes are organized in a hierarchical tree and inherit from each other, an object will not only understand the setup strings of its own class, but also those of all its parent classes. For example, a folder will not only understand WPFolder keywords, but also the generic WPObject keywords (which are understood by all objects).

There are many, many different object strings for the various WPS classes. Select from the following list to learn about some of them:

There are several ways that setup strings can be invoked upon an object: Note: As opposed to a popular misconception, when a setup string is invoked on an object, the string itself is not stored anywhere. Instead, the string is parsed by the object's WPS class, translated into the object's binary data, and then discarded.

As a result, in order to be able to retrieve setup strings again for the display on the "Icon" page in an object's properties notebook, &xwp; has to evaluate an object's binary data and take a best guess at what the setup string would be that would create that binary setting. Some of the object data is completely undocumented, and unless there is a documented way to find out what the binary object data means, &xwp; will not be able to create a setup string from it.