Add 32 and 64 bit FSUIPC library projects

Summary:
So far we were linking against the prebuilt FSUIPC user library,
compiled with VS2010 many years ago. The source of this user library is
part of the FSUIPC SDK, so we can benefit from modern compilers and
include it into our source tree.
This version contains some very small wide char fixes compared to the
official FSUIPC SDK source.
It also includes the new 64 bit version.

Reviewers: #swift_pilot_client, msutcliffe

Reviewed By: #swift_pilot_client, msutcliffe

Differential Revision: https://dev.swift-project.org/D29
This commit is contained in:
Roland Winklmeier
2017-06-23 00:04:34 +02:00
parent a00108af35
commit 5a40e86ecf
19 changed files with 1177 additions and 31 deletions

View File

@@ -0,0 +1,32 @@
#include <windows.h>
#include "FSUIPC_User64.h"
#define FS6IPC_MESSAGE_SUCCESS 1
#define FS6IPC_MESSAGE_FAILURE 0
// IPC message types
#define F64IPC_READSTATEDATA_ID 4
#define FS6IPC_WRITESTATEDATA_ID 2
#pragma pack (push, r1, 1)
// read request structure
typedef struct tagF64IPC_READSTATEDATA_HDR
{
DWORD dwId; // F64IPC_READSTATEDATA_ID
DWORD dwOffset; // state table offset
DWORD nBytes; // number of bytes of state data to read
void* pDest; // destination buffer for data (client use only)
} F64IPC_READSTATEDATA_HDR;
// write request structure
typedef struct tagFS6IPC_WRITESTATEDATA_HDR
{
DWORD dwId; // FS6IPC_WRITESTATEDATA_ID
DWORD dwOffset; // state table offset
DWORD nBytes; // number of bytes of state data to write
} FS6IPC_WRITESTATEDATA_HDR;
#pragma pack (pop, r1)