前提・実現したいこと
VB.NET もしくは C# から既に起動しているDelphi7のプログラムに
アクションを起こしDelphi7のイベントを実行させたい。
もしくは、Delphi7のプログラムで特定のファイルやメモリ領域が変更
されたことを察知し、変更されたと同時に実行されるトリガーのような
ものを作成したい。
具体的には、とあるメーカーが提供しているDLLがDelphi7に対応して
おり、今まではDLLを通してDlehpi7のイベントを直接起こして値を
セットしていたのですが、バージョンアップとともにDLLがDelphi7へ
の対応を無くして、NET系のプログラムのみになってしまったため、
DLLからNET系プログラムに渡った情報を即座にDelphi7のプログラム
へ渡す方法を模索しております。
条件
Delphi7は起動している状態です。
今はVB.NETからテキストに書き出してDelphi7のプロセスを一度kill
してから再度起動し、起動時点でDelphi7がテキストの内容を読み込む
ことで実現しておりますが、これだとサブ画面との親子の関係が切れて
しまったりと不都合があるためこの方法以外を探しています。
VBのプログラムは自由に書き換え可能です。
Delphi7のプログラムも書き換え可能ですが総コード量的にNET系のプロ
グラムへの置換やDlehipi自体のバージョンアップは難しいです。
調べたこと
Delphi7の方でUDPかTCPの特定ポートで待ち受けるスレッドを作成して、
VB.NETからlocalhostの特定ポートにデータを送ることでDelphi7の
イベントを実行できないか。
Delphi 素朴なソケット通信をしたい
https://qiita.com/himajin_sekky/items/ffd5c5c854328287ed2d
Delphi XEのフォルダ監視コンポーネントを利用できないか。
Delphi Programming / Object Pascal
http://mrxray.on.coocan.jp/Delphi/plSamples/815_FolderWatcher.htm
あいにくこういった.NETとDelphiなどの異種類でのプログラム連携の作法に乏し
く上記のような方向性で実行していいかも判断しかねる状況です。
何か他にいい方法や上記の方法で実装しているケースなどありましたらアドバイス
いただけると幸いです。
回答3件
あなたの回答
tips
プレビュー