Recreating dBase indexes, Delphi 1.0

Thanks for the replies last time but,I AM NOT USING PARADOX

If an index is corrupt (as opposed to just out of date) does anyone know
how to recreate them programatically.

I cannot use a SQL/dbi function as I get a BDE error upon trying to open
the table to do so.  Database desktop has the option to detach a corrupt
index but I'm not sure how to recreate it myself...
I have found the binary bit in the header of the file and can read it -
but do not know how to write over it using Delphi/Pascal.

Any ideas? - Please eMail as it takes forever to load these newsgroups!
Much appreciated.