At 12:04 2003-2-3 -0800, you wrote:
Palm OS shared libraries are done using the "Palm OS code resource" type (in V7/V8) and the Palm OS shared library type in V9/PalmOS68K linker. Static libraries are for collections of unlinked code, like the runtime library.I'm confused about some symantics and the project settings for building an exglib in CW. My ExgLib must register to receive a certain type of data, process it, and then send the processed data back to the calling app.Of the three CW project setting choices: Application, Static Library, or Code Resource, my first guess would be to create a "Palm OS Static Library" because the Companion docs on ExgLib state that Exchange Libraries are "Palm OS Shared libraries". However, other posts on this forum talk about building Exchange Libraries as applications of type 'appl'.
I just looked at this. Yes, its quite confusing. For this app, they actually implemented a library inside the application, locking down the application's code so that it won't move. This technique can work, and it seems you need a companion or co-resident application to get the notifications that allow you to register yourself with the exchange manager, so this project might not be a bad place to start.The Host Xfer example is not a great example in this respect because one CW project is used to build both an ExgLib and an application, and it's not clear how two different types of prc's are built from one project.
I'd read on implementing normal shared libraries first, however, since those techniques are used in this code, even though it isn't building a separate shared library file.
The HostTransfer example is both an app and a library. Once you understand how primitive shared library support is on Palm OS, you can get an idea of why this is possible.Is that because those apps are not really ExgLibs (with the full Open, Close, Sleep, etc Dispatch Tables), but are instead just "Exchange Applications" that register with the ExgMgr at sync/reset time? Is that just a symantic difference, or is there an important distinction between using a library with dispatch table versus an app that handles exgmgr launch codes?
--
Ben Combee <[EMAIL PROTECTED]>
CodeWarrior for Palm OS technical lead
Palm OS programming help @ www.palmoswerks.com
--
For information on using the Palm Developer Forums, or to unsubscribe, please see http://www.palmos.com/dev/support/forums/
