Thanks Pete, this will make live a lot easier!
Your implementation however shows the same anomalies as my C# wrapper (no. 99 in this topic): the ngx seems dead. I tracked it down so far that
every other time the plane gets loaded it does not send SIMCONNECT_RECV_ID_CLIENT_DATA messages to the dispatch proc.
E.g., using that nice fsuicp feature on the logging tab I have offset 6570 on screen, toggle the gear lever, the value changes with it. Reload the plane, nope. Reload the plane, yes! And that goes in the same pace as the lights on my mip with just the C# wrapper and a IOWarrior usb board. (Yes, I also tried without my C# wrapper running :).
So I don't think it's fsuicp, I still hoped to find something on my side, but now I think pmdg needs a call about this. I "fixed" it by the way, by detecting a ngx load, disconnect and reconnect to simconnect.
I know it's not only my machine since I had a couple of mails about this issue from other people.
Hth and thanks again for the update,
Johan Knol