Dela via


Descriptor Schema for Projectgen.exe

Visual Studio Tools for Applications includes the Project Template Generation tool (Projectgen.exe). Projectgen.exe creates a project template for your application and can optionally generate an XML descriptor file for project templates. This descriptor file describes the contents of the template. It is based on a schema named ProjectGenDescriptor.xsd. For more information about generating project templates, see Creating Project Templates Using the Project Template Generation Tool (Projectgen.exe).

ProjectGen

The ProjectGen element is the root of the ProjectGen descriptor schema. The following table describes the child elements of the ProjectGen element.

Element

Type

Description

TemplateProperties

complex type

A required element that describes the properties of the template. This element contains the following elements: Name, Description, DefaultProjectName, and Icon.

ProjectProperties

complex type

A required element that describes the properties of the project. This element contains the following elements: HostName, DebugInfoExeName, DebugInfoCommandLine, InProcHost, HostIdentifier, IconImageList, HostIconIndex, OpenFolderIconIndex, HostItems, References, COMReferences.

TemplateProperties

TemplateProperties is a complex type that represents all of the properties available for the template. The following table describes the elements in the TemplateProperties complex type.

Element

Type

Description

Name

RestrictedLengthString

A required element that specifies the name of the add-in template that appears in the New Project dialog box. The string can have a maximum length of 255 characters.

Description

RestrictedLengthString

An optional element that describes the add-in template. The string can have a maximum length of 255 characters.

DefaultProjectName

String

A required element that specifies the default project name to display in the New Project dialog box.

Icon

String

An optional element that specifies the icon to be used to identify the add-in template in the New Project dialog box.

ProjectProperties

ProjectProperties is a complex type that represents all of the properties available for the project. The following table describes the elements in ProjectProperties.

Element

Type

Description

HostName

String

A required element that specifies the name of the host. This name does not have to be the same as the HostIdentifier.

DebugInfoExeName

String

An optional element that specifies the name of the executable file to run for debugging.

DebugInfoCommandLine

String

An optional element that specifies additional parameters that can be passed to the debug executable. For information about replacement variables, see Project Template Generation Tool (Projectgen.exe).

InProcHost

String

An optional element that specifies the path to an in-process host. For more information, see Creating In-Process Hosts.

HostIdentifier

String

A required element that specifies the identifier in the registry for the host application. For more information about host identifiers, see Host Configuration Registry Key Settings.

IconImageList

String

An optional element that specifies the path to an icon image list. The image list contains 16x16 pixel images to be associated with the host, host item, and open folder items in Solution Explorer.

HostIconIndex

Integer

An optional element that specifies the icon associated with the host application.

OpenFolderIconIndex

Integer

An optional element that specifies the index for the icon associated with the host application in its expanded state.

HostItems

complex type

A required element that specifies the names of the entry point classes.

References

complex type

An optional element that specifies the managed references to be included in the project template.

COMReferences

complex type

An optional element that specifies the references to COM type libraries to be included in the project template.

HostItems

HostItems is a complex type that represents all of the host items in the project. The following table describes the elements in HostItems. The Projectgen.exe wizard supports only one HostItem element.

Element

Type

Description

ProxyAssemblyName

String

A required element that specifies the full path of the proxy assembly DLL.

HostItemName

NoWhiteSpaceString

A required element that specifies the name of the host item.

BaseType

String

A required element that specifies the base type of the host item as specified in the proxy DLL.

PrimaryCookie

String

A required element that specifies the unique identifier associated with the host item.

IconIndex

Integer

An optional element that specifies the index for the icon associated with the host item.

References

References is a complex type that represents the managed references to be included in the project template. The following table describes the elements in References.

Element

Type

Description

Reference

complex type

An optional element that specifies a reference in the project. This element contains one or more Include attributes.

The following table describes the attributes of the Reference element.

Attribute

Type

Description

Include

String

A required attribute that specifies the name of the assembly that is being referenced.

COMReferences

COMReferences is a complex type that represents the references to COM type libraries to be included in the project template. The following table describes the elements in COMReferences.

Element

Type

Description

COMReference

complex type

An optional element that specifies a COM reference in the project. This element contains the following elements: Guid, VersionMajor, VersionMinor, and WrapperTool. This element also contains an attribute named Include.

COMReference

COMReference is a complex type that represents a reference to a COM type library in the project. The following table describes the elements in COMReference.

Element

Type

Description

Guid

String

A required element that specifies the GUID of the COM reference.

VersionMajor

Unsigned Byte

A required element that specifies the version identifier to the left of the first decimal point in the identifier of the COM reference.

VersionMinor

Unsigned Byte

A required element that specifies the version identifier to the right of the first decimal point in the identifier of the COM reference.

WrapperTool

String

A required element that specifies the name of the tool used to wrap the COM reference.

The following table describes the attributes of the COMReference element.

Attribute

Type

Description

Include

String

A required attribute that specifies the name of the COM type library that is being referenced.

RestrictedLengthString

A string element that has a maximum length of 255 characters.

NoWhiteSpaceString

A string element that has no white spaces within the string, and has a maximum length of 255 characters.

See Also

Tasks

How to: Create a Project Template Using the Projectgen.exe Command-Line Tool

Walkthrough: Creating a Project Template Using the Project Template Wizard

Concepts

Creating Project Templates (Visual Studio Tools for Applications)

Creating Project Templates Using the Project Template Generation Tool (Projectgen.exe)

Reference

Project Template Generation Tool (Projectgen.exe)