wow, what a strange problem.  a user sent me a database that gives an error
when HotSync tries to install it.  POSE gives error 521 (corrupt database).

so i built the Win32 Debug version of POSE, set some breakpoints, and
discovered why the database is considered to be corrupt.  the database
header
says it contains 0x0112 records.  but in fact the database only contains
0x00da records.  by using a hex editor and simply changing the 0x0112 to
0x00da and then trying to install the database, it works perfectly and all
the
data is intact.

what's up with that?  it's not possible for my app to cause that, right??

in case it's relevent: in previous versions of my app, i accidentally used
DmDeleteRecord to delete records but there was no conduit.  i later changed
the app to use DmRemoveRecord to delete records.  is there a bug in HotSync
that can cause this?

note, this user is on Windows.  (i have another database that's corrupt from
a
Mac user, but i haven't had a chance to debug it under POSE yet -- more on
that later.)



Reply via email to