Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

This structure depicts the organization of data in a file-version resource. It contains a string that describes a specific aspect of a file, such as a file's version, its copyright notices, or its trademarks.

This structure is not a true C-language structure because it contains variable-length members.

Syntax

typedef struct String {
  WORD 
wLength;
  WORD 
wValueLength;
  WORD 
wType;
  WCHAR 
szKey[];
  WORD 
Padding[];
  WORD 
Value[];
} String;

Members

wLength

Length, in bytes, of this Stringstructure.

wValueLength

Size, in words, of the Valuemember.

wType

Type of data in the version resource. This member is 1 if the version resource contains text data, and 0 if the version resource contains binary data.

szKey

Arbitrary Unicode string. The following table shows the possible strings for the szKeymember. The strings in the following table are guidelines only.

String Description

Comments

The Valuemember contains any additional information that should be displayed for diagnostic purposes. This string can be an arbitrary length.

CompanyName

The Valuemember identifies the company that produced the file. For example, "Microsoft Corporation."

FileDescription

The Valuemember describes the file in such a way that it can be presented to users.

This string may be presented in a list box when the user is choosing files to install. For example, "Keyboard driver for AT-style keyboards" or "Microsoft Word for Windows".

FileVersion

The Valuemember identifies the version of this file. For example, Valuecould be "3.00A" or "5.00.RC2".

InternalName

The Valuemember identifies the file's internal name, if one exists.

For example, this string could contain the module name for a DLL, a virtual device name for a Windows virtual device, or a device name for an MS-DOS device driver.

LegalCopyright

The Valuemember 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. In English, this string should be in the format "Copyright Microsoft Corp. 1990–1994".

LegalTrademarks

The Valuemember 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.

In English, this string should be in the format "Windows is a trademark of Microsoft Corporation".

OriginalFilename

The Valuemember identifies the original name of the file, not including a path.

This enables an application to determine whether a file has been renamed by a user.

This name may not be MS-DOS 8.3-format if the file is specific to a non-FAT file system.

PrivateBuild

The Valuemember describes by whom, where, and why this private version of the file was built. This string should only be present if the VS_FF_PRIVATEBUILD flag is set in the dwFileFlagsmember of the VS_FIXEDFILEINFOstructure. For example, Valuecould be "Built by OSCAR on \OSCAR2".

ProductName

The Valuemember identifies the name of the product with which this file is distributed. For example, this string could be "Microsoft Windows".

ProductVersion

The Valuemember identifies the version of the product with which this file is distributed. For example, Value could be "3.00A" or "5.00.RC2".

SpecialBuild

The Valuemember 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 dwFileFlagsmember of the VS_FIXEDFILEINFOstructure.

For example, Valuecould be "Private build for Olivetti solving mouse problems on M250 and M250E computers".

Padding

Contains as many zero words as necessary to align the Valuemember on a 32-bit boundary.

Value

Zero-terminated string. For more information, see the szKeymember description.

Remarks

A Stringstructure may have an szKeyvalue of, for example, "CompanyName" and a Valueof "Microsoft Corporation". Another Stringstructure with the same szKeyvalue could contain a Valueof "Microsoft GmbH", which might occur if the second Stringstructure were associated with a StringTablestructure whose szKeyvalue is 040704b0, for example, German/Unicode. This structure was created solely to depict the organization of data in a version resource and does not appear in the header files shipped with a software development kit (SDK) for a Windows Embedded CE OS.

Requirements

Header Developer Implemented
Windows Embedded CE Windows CE 3.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also