simply the the .dll function is written in C++ and 2 string type arguments are passed through it. and it has a long return type.
actually this .dll behaves fine with calling from VB6.0 but trying with perl, interpreter crashes in its call or return 0 on passing argument type mentioned as 'P'(Pointer to string).