Thank you all for your respective work and the resulting informative thread, good read.
An aside and for the curious, the value returned by GetObjectIDString is not the same as the ObjectID but it is the same as an entity's ename converted from hex to decimal. Sorry if this is mentioned elsewhere -- if it was I've not seen it so I thought I'd mention it.