...I think I may have at least partly found out what's going on here...
the following is from:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbceide/htm/methods_40.asp------
If you receive data as a string, the bytes are converted from ASCII characters to Unicode characters. The conversion will stop if the data contains a NULL byte (ASCII code 0)
------
granted, this page is talking about eMbedded Visual Basic 3.0 but I have to assume the Winsock control is the same as the one I'm using. after reading this, it is clear that this is exactly my problem..GetData() is encountering the NULL and simply stops processing, which leaves the rest of lcData set to spaces since they never got overwritten from the original SPACE(bytestotal)..
I also found another article stating that Foxpro didn't get byte-array support until 8.0. I have a feeling I am in trouble here as upgrading to 8.0 is not an option and it doesn't seem that GetData() can handle NULL's...