VARSTRING  C.TWH5

The VARSTRING structure is used for returning variably sized strings. It is used both by the line device class and the phone device class.

typedef struct varstring_tag { 

    DWORD  dwTotalSize;

    DWORD  dwNeededSize;

    DWORD  dwUsedSize;

    DWORD  dwStringFormat;

    DWORD  dwStringSize;

    DWORD  dwStringOffset;

} VARSTRING, FAR *LPVARSTRING;

 

Members

dwTotalSize

The total size in bytes allocated to this data structure.

dwNeededSize

The size in bytes for this data structure that is needed to hold all the returned information.

dwUsedSize

The size in bytes of the portion of this data structure that contains useful information.

dwStringFormat

The format of the string. This parameter uses the following STRINGFORMAT_ constants:

STRINGFORMAT_ASCII

ASCII string format using one byte per character. The actual string is a NULL-terminated ASCII string with the terminating NULL accounted for in the string size.

STRINGFORMAT_DBCS

DBCS string format using one or two bytes per character.

STRINGFORMAT_UNICODE

Unicode string format using two bytes per character.

STRINGFORMAT_BINARY

An array of unsigned characters that could be used for numeric values.

dwStringSize

dwStringOffset

The size in bytes of the variably sized device field containing the string information, and the offset in bytes from the beginning of this data structure.

 

Remarks

No extensibility.

If a string cannot be returned in a variable structure, the dwStringSize and dwStringOffset members are set in one of these ways:

    dwStringSize and dwStringOffset members are both set to zero.

    dwStringOffset is nonzero and dwStringSize is zero.

    dwStringOffset is nonzero, dwStringSize is 1, and the byte at the given offset is 0.