Roger,

>how I can most easily get my program to with Palm databases and VFS without 
>having to write two completely separate code bases?

The reason two completely separate code bases are required is that the two
storage paradigms are completely different.  The one does not have a real file
system and must store stuff in records under 64K bytes each, and the other has a
filesystem but only supports filestreams instead of individual records.

There are APIs for reading a specific record within a pdb stored on the VFS
simply because its location can be computed and the data extracted relatively
easily.  And you could code your own routine to update a specific record
provided you did not change the record length (either shorter or longer), or
change the sequence of the records.  While easy to do so with internal pdb
databases, doing so under VFS would require completely rewritting the entire
database to a new location on the card.

Not only is that terribly inefficient, but you want to minimize the number of
writes to a VFS card to avoid shortening their life span.

Normally, by far the best way to handle it is to "import" the database from the
VFS to the device, make the changes to the database using regular Dm... calls,
then export the database back to the VFS when you are done.  That reduces the
copying and rewrite to a single instance.

Doug

-- 
For information on using the PalmSource Developer Forums, or to unsubscribe, 
please see http://www.palmos.com/dev/support/forums/

Reply via email to