-Snip-
Sorry, for the snip there, Ed, but I had a hard time reading the message in the browser and had to paste it into the Notepad. I think all the HTML tags were messing up the word wrapping.
After reading your response, I'm not sure what you're saying. The C declaration (to me) says pass the parameters by reference (LPSTR is a pointer to a string, for example, so it must be passed by reference). My usage of the WNetGetConnection() function uses the same declaration and passes all by reference including the drive. It works fine.
I think that the confusion may be caused by the LPCSTR and LPSTR types. Here's what the Win32.hlp file says:
LPCSTR: Pointer to a constant null-terminated Windows character string.
LPSTR: Pointer to a null-terminated Windows character string.
Since both are pointers, they should be passed by reference. Whether or not VFP actually passes any string by value to a DLL call, I don't know.
As an aside, I don't believe that it's necessary to add the CHR(0) to any string. I've never done it, and never experienced a problem. I get the feeling (and that's all that this is) that VFP does that for you.
George
Ubi caritas et amor, deus ibi est