Hi George,
>One more thought. Are you sure that a string is always passed by reference?
Yep, absolutely. If you use STRING, instead of STRING@, VFP copies the string into a temporary buffer and passes the address of this buffer to the API function. With STRING@ it passes a pointer to the actual string (which is locked for the duration of the API call).
Christof
--
Christof