was ist der Sinn von MarshalAs?

Tapsihater

Grünschnabel
Hallo :D

Ich arbeite grad mit Avi-Dateien und habe ein Problem mit MarshalAs.
Ich habe eine Struktur, in der ich szname so deklariere:
Code:
        <MarshalAs(UnmanagedType.ByValTStr, SIZECONST:=64)> Public szName As UInt16()

Doch wie rufe ich szname auf? Hab im Inet verschiedene Möglichkeiten gefunden, doch die wollen nicht so funktionieren, wie ich es will ;)

Code:
.szName = Nothing
.szName=new UInt16 [64]
.szname(0)=0
uvm.

Wie rufte ich szname richtig auf? Und gibt es nicht auch eine andere Variante anstatt MarshalAs) Schon mal Danke für die Antworten :)
 

Tapsihater

Grünschnabel
oh je, die Probleme häufen sich:

MarshalDirectiveException
PInvoke-Einschränkung: Es können keine Varianten zurückgegeben werden.

Dieser Fehler passiert bei folgendem Aufruf:
Code:
        result = AVIStreamSetFormat(avistream, 0, bi, bilddata.Stride)

Kennt Ihr diesen Fehler? Brauche dringend Hilfe!!
Gruß Tapsi