I'm writing some beaming code, and do the following in the send portion:

    MemSet(&s, sizeof(s), 0);
    s.target  = APPL_CREATOR;   /* creator code for my app */
    s.count   = count;          /* non-zero, probably more than one */
    s.description = description;
    error = ExgPut(&s);

I need to do a little more than the standard system response when asking the
user if he would like to receive records.  So I do some processing when I
get the launch code sysAppLaunchCmdExgAskUser and present my own dialog.
It's at this point that I do this:

    ExgAskParamType* ask = (ExgAskParamType*) cmdPBP;    /*cmdPBP from
PilotMain()*/

    if (!ask->socketP->count) {        /* is count zero? */
        DEVICEMSG("Receiving zero records? Get real...");
        ask->result = exgAskCancel;
    }

DEVICEMSG() is just a wrapper for FrmCustomAlert().  Basically, I'm getting
this "zero records" alert every time, which seems to indicate that somewhere
along the line ask->socketP->count on the receiving device is either not
copied from the sending device or simply assumed to be zero.  I tried
putting my count into s.time (corresponding to ask->socketP->time) as well,
with the same result.

Anyone have any ideas on this?  I suppose if I must, I can try returning
exgAskOk from the sysAppLaunchCmdExgAskUser launch code and put my custom
beam receive dialog in the sysAppLaunchCmdExgReceiveData handler.

---- --- -- -
Matthew D Moss
[EMAIL PROTECTED]


Reply via email to