>>I've been using the following for years (since the DOS days...)
>>
>>PARAMETERS filename
>>fh = FOPEN(filename, 12)
>>IF fh > 0
>> =FCLOSE(fh)
>> RETURN (ok to use exclusively...)
>>ELSE
>> RETURN (file is in use, try again later...)
>>ENDIF
>>
>>Hope this helps,
>>
>>-Rick
>
>This can fail. Another user can grab the table between the RETURN and USE EXCLUSIVE. I'm not saying it will, but the possibility is there.
You could reduce the probability of this by an incredibly small amount by doing the close and return at the same time:
RETURN fh > 0 AND FCLOSE(fh)
This way the close does not happen until the very last moment. And because VFP evaluates expressions from left to right and there is an AND, if the file was not opened then the FCLOSE() will not be attempted.
censored.