あるアプリケーションから別のアプリケーションにwin APIのデータを転送する必要があります。 は私が持っている1つのアプリでは:別であるWindowsアプリケーションから別のWindowsアプリケーションにデータをコピーするにはどうすればよいですか?
msg_number=RegisterWindowMessage(MY_WINDOW_MSG);
cp_struct.lpData = &fig;
cp_struct.dwData = sizeof(Figure);
cp_struct.cbData = 6666;
SendMessage(HWND_BROADCAST, msg_number, 0, (LPARAM)&cp_struct);
:
case WM_CREATE:
{
msg_number=RegisterWindowMessage(TEXT(MY_WINDOW_MSG));
}
if(msg_number != 0 && msg == msg_number)
{
reciver_struct = (PCOPYDATASTRUCT)(lParam);
printf("get it %d\n", reciver_struct->cbData);
return 0;
}
しかし、この受信機アプリケーションでは、私はアプリは私の構造体からの値でメッセージを得なくことがわかります。
問題は、異なるプロセスがお互いのメモリを参照できないことです。プロセスの境界を越えてメモリをマーシャリングする必要があります。あなたのメッセージはそれをしません。 WM_COPYDATAは行います。 –