[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [xmlblaster-devel] Pocket PC port

Melamed, Tom wrote:

Melamed, Tom wrote:

Hello all,
Does anyone know of a port of the C++ xmlBlaster client to Windows CE,
specifically Pocket PC 2002? I'm currently trying to choose a good


system for a big piece of software development in C++ that will include
clients on Win32, Linux, Pocket PC and eventually hopefully Symbian.

Hi Tom,

i have made a first, tiny quick hack of a C based SOCKET client.
It should compile on Windows and Linux.

It currently supports only synchronous access like

connect, publish, unSubscribe, erase, disconnect

and reports exception nicely back to the client.

If you think this is a way for you to follow please check out the
newest xmlBlaster from cvs. You need to compile the xmlBlaster Java
server as well as i did some relaxing checks in the SOCKET server.

Then try the client:

cd xmlBlaster/demo/c/socket   (see client.c)

Linux:          gcc -Wall -g -o client client.c callbackServer.c -lpthread

Windows:  cl /MT /W3 /Wp64 -D_WINDOWS client.c callbackServer.c ws2_32.lib

Now start xmlBlaster:

java org.xmlBlaster.Main -dump[socket] true -trace[socket] true -call[socket] true -call[core] true

and the C client:


The client connects and does some invocations (see the main() in client.c).

The code is plain C so it should be possible to compile it on all your platforms
and it has only 19 kBytes size on Linux.

If this is a solution for your we would need to:

o Clean up the code
 - move to xmlBlaster/src/c
 - split to files
 - make a lib from it

o Make layers of functionality
 - raw communication
 - adding threading support to allow callbacks in the same process.
 - expat parsing

o Add some demo in xmlBlaster/demo/c

o Wrap it as a C++ protocol plugin to be independend of CORBA and
 use the C++ testsuite for this C implementation



Do all of these platforms support multi threading? Is it possible to crosscompile for Pocket PC from Linux?



Yes all these platforms support multithreading, and they all have something
approaching BSD sockets. I do not know enough about Linux to answer your
second question but MS does offer a free windows based IDE for Pocket PC,
you can get this from:
http://msdn.microsoft.com/vstudio/device/embedded/download.aspx you need the
embedded visual tools 3 and the pocket pc 2002 sdk.

I hope this helps