You're going to have to do something *very* custom for the not-cradled case,
to be general. While on the cradle, you can look up the functions in the
Remote API, or RAPI. It will allow you to launch a program that's on the
device under the control of a program running on the connected PC.
OpenNETCF, among other things, has a managed code wrapper for the RAPI API.
www.opennetcf.org. Since you're using an older device type, you could use
ActiveSync 3.8 and use RAPI over the network to do the same thing, too,
using the same API, but AS3.8 really isn't supported, because of security
problems, by MS any more. ActiveSync 4.x doesn't support network sync
between ordinary desktop PCs and devices.
For not cradled, you could create a server program running on the device to
which the PC could connect over the network (WinSock sockets-type
application), and send it a command to do something. There are standard
methods that you could use to create this server (make it use the Telnet
protocol and port, for example). This *will* be a security problem and
there's a problem knowing what the device's IP address is, particularly if
it's a phone. There are no good solutions for this problem (you could have
a server where a device calls up and registers its name and IP address any
time it changes and your PC program could do a lookup by name to find the
address, etc.), so I think you're going to have to provide some more details
about what's OK, what's not OK, where 'on the network' the device will be,
etc.
Paul T.