Hi Jim,
Thanks for the info. The solutions they provided worked. The index create utility is actually a small portion of a module that does more than create new indices. First I create a new table with the correct structure (based on an array under its own procedure in a file that was created in a different program that read from good tables), then I create the indices on that new table. When finished we read in the data from the old table. This is basically for use when we add fields to a table or add an index tag. We've used it with corrupted tables before ok. I just neglected to allow for filters on the index tag in my expression. We also (if necessary) call the foxfix5.dll to repair the tables on the fly. If the dll cannot repair the table, then the table is sent to us via ftp for a full repair using foxfix5. This is only because I now work for a company that would rather spend $ on development/testing time instead of investing that money in a proven product like SDT :0( Of course the same requirement could apply for those contractors where investing in a good tool is not feasible until further down the road.
Tracy
>Tracy,
>
>Cetin and Sergey have told how to get the info you want from the index file. I would just caution you that if, in fact, you are writing an index
repair utility you are inviting trouble by depending on the index file header being intact. If the index is bad and needs repair there is a pretty high chance that the index header is corrupt adn you will be recreating a corrupt index.
.·*´¨)
.·`TCH
(..·*
010000110101001101101000011000010111001001110000010011110111001001000010011101010111001101110100
"When the debate is lost, slander becomes the tool of the loser." - Socrates
Vita contingit, Vive cum eo. (Life Happens, Live With it.)
"Life is not measured by the number of breaths we take, but by the moments that take our breath away." -- author unknown
"De omnibus dubitandum"