0

My platform is Visual Studio 2012 and I need to implement IPC between 32 bit and 64 bit processes. I have source code for all binaries but for several reasons one processes should remain 32 bit. I have looked into boost manual and it seems that Boost.Interprocess has everything I need - STL like structures and synchronization object. But couldn't find in docs anything about IPC between 32 bit and 64 bit processes.

Thank you.

Preet Sangha
  • 64,563
  • 18
  • 145
  • 216
pic11
  • 14,267
  • 21
  • 83
  • 119
  • I typed `Boost.InterProcess 32 and 64` into google and got this as the first hit: https://svn.boost.org/trac/boost/ticket/5230 and lots of others. Some say it can't be done easily and that you should consider another IPC - like text. – Preet Sangha May 18 '13 at 10:17

2 Answers2

0

Some IPC methods between 32 and 64 bit processes on Windows don't work, but sockets should work since they aren't dependent on the bitness of the connection.

AshleysBrain
  • 22,335
  • 15
  • 88
  • 124
0

COM can also be used for IPC between 32-bit and 64-bit processes. If you use the IDL and stick to compatible parameter types it will marshal your parameters and everything. For large blocks of data, pass a handle that can be duplicated and used with MapViewOfFile and you won't have to make a copy of the data. Be careful of thread apartment types.

Dithermaster
  • 6,223
  • 1
  • 12
  • 20