記事No |
: 911 |
投稿日 |
: 2020/04/14(Tue) 20:14:48 |
投稿者 |
: JG1MOU浜田 |
> Win10 64Bit だと何かと違うのでしょうか。
WM_COPYDATAですが、Windows-Vistaから仕様が変わっていたようです。
HAMLOGを管理者権限、道の駅Get'sをユーザー権限で同時に動作させた
場合、WM_COPYDATAによるプロセス間通信ができない、ということが
判明しました。
権限が逆の場合や、双方がユーザー権限、あるいは双方が管理者権限
の場合は動作しました。
また、HAMLOGのヘルプメニューに道の駅Get'sを登録しておき、起動
させると、これらにかかわらずWM_COPYDATAは動作します。
そのため、HAMLOG起動時に
ChangeWindowMessageFilter(WM_COPYDATA, 1);
を実行させてみたところ、すべて解消されました。
先ほど修正版をアップしました。
なお、このAPIはWindows-Vistaから実装された関数ですので、
Windows-XPでもHAMLOGが動作するよう、動的にインポートしました。
LoadLibrary() とGetProcAddress() です。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!