About calling *.dll

I want to call a *.dll  ,so I use the call library node . In the *.dll ,there is a function "unsigned long Receive (unsigned long a, unsigned long b,unsigned long , vi_pointer *p) "

struct  vi

{ unsigned int aa;

  unsigned int bb;

  byte cc;

  byte dd;

}   vi_poiter

The fourth parameter is a pointer of struct ,so I setting this as "pointer to handle" and connect this input to a cluster .

BUt this way is useless. The parameter can't transfer correctly.

how can solve this ?

thank you very much