It is recommended that a provider use the NPSCopyString function to copy its string results into the buffers passed to it by MPR, because there are the various combinations of NULL pointers, zero length buffers, and buffer too small to be dealt with. Using NPSCopyString ensures the same behavior to the application for every NP.