The Shell Link Binary File Format specifies a structure called a shell link. That structure is used to store a reference to a location in a link target namespace, which is referred to as a link target. The most important component of a link target namespace is a link target in the form of an item ID list (IDList).
The shell link structure stores various information that is useful to end users, including:
A keyboard shortcut that can be used to launch an application.
A descriptive comment.
Settings that control application behavior.
Optional data stored in extra data sections.
Optional data can include a property store that contains an extensible set of properties in the format that is described in [MS-PROPSTORE].
The Shell Link Binary File Format can be managed using a COM object, programmed using the IShellLink interface, and saved into its persistence format using the IPersistStream or IPersistFile interface. It is most common for shell links to be stored in a file with the .LNK file extension. By using the IPersistStream interface, a shell link can be saved into another storage system, for example a database or the registry, or embedded in another file format. For more information, see [MSDN-ISHELLLINK].
Multi-byte data values in the Shell Link Binary File Format are stored in little-endian format.