Ken,
I was unable to post these bugs on the website
Talked to MS Support and they confirmed them
Low Level File Functions have a 2 gig limit
Detailed description of the problem
The Low Level file functions (fseek, fopen etc) have a 2 gig limit when working with text files. PS The transaction files I lok at are grouwing 30-40 % per year so the file will be 2.5 - 3gig next year.
The Documentation actually doesn't say anything that I could find
However I really thoght it was unlimited
Steps to reproduce
lnHandle=fopen("over2igfile.txt')
fseek(2590000000) &&returns zero
lcline = fread(lnHandle,100)
?lcLine &&returns all blanks
Observed results
Although the Fopen command will open the 2gig plus file all other commands won't move pase the "2gig" limit ie. the largest integer number fseek won't move past it and fread returns blanks even thougth the data is there...;(
Expected results
lnHandle=fopen("over2igfile.txt')
fseek(2590000000) &&returns 2590000000
lcline = fread(lnHandle,100)
?lcLine &&returns the next 100 charaters from the file
Additional notes and workarounds
The work around suggested by MS Support (Grant S.) was to use the "Scripting.FileSystemObject"
Which is OK but no random access in the file only one way bof -> eof
so can't check for the existance of the footer until the end of the job :(
1st record is header (Contains the date)
***HEADER:01/01/2003*****
Last record is the Footer (Contains the number of records)
***EOF***00036251551****
Visual FoxPro version
Visual FoxPro 8 Service Pack 1
User: "Can you make this small cosmetic change"
Programmer: "Just another total rewrite"