Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
How to delink the database from a bound l\table
Message
De
02/08/1998 12:31:07
 
 
À
02/08/1998 11:21:56
Information générale
Forum:
Visual FoxPro
Catégorie:
Autre
Divers
Thread ID:
00123268
Message ID:
00123396
Vues:
14
I agree with previous responses in that I don't recommend modifying the DBF with
low level functions. Back in the days of the original VFP beta we were sometimes
forced to do these things. Here are some old notes of mine in reference
to deleting the backlink in the DBF with low level functions. These notes
should be verified very closely reviewed. Also, as with all things
use at your own risk. Again these notes are back from the original
VFP beta.

*: OTHER: ** Must be in subdirectory of table to free
*: Free table have back link of HEX "00"
*: Back-link located after definition of all fields.
*: After the final field definition, there is a
*: delimiter of hex '0D' (asc cd 13). Then the
*: back-link is 263 bytes left padded with hex '00'.
*: Position 8-9 of the header was suppose to indicate
*: the position of the first data record (starting
*: with the delete code. In reviewing the file,
*: this did not appear to correspond to the first record.
*: To determine where the back-link starts, the program
*: starts at position 32 (the first field definition)
*: and loops thru the file for each field definition
*: (32 bytes) searching for the end-field-definitions
*: (hex '0D').
*: All back-links of where the table and Dbc ARE on the
*: same drive are relative addresses of the table in
*: reference to the Dbc. Also the back-link is all
*: lower case letters.
*: All back-links of where the table and Dbc ARE NOT on the
*: same drive are absolute addresses of the table in
*: reference to the Dbc. This includes the drive
*: designation. Also the back-link is in UPPER
*: case letters with the exception of the base name of
*: the Dbc. (i.e. C:\PATH\dbcname.DBC )
-myron kirby-
=======================================================
>>Satya ---
>>
>>
>>I am assuming that there are no 10+ character field names or triggers or other DBC specific stuff for the tables? If this is so, you can open the .DBC as a metadata table and delete the records. Delete where objecttype = Table and Objectname = "tablename" ... also delete all where parentid = parentid for the table record. This should work.
>>
>>
>
>This will work for the dbc side of things, but a dbf that belongs to a database also has a link to the database with a relative path. That's why you don't have to OPEN DATABASE to use rules and other extended information when you USE the table.
>
>Satya- I wouldn't know where to begin modifing a file on the low level to delete its back link...
>Why don't you try creating a VFP COM server that you can call from VB to do the deleting for you using FREE TABLE?
----------------------------------
-myron kirby (mkirby2000@gmail.com)-
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform