喫茶XRAYトップページ
[13663]
コンテキストメニュー コンポーネント、Delphi11.3対応について
返信
削除
2023/8/13 (日) 01:17:00
kuze
Mr.XRAY様
いつもお世話になっております。
愛用している plContextMenu.pasが、Delphi10.4から、11.3に移行したとたんに
不安定となりました。(OS:Win11 64bit)
原因:Delphi11になってから型に対しての動作が厳密になったためのようです。
UINT型に、Integerの負の値が代入されるケースで範囲外エラーの例外が多発します。
また、64bitでコンパイルするとさらにエラーが多発しました。
コンパイルエラーは出ないのに、実行時エラーとなるのが厄介。
対策:Integerを、UINT、UINT_PTR、INT_PTRに適宜書きかえる。
特に64bit対応のため、SendToProcをWParam: UINT_PTR; LParam: INT_PTRとするのが、重要でした。
添付ファイルの"kuze"の部分を確認いただければと思います。
■添付ファイル plcontextmenu_ku.zip
[13667]
Re:コンテキストメニュー コンポーネント、Delphi11.3対応について
返信
削除
2023/8/23 (水) 17:43:55
Mr.XRAY
kuzeさん,どうもです.
情報サンクスです.
しかも,,修正まで.
> 原因:Delphi11になってから型に対しての動作が厳密になったためのようです。
私のコーディングが手抜きのせいもあるかも知れません.
以前は,64 ビットの確認もするようにしていましたが,
特にサンプルるプログラムはほとんど動作確認していません.
修正していただいたコード,そのまま利用させて頂きます.
※ だいあ゛留守にしてしまいました.ハハハッ.
[13671]
Re2:コンテキストメニュー コンポーネント、Delphi11.3対応について
返信
削除
2023/8/23 (水) 23:20:15
kuze
Mr.XRAY様
お役に立ててよかったです。
多くの、有用なコンポーネントを公開していただきありがとうございます。
INCM/CMT
Cyclamen v3.82