It is all quite complicated. You can have an exchange library, or an
application that looks like an exchange library. It just depends on how you
wish to have these things install, lock, and register themselves. A lot can
be learned by looking through the Exchange Manager OS code.

Here is one tip I found...

>...I finally grubbed through the OS source and found that the exchange
>manager will only use databases with type 'appl' or 'exgl', not 'libr'!
>

Matt

----- Original Message -----
From: "Ben Combee" <[EMAIL PROTECTED]>
To: "Palm Developer Forum" <[EMAIL PROTECTED]>
Sent: Tuesday, February 04, 2003 9:27 AM
Subject: Re: Exchange Library project settings confusion


> At 12:04 2003-2-3 -0800, you wrote:
> >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'.
>
> 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.
>
> >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 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.
>
> 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.
>
> >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?
>
> 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.
>
> --
> 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/
>


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

Reply via email to