他プロセスにウィンドウメッセージでアドレスを送るときに何も考えないで送れるのはWM_SETTEXTとWM_COPYDATA

各プロセスで仮想アドレス空間は独立しているということで、あるプロセスに別のプロセスのアドレスを送ってもそのアドレスにはアクセスできません。
WM_SETTEXTとWM_COPYDATAはAPIがコピーしてアクセスできるようにしてくれていて問題なく送れるようですが、それ以外のメッセージでデータを送るには、NT系だとVirtualAllocEx、9x系だとメモリマップドファイルを使います。
VirtualAllocExを使って、OpenProcessで得たプロセスハンドルでそのプロセスの仮想アドレス空間内のメモリ確保ができるので、そのアドレスを送信すればいいわけです。他プロセスのメモリの内容にアクセスするにはWriteProcessMemory, ReadProcessMemoryを使って出来ます。
メモリマップドファイルを使ったやり方は9x系でしかできないようですが、これを使うと各々のプロセスからアクセスできるアドレスを得られるのでそれを送信すればいいという話らしいです。

関係ないですが(Set)GetDlgItemIntなる関数を最近知りました。文字列を取得して数値変換してっていう作業を全部やってくれるものです。なんてこったい