SmallBlocks books: SOSE
Symbian OS Explained - Source Code
 

Here you can download complete code examples from "Symbian OS Explained": the Hercules client-server example (from Chapter 12) and the ECOM example (from Chapter 14).

 
Which version of Symbian OS does the code run on?
 

At the time of the book's publication, all code was written to compile and run on Symbian OS 7.0 and 7.0s (found in UIQ2.1 and S60 2nd Edition respectively).

As of October 2006, Jo has updated the client-server example code, from Chapter 12, to compile and run on Symbian OS 9.1 (tested on S60 3rd Edition emulator and phones, but should also work with little or no modification on UIQ 3.0).

Please ensure that you download and use the correct version of the sample code for the platform you require.

 
Chapter 12: The Client-Server Framework in Practice
 
There’s more code than in the book because Jo has implemented an active object server-side to illustrate asynchronous request completion.

Symbian OS 7.0 and 7.0s: Download from here zip hercules-v7.zip (16 KB). 

*** NEW *** Symbian OS 9.1: Download here zip hercules-v9.zip (68 KB).

 
Chapter 14: ECOM
 

The InterfaceDefinition project is a shared library dll which exports the ECOM interface class definition.  Clients, such as InterfaceClient which tests the code, link statically to InterfaceDefinition and call the factory methods on the interface class.  The ECOM interface implementation collection is in ECryptoExample (it is a skeleton example, and simply illustrates two potential classes). The code for a custom resolver is not included, but the standard SDK examples do this, so it's fairly straightforward to adapt this one.  The code is based on the SDK example to ease familiarity, though modified where necessary.

Symbian 7.0 and 7.0s only: Download from zip ecom.zip (12 KB).

   
copyright©2007 meme education