別のアプリの接続先のIPアドレスを、別のIPに変更するにはどうしたらいいのでしょうか?
別アプリにXXXXするというのは、
アクションを『起こされる』アプリA が
アクションを『起こす』アプリB からメッセージを受け取ることで
何でもできます。
1.『接続先を変更せよ』というメッセージを
WM_IPCHANGE = WM_USER + 1
などとする。
2.アプリAの中のウィンドウハンドルを持つ
(外部から取得できるものでないといけません。おそらくApplication.MainForm が最適かと)
コントロールに WM_IPCHANGE のメッセージ関数を追加する。
↓
宣言部
Procedure WMIPCHANGE(var Msg : TMessage); Message WM_IP_CHANGE;
実装部
Prucedure TForm1.WMIPCHANGE(var Msg : TMessage);
Begin
//ここにIPを変更する処理を記述する。
End;
3.アプリBからアプリAに WM_IPCHANGE を送る処理を追加する。
SendMessage(
アプリAメインフォームのハンドル,
WM_IPCHANGE,
IPアドレスの前半分をLONG型で, //これは WMIPCHANGE 引数で受け取れる
IPアドレスの後半分をLONG型で //これは WMIPCHANGE 引数で受け取れる
)
ツイート | ![]() |