WM_COPYDATA SendMessage - 它可以发送大字符串吗?

Raf*_*cci 10 delphi string ipc wm-copydata

我将不得不WM_COPYDATA在2个应用程序之间实现IPC.我似乎在互联网上的样本,但他们都只发送少于255个字符的字符串.

我想发一个大字符串(超过1k)到另一个进程使用WM_COPYDATA.可能吗?有什么限制?我应该发送流而不是字符串或记录吗?

这两个应用程序都是由我使用Delphi 2010开发的.

Dav*_*nan 8

没有限制.您可以使用,根据可用的内存限制发送尽可能大的数据WM_COPYDATA.

  • 如果你真的需要发送2GB的数据,你最好只使用临时文件并传递文件名,或者使用COM的`IDataObject`和`IStream`接口. (2认同)