Marshal problem fra nativ kode
jeg har et problem med at jeg får en MarshalDirectiveException når jeg prøver at få fat i en adresse til et menoryområde nede fra mit nativ kode op til mit C#, så jeg kan opperer med det som var der et uint32 array. regne med at det er mig der ikke kan finde ud af at lave den rigtige Marshal mellem c og c#nativ code
volatile unsigned int *bufp=0;
...
bufp bliver sat lig med starten på et fix size array
...
extern unsigned int * get_pci_pcmem_bufp(void){
return *bufp;
}
C#
static void Main(string[] args)
{....
....
UInt32[] bufp = GetPICPcmenBufp(); // Marshal problem
....
....
}
[DllImport("test.dll", EntryPoint = "get_pci_pcmem_bufp", CallingConvention = CallingConvention.Cdecl)]
public static extern UInt32[] GetPICPcmenBufp();