Я думаю, вам следует использовать библиотеку сериализации, которая имеет интерфейс для C++
и C#
.
Оба Буферы протокола от Google или Thrift от Facebook поддерживают эти два языка.
Это определенно сделает все намного проще и безопаснее для вас.
Если вы решите изменить переданные типы данных (т.е. использовать вместо этого целые числа, структуры и т. д.)необработанных строк), использование библиотеки сериализации - путь.