binaryDecode with variable number of parameters
Mark Schonewille
m.schonewille at economy-x-talk.com
Sun Feb 19 21:05:56 EST 2012
Hi Len,
You could use a repeat loop, similar to
repeat with x = 1 to myNrOfWords
get binaryDecode("h*",word x of myData,myTempVar)
put myTempVar into myArray[x]
end repeat
--
Kind regards,
Mark Schonewille
Economy-x-Talk
Http://economy-x-talk.com
Share the clipboard of your computer over a local network with Clipboard Link http://clipboardlink.economy-x-talk.com
Op 20 feb. 2012 om 01:08 heeft Len Morgan <len-morgan at crcom.net> het volgende geschreven:
> Related to my problem with reading binary data from a socket, how do I handle a variable number of numbers that will come in with binaryDecode?
>
> To explain, I get a number in the packet header that tells me there are x number of bytes to follow in this packet. I know the first byte is a remote ID and the second is a function code. Based on the function code, the number of two byte integers that follows is going to be (the number of bytes in the message / 2) - 1 (for the function code and remote ID). One time there might be 2 integers to follow, another there might be 10. There is a "number of words" number that is part of the command so I know how many words there will be but the binaryDecode function requires that I specify a name for each variable that is going to get a value.
>
> Ideally, I'd like to put all of these words in an array so I can process them, but this doesn't seem to be an option for the binaryDecode command. Should I build up a string that has "...,var[0],var[1],...,var[x] in it to account for all the variables and then use a "do" or "dispatch" to actually do the binaryDecode?
>
> Also, if I use var[0], var[1], etc., do I need to create ALL of the indexes first (for binaryDecode) or will just creating the first one (var[0]) be sufficient?
>
> Thanks,
>
> len morgan
>
More information about the use-livecode
mailing list