2

これまでこれを行う理由がなかったので、次の方法がわかりません。それが可能かどうかもわかりません。

カスタム.Netコントロールを使用してスケジュールデータを表示するコントロールを備えたC#winformsシングルインスタンスアプリケーション(スレーブ)があります。使用中のコントロールを使用できないため、DynamicsNAV / Navision(マスター)からアプリケーションを開く必要があります。

マスターがスレーブアプリを開いたら、スレーブが正しいデータを収集して表示できるように、パラメーターを渡す必要があります。これをコマンドライン引数として渡すことができることはわかっていますが、本当にやりたいのは、必要に応じてスレーブスケジュールを更新できるようにメソッドに渡すことです。Slaveアプリケーションでパブリックメソッドをすでに作成しましたが、それを開いてメソッドを呼び出す方法がわかりません。Master winformsアプリを使用して実用的な例を取得したかったのですが、それも機能しませんでした。

誰かがアドバイスや支援を提供できますか?

ありがとう、カール

4

3 に答える 3

2

Dynamics NAV6R2とRoleTailoredClientを使用している場合は、.NET相互運用機能を使用してWinFormsアプリケーションのメソッドを呼び出すことができます。クラシッククライアントを使用している場合は、同じことを行うためにCOMコンポーネントを実装する必要があります。

このようなシナリオでは、WinFormsアプリは「サーバー」であり、NAVは「クライアント」です。ここMSDNでIpcChannelを使用してこれがどのように機能するかの例を見ることができます。

于 2011-08-23T19:46:49.353 に答える
0

はい、これを行うことができます。通常、これは「プロセス間通信」と呼ばれます。

利用できる方法はたくさんありますが、.Net 3.5以降を使用している限り、おそらくWCF(Windows Communication Foundation)を使用する必要があります。インターネット上には多くのガイドとWCFの紹介があります。

3.5より前のバージョンの.Netを使用している場合は、.Netremotingを調べてください

于 2011-08-22T10:48:09.843 に答える
0

任意の形式(コマンド引数、ファイル、TCP / IPソケットなど)でデータを送信し、データを解析し、別れから作成された引数を使用して作成したコマンドを呼び出すのはどうですか?

于 2011-08-22T10:48:45.443 に答える