Secondo me ragionare per stringhe a lunghezza fissa non è corretto, visto che non esistono più.
Quell'attributo come hai visto serve per marshaling con VB6 ma non ha molto senso in .NET
Potresti dichiarare le stringhe ad esempio così
codice:
Dim s As New String(" "c, 25)
per creare una stringa di una certa lunghezza.
Se vuoi mantenere la soluzione con gli attributi allora puoi ottenerli e sapere cosa contengono utilizzando reflection e in particolare
Esempio
codice:
Dim RI As RecordInput
For Each fi As FieldInfo In RI.GetType().GetFields()
Console.WriteLine(DirectCast(fi.GetCustomAttributes(False)(0), VBFixedStringAttribute).Length)
Next