You can still use DmQueryRecord to read the record and then once you found the correct record use DmGetRecord/DmReleaseRecord to write and close the record without much change in code. This would correctly set the busy bit as well. You could also just use DmGetRecord and set the dirty bit accordingly. It's a bit of coding, but it really doesn't seem like much.
I'm not sure if writing to a record using DmQueryRecord is causing a problem, but Palm OS Reference says to use this for read-only access. Since your code is having problems with the busy bit, I think it's worth a shot looking into DmGetRecord. -- Tim Kostka http://www.nuprograms.com "Luc Le Blanc" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] > At this point, by far the most current error I get in POSE either > testing or running the Gremlins is "Records left locked" or "Records > left busy" in closed unprotected DB. > > As I don't use DmGetRecord at all (preferring DmQueryRecord, even when I > call DmWrite later), how can I en up leaving records busy? Can this > induce problems when I re-open the DB, like when trying to accesss a > busy record? > > Regarding locked records, how can I tell which records are locked? There > is no such Record Attribute Constant defined. I gather I must have a > MemLock( recordHandle ) not matched by a MemUnlock somewhere. Or can > there be another reason? > > > -- > Luc Le Blanc > > -- For information on using the Palm Developer Forums, or to unsubscribe, please see http://www.palmos.com/dev/support/forums/
