Catalog Item Files (Windows CE 5.0)
After you create a project, you can use a Catalog item (.cec) file to associate it with a Catalog item that you can display in the Catalog. For more information about sample .cec files, see Sample .cec Files.
For information about migrating a .cec file to Windows CE 5.0, see Catalog Item Migration.
After the Catalog item is displayed in the Catalog, you can add the associated project to other OS designs you create on the same development workstation. To do this, you must first create a .cec file and then import the file into the Catalog.
A .cec file consists of blocks and subblocks that describe metadata about Catalog items and their relationships. The following table shows the blocks in a .cec file and the order they appear in.
Block name | Content |
---|---|
CECInfo Block | Basic information about the .cec file, such as the name, description, vendor, and version of the .cec file. |
ComponentType Block | Catalog item groups or a generalized Catalog item that might have many different implementations. |
Implementation Block | Definition of an implementation for a component type. |
BuildMethod Block | Information about which CPUs support your Catalog item and, if applicable, links to source files, Help documentation (.chm) files, and user-created projects.
|
When you create a .cec file and want to add an implementation or ComponentType defined in another .cec file, use the existing Globally unique identifier (GUID) rather than creating a new GUID.
When modifying an existing component type, specify only the Name and GUID fields.
The following code example shows the ComponentType block that specifies a new display driver (an implementation of the Display component type).
ComponentType
(
Name ( "Display")
..
..
Implementations
..
)
When adding to an existing implementation, use the same Implementation version number as the one you want to extend.
When the data for a field contains a space, enclose the data in quotes. Tokens are separated by spaces and lines are ignored. If you enter a comment line, include a space after // to avoid a syntax error.
For examples of the grammar used in .cec files, examine the default .cec files that are installed with Platform Builder. These default .cec files are installed in the %_WINCEROOT%\Public\Common\Oak\Catalog\Cec directory.
The Platform Builder import parser adheres to the following rules when importing a .cec file:
GUIDs are generated for any structure that does not supply one, including component types, implementations, and build methods.
Note To ensure consistency, supply your own GUIDs for your Catalog items. You can use the GUIDGEN tool to create a GUID. GUIDGEN.exe is in the %_WINCEROOT%\SDK\BIN\i386 directory. For more information, see Guidgen Tool.
GUIDs are specified in the following standard format:
{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}
A .cec file can reference other structures by name instead of GUID only if the structures are defined in the same .cec file.
If the information for a field requires more than one value, such as Children(), quotes are not needed. However, if your value has a space in the string, such as "My Catalog item," include double quotes around the string.
Modifications to .cec files are not incorporated if another .cec file references the same Catalog item group. To incorporate the changes to a Catalog item, all .cec files containing references to the specified Catalog item group must be removed from the Catalog and imported again.
A utility is included with Platform Builder that you can use to create and modify .cec files. For more information, see CEC Editor.
BSP .cec files contain data describing your device drivers and your OEM adaptation layer (OAL).
The following code example shows a BSP .cec file that contains a GUID identifying the file as an OAL in the Catalog.
ComponentType (
Name( BSPs )
GUID( {3CABD6DA-B577-4a87-9490-9432E80DC2F1} )
Description( "Board Support Packages" )
Implementations(
Implementation(
See Also
Developing a Board Support Package | CECInfo Block | ComponentType Block | Implementation Block | BuildMethod Block | Troubleshooting: Generic.cec is Missing | Troubleshooting: Catalog Database is Corrupted
Send Feedback on this topic to the authors