> > But when I try to transfer the pdb file to the Palm using HTTP and > > try to "install" it using DmCreateDatabaseFromImage, it returns > > error 0x201 (dmErrMemError). > > Have a look at the Palm File Format Spec document. The way DmCDFI and > ExgDBRead know how big each record or resource is, except for the last one, > is by comparing the offsets of adjacent entries in the list of headers. If > your headers aren't right, these could differ by huge amounts - more than > 64K. That would cause the record or resource allocation to fail, resulting > in the error you're seeing. It doesn't matter how much space is available in > the storage heap; such large chunks aren't currently allowed. > > A good way to debug this would be to put the pdb file you receive via HTTP > into a single database record or resource. Then inspect this database using > an on-device database viewer or by HotSyncing it onto the desktop and > inspecting it there using a binary file viewer. You should be able to > determine whether it's a valid pdb file by comparing it with the spec. If > you can get the file onto a desktop, you can try dragging onto a Poser > window. If it's malformed, Poser should complain. > > Note that DmCDFI is limited to (a bit less than) 64K total database size. > ExgDBRead doesn't have this limit. > -- > Danny @ PalmSource >
Thanks, Danny, for your suggestions. I re-checked the file layout, and I'm certain it is ok. I can transfer the generated pdb file to POSE without a problem. Furthermore, I commented out the line that creates the database (DmCreatedDatabaseFromImage()) so that it would use the one I transferred directly to POSE, and it works fine. So the pdb seems to be in the correct format, but something goes wrong when I try to use DmCDFI. I'm curious, how does DmCDFI know where the end of the db is? I transfer the pdb to memory I allocated using MemPtrNew(), so does it assume the pdb is of length MemPtrSize()? BTW, the Palm OS version is 3.5.2 on a Symbol 174x. Thanks for any help, Michael Burk -- -- For information on using the Palm Developer Forums, or to unsubscribe, please see http://www.palmos.com/dev/support/forums/
