掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
VB.netとVB6間のSendMessageについて(移管) (ID:143292)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
詳しい回答ありがとうございます。 >(1) VB6 側では、WM_COPYDATA 自体が受け取れないのでしょうか? はい、イベントすら発生しないです。 >(2) VB2010 側で、Option Strict On を宣言した状態の EXE の場合、XP で動作しますか? 宣言した時点で、SendMessage絡みであちこちエラーがでました。 >(3) FindWindow で取得した HWND は、目的の VB6 Form を指し示していましたか? HWNDは受信ソフトが起動しているときのみ0以外の値がとれているのを確認しました。 >(4) WM_COPYDATA 送信時の SendMessage の戻り値は =0 でしたか? ≠0 でしたか? → 正常時は 0 です。 .net側のSendMessage の戻り値は =0 でした。 >(5) COPYDATASTRUCT のメモリ内容を確認してみてください。Unicode テキストとして 格納されていたり、サイズ指定が間違っていたりはしませんか? サイズも大丈夫そうでした。 ここまでいろいろ調べていたら、まず、サンプル版ソフトがVistaのUACを有効にすると動くようになりました。 自作の.net版は値渡しの件とIntPtr への修正等でサンプルに近づけてみます。まる写しでもいいのですが、動きを学習してみます。 VB6 側の TextBox に WM_SETTEXT のほうがむしろ理想なのでやってみます。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.