Есть ли простой способ сериализации данных в С++ (либо в xml, либо в двоичном виде), а затем десериализовать данные на С#?
Я работаю с некоторыми удаленными машинами WINNT, которые не будут запускаться .Net. Мое серверное приложение написано целиком на С#, поэтому я хочу простой способ обмена простыми данными (в основном, ключевыми парами значений и, возможно, некоторым представлением набора результатов SQL). Я полагаю, что лучший способ - записать данные в xml в некотором предопределенном формате на клиенте, перенести xml файл на мой сервер и иметь оболочку С#, чтобы прочитать xml в полезный объект С#.
Клиент и сервер обмениваются данными через tcp-соединение, и я действительно хочу, чтобы сериализовать данные в памяти на клиенте, передать двоичные данные через сокет в поток aС# памяти, который я могу десериализовать в aС# -объект (исключая создание файла, передачу и т.д.), но я не думаю, что что-то подобное существует. Не стесняйтесь просвещать меня.
Изменить
Я знаю, что могу создать структуру в приложении С++ и определить ее в С# и передать данные таким образом, но в моей голове, похоже, я ограничиваю то, что может быть отправлено. Мне нужно установить предопределенные размеры для объектов и т.д.