String

String {

char szKey[];

BYTE Padding[];

String Value[];

} String;

The String structure depicts the organization of data in a file version resource. This structure is not a true C data structure because it contains variable length fields. This structure was created solely to depict the organization of data in a version resource; it does not appear in any of the include files shipped with the Win32 Software Development Kit (SDK).

The String block contains a string that describes some specific aspect of a file.

Members

szKey

Specifies an arbitrary 7-bit ASCII English string. szKey may have one of the following values:

Value Meaning

Comments Value contains any additional information that should be displayed for diagnostic purposes. This string is optional and can be of arbitrary length.
CompanyName Value identifies the company which produced the file. For example, “Microsoft Corporation” or “Standard Microsystems Corporation, Inc.”. This field is required.
FileDescription Value describes the file in such a way that it can be presented to users. This string may be presented in a listbox when the user is choosing files to install. For example, “Keyboard Driver for AT-Style keyboards” or “Microsoft Word for Windows”. This field is required.
FileVersion Value identifies the version of this file. For example, Value could be “3.00A” or “5.00.RC2”. This field is required.
InternalName Value identifies the file's internal name, if one exists. For example, this field would contain the module name for Windows DLLs, a Virtual Device Name for Windows Virtual Devices, or a device name for DOS device drivers. This field is required.
LegalCopyright Value describes all copyright notices, trademarks and registered trademarks that apply to the file. This should include the full text of all notices, legal symbols, copyright dates, trademark numbers and so on. This field is optional. In English, this field should be in the format “Copyright Microsoft Corp. 1990,1991”
LegalTrademarks Value describes all trademarks and registered trademarks that apply to the file. This should include the full text of all notices, legal symbols, trademark numbers and so on. This field is optional. In English, this field should be in the format “WindowsTM is a trademark of Microsoft Corporation”.
OriginalFilename Value identifies the original name of the file, not including a path. This enables an application to determine if a file has been renamed by a user. This name may not be DOS 8.3-format if the file is specific to a non-FAT filesystem. This field is required.
PrivateBuild Value describes by whom, where, and why this private version of the file was built. This entry should only be present if the VS_FF_PRIVATEBUILD flag is set in the dwFileFlags field of the VS_FIXEDFILEINFO block. For example, Value could be “Built by OSCAR on \OSCAR2”.
ProductName Value identifies the name of the product with which this file is distributed. For example, Value could be “Microsoft Windows”. This field is required.
ProductVersion Value identifies the version of the product with which this file is distributed. For example, Value could be “3.00A” or “5.00.RC2”. This field is required.
SpecialBuild Value describes how this version of the file differs from the normal version. This entry should only be present if the VS_FF_SPECIALBUILD flag is set in the dwFileFlags field of the VS_FIXEDFILEINFO block. For example, Value could be “Private build for Olivetti solving mouse problems on M250 and M250E computers”.

Padding

Contains as many zero bytes as necessary to align the Value field on a 32-bit boundary.

Value

Specifies a zero-terminated string formatted in the language and codepage indicated by the current StringTable block. See the szKey description for more information.

Comments

For example, a String block may have an szKey value of “CompanyName” and a Value of “Microsoft Corporation”. Another String block with the same szKey value, could contain a Value of “Microsoft GmbH”. This might occur if the second String block was associated with a StringTable block whose szKey value is 04070000, i.e. German/ASCII.

See Also

VS_VERSION_INFO, StringTable