declare FunctionX ; string @cBuffer cBuffer = replicate( chr(0), 256 ) && allocate the buffer and initialize it FunctionX( @cBuffer )>Thanks for your input. I downloaded the two flls and will give them a shot. Looking through them, it appears that they both support the callback functions which solves question number 1. However, I don't see anything in them that would address my second question regarding the translation of a pointer. Am I overlooking something or do you have any ideas on how I might handle that part of the equation?