Chuck,
254 is only the default max length returned, not the max possible length. Try this for example:
fh = fopen( "c:\windows\system\vfp500.dll" )
? fh
x = fread( fh, 4000000 )
? len(x)
>The 254 lenght is the max that the low level functions will return.