the VST 2.4 confirms the 8 character limit. and encourage people to use vst_strncpy() to enure this, see below.
[code]
enum
{
//-------------------------------------------------------------------------------------------------------
kVstMaxProgNameLen = 24, ///< used for #effGetProgramName, #effSetProgramName, #effGetProgramNameIndexed
kVstMaxParamStrLen = 8, ///< used for #effGetParamLabel, #effGetParamDisplay, #effGetParamName
kVstMaxVendorStrLen = 64, ///< used for #effGetVendorString, #audioMasterGetVendorString
kVstMaxProductStrLen = 64, ///< used for #effGetProductString, #audioMasterGetProductString
kVstMaxEffectNameLen = 32 ///< used for #effGetEffectName
//-------------------------------------------------------------------------------------------------------
};
//-------------------------------------------------------------------------------------------------------
/** String copy taking care of null terminator. /
//-------------------------------------------------------------------------------------------------------
inline char vst_strncpy (char* dst, const char* src, size_t maxLen)
{
char* result = strncpy (dst, src, maxLen);
dst[maxLen] = 0;
return result;
}[/code]
you might overcome limitation by using the VstParameterProperties structure, but I doubt many host really use it. There are so many plugin out there that don’t implement it.
enum Vst2StringConstants
{
//-------------------------------------------------------------------------------------------------------
kVstMaxNameLen = 64, ///< used for #MidiProgramName, #MidiProgramCategory, #MidiKeyName, #VstSpeakerProperties, #VstPinProperties
kVstMaxLabelLen = 64, ///< used for #VstParameterProperties->label, #VstPinProperties->label
kVstMaxShortLabelLen = 8, ///< used for #VstParameterProperties->shortLabel, #VstPinProperties->shortLabel
kVstMaxCategLabelLen = 24, ///< used for #VstParameterProperties->label
kVstMaxFileNameLen = 100 ///< used for #VstAudioFile->name
//-------------------------------------------------------------------------------------------------------
};