In Configuration Manager 2007, the DDRAddString function adds a string property to the data discovery record (DDR).

	 [in] BSTR Name,
	 [in] BSTR Value,
	 [in] long SQLWidth,
	 [in] enum DDRPropertyFlagsEnum Flags



Name of the class property.

Value assigned to the property. You can only enter string values from the single-byte character set.

Maximum length of a string that can be assigned to this property. This value does not include the NULL character. For SMS 2003 This value cannot be greater than 900 characters. For SMS 2.0 this value cannot be greater than 255 characters.

Characteristics of the property, such as a key field for comparisons. Enter one or more of the following flags or a zero.

Flag Description


Identifies a property that is constant and uniquely identifies the discovered item. If specified for system DDRs, this should be the SMSID generated by the Configuration Manager client.

This flag is only used on the SMSUniqueIdentifier property. If you use ADDPROP_GUID, you must also use ADDPROP_KEY.

Note that SMSUniqueIdentifier relates discovery data to inventory data. If you do not collect inventory information for this resource, you do not need to specify the SMSUniqueIdentifier property in your DDR.


Identifies this property as a key field during a comparison of this DDR with class instances in the database. If an instance in the database matches the data of the DDR key properties, the instance is updated; otherwise, a new instance is created.


Tells the Data Discovery Manager (DDM) to use this property's string value for the value of the Name property.

The Name property is one of six additional properties that are generated for you by the DDM.


Adds a Comment property to your DDR and uses the string value of your property for its value.

Return Values

If the function succeeds, the return value is S_OK.

If the DDRNew function has not been called, the return value is S_FALSE.


Your DDR must contain one string property that specifies the ADDPROP_NAME flag. The value must uniquely identify the resource because the Name property is typically used to query resource data.

The DDR is rejected if sValue is longer than the maximum length specified in nSQLWidth.

You can use underscores, concatenation, or spaces for property names that contain multiple words. For example, you can specify sName as License_Number, LicenseNumber, or LicenseNumber. If you specify sName as LicenseNumber, the DDM concatenates the words, which results in LicenseNumber. However, the column name, which is created in the database, is License_Number. You must use the same convention when you add DDRs that create or update instances in an existing resource class.


Runtime Requirements



For more information, see Configuration Manager Server Runtime Requirements.

Development Requirements

See Also

Send comments about this topic to Microsoft.