WM_COPYDATA を使用したプロセス間通信が VSCode でうまくいかない
解決したいこと
C#で、WM_COPYDATA を使用したプロセス間通信を行おうとしています。
ネット上に出ている記事を参考にVisual studio 2022 community で
作成したものは無事通信ができました。
しかしながら、事情があって Visual studio code に 上の
通信成功したソースを持ってきてこれを実行してみましたが
通信ができません。
調べてみると、受信側に WM_COPYDATA のメッセージが届いて
いないように見受けられます(受信側フォームの オーバライドした WndProc で
case WM_COPYDATA 内に設定したブレークポイントが引っかからない)。
何か考えられる原因はあるでしょうか。ご教示いただければ幸いです。
Visual studio 2022 comunity で作成した 送信側フォームと
Visual studio code で作成した 受信側フォームとを組み合わせて
みましたが、やはり通信できません。
その逆(送信側 vscode, 受信側 community)も同様でした。
ちなみに、csproj を見てみると、TargetFramework は
Visual studio 2022 comunity 側は
v4.7.2
Visual studio code 側は
net8.0-windows
となっています。
自分で試したこと
送信側のフォーム上で、受信側のフォームID は正しく取得できている。
送信側でMarshal.StringToHGlobalAnsiでCOPYDATASTRUCT32 の lpData には
それらしい数値が設定される。
(ソースコードは、ほぼ https://note.com/marupeke296/n/n5e126185f628 の
ものを使用しましたので、ここへの記載は控えておきます。)