Code: Select all
[StructLayout(LayoutKind.Sequential, Pack = 1)]
struct PMDG_747QOTSII_Data { ...};
Code: Select all
simconnect.MapClientDataNameToID(PMDG_747QOTSII_DATA_NAME, PMDG_747QoTSII.PMDG_747QOTSII_DATA_ID);
simconnect.AddToClientDataDefinition(PMDG_747QoTSII.PMDG_747QOTSII_DATA_DEFINITION, 0, (uint) Marshal.SizeOf(typeof(PMDG_747QOTSII_Data)), 0, 0);
simconnect.RequestClientData( PMDG_747QoTSII.PMDG_747QOTSII_DATA_ID,
DATAREQUEST_ID.DATA_REQUEST,
PMDG_747QoTSII.PMDG_747QOTSII_DATA_DEFINITION,
SIMCONNECT_CLIENT_DATA_PERIOD.ON_SET,
SIMCONNECT_CLIENT_DATA_REQUEST_FLAG.CHANGED,
0, 0, 0);
simconnect.OnRecvClientData += new SimConnect.RecvClientDataEventHandler(simconnect_OnRecvClientData);
Code: Select all
void simconnect_OnRecvClientData(SimConnect sender, SIMCONNECT_RECV_CLIENT_DATA data)
{
switch ((DATAREQUEST_ID)data.dwRequestID)
{
case DATAREQUEST_ID.DATA_REQUEST:
// I reach this point ok.
// How do I read the data?
// I have tried the following but things do not work.
PMDG_747QOTSII_Data s1 = (PMDG_747QOTSII_Data)data.dwData[0]; //this does not work!!
displayText("LTS_Taxi_Sw_ON: " + s1.LTS_Taxi_Sw_ON);
break;
default:
displayText("Unknown request ID: " + data.dwRequestID);
break;
}
}
Would some kind soul set me straight?
Cheers,
Scott434/ScottB26