You can't issue your procedure, because in order to CLOSE DATABASES, Foxpro still needs to write information back to the table headers. If the network is down, then it can not see the table headers to update them.
>I have vfp tables on a server / another part of a LAN. I can trap file reading errors when the network goes down, but how can I close my orphaned work areas? CLOSE DATABASES ALL seems to bypass my error handlers. Even this does not work:
>
>PROCEDURE SafelyCloseDatabases
>LOCAL oSafe
>* issues CLOSE DATABASES ALL and traps any error
>oSafe = CREATEOBJECT("DATABASECLOSER")
>ENDPROC
>
>DEFINE CLASS DATABASECLOSER AS CUSTOM
>
> * object class to trap its own error condition
> * (overrides other error methods)
>
> PROCEDURE Init
> CLOSE DATABASES ALL
> ENDPROC
>
> PROCEDURE Error
> LPARAMETER nError, cMethod, nLine
> SET CONSOLE OFF
> SET TALK OFF
> WAIT "Closing database ..." WIND NOWA
> ENDPROC
>
>ENDDEFINE
>
>You would think "DO SafelyCloseDatabases" would handle things well enough, but no luck - an error dialog pops up.
>
>Any suggestions?
>John Burton
I would give my left arm to be ambidextrous!