Cuando asignas el tamaño del array creo que lo que hay que poner es el tamaño máximo que van a ocupar las cadenas, yo digo que sería así:
Cita:
type
FLAC__StreamEncoderState = (FLAC__STREAM_ENCODER_OK,
FLAC__STREAM_ENCODER_UNINITIALIZED,
FLAC__STREAM_ENCODER_OGG_ERROR,
FLAC__STREAM_ENCODER_VERIFY_DECODER_ERROR,
FLAC__STREAM_ENCODER_VERIFY_MISMATCH_IN_AUDIO_DATA,
FLAC__STREAM_ENCODER_CLIENT_ERROR,
FLAC__STREAM_ENCODER_IO_ERROR,
FLAC__STREAM_ENCODER_FRAMING_ERROR,
FLAC__STREAM_ENCODER_MEMORY_ALLOCATION_ERROR);
|
Cita:
const
FLAC__StreamEncoderStateString : Array FLAC__StreamEncoderState of String[50] =
('FLAC__STREAM_ENCODER_OK',
'FLAC__STREAM_ENCODER_UNINITIALIZED',
'FLAC__STREAM_ENCODER_OGG_ERROR',
'FLAC__STREAM_ENCODER_VERIFY_DECODER_ERROR',
'FLAC__STREAM_ENCODER_VERIFY_MISMATCH_IN_AUDIO_DATA',
'FLAC__STREAM_ENCODER_CLIENT_ERROR',
'FLAC__STREAM_ENCODER_IO_ERROR',
'FLAC__STREAM_ENCODER_FRAMING_ERROR',
'FLAC__STREAM_ENCODER_MEMORY_ALLOCATION_ERROR');
|
Por lo menos en el ejemplo que vi en el libro de Delphi4 la reserva hacía alusión al tamaño de la cadena de mayor longitud, en este caso sería
'FLAC__STREAM_ENCODER_VERIFY_MISMATCH_IN_AUDIO_DATA'
La única duda que me queda es que si debería cambiar la declaración de:
Cita:
FLAC__StreamEncoderStateString : Array FLAC__StreamEncoderState of String[50]
|
Por esta otra, siguiendo tu propuesta, ixMike:
Cita:
FLAC__StreamEncoderStateString : Array FLAC__StreamEncoderState of PChar[50]
|
¿Cómo lo ves?