System.Runtime.InteropServices.MarshalDirectiveException*: 'Impossible de marshaler 'parameter #2'*: Impossibl
Bonjour,
J'ai une erreur assez peu courante :
"System.Runtime.InteropServices.MarshalDirectiveException*: 'Impossible de marshaler 'parameter #2'*: Impossible de marshaler les types génériques.'
Et je n'arrive pas a m'en sortir.
Auriez vous une piste a me donner ?
Voici mon code
Code:
1 2 3 4 5 6 7 8 9 10
|
[DllImport(@"toto.dll")]
public static extern int toto_send_bytes_register(UIntPtr hdl, Func<uint, uint, UInt16, uint, int> cb, IntPtr user_data);
internal int MyToto_diag_send_bytes_register(UIntPtr hdl, Func<uint, uint, ushort, uint, int> cb, IntPtr user_data)
{
return toto_send_bytes_register(hdl, cb, user_data); --------> Ca plante ici à l'execussion ...System.Runtime.InteropServices.MarshalDirectiveException*: 'Impossible de marshaler 'parameter #2'*: Impossible de marshaler les types génériques.'
}
} |
J'ai rajouté des [MarshalAs(UnmanagedType.FunctionPtr)] sur le deuxieme parametre... pas mieux...
Merci pour votre aide...