Visual WebGui でプロジェクトを作成しています。最初のページの読み込み時に、ActiveXBox を取得してシステムにインストールしました。
ここで、クライアント マシンに既にインストールされているクライアント側の ActiveX コントロールで使用可能なメソッドにアクセスしたいと考えています。問題は、コードがサーバー側で実行され、コードがサーバーで機能することです。
クライアント マシンでコードが実行されるようにするにはどうすればよいですか。
ありがとう
Visual WebGui でプロジェクトを作成しています。最初のページの読み込み時に、ActiveXBox を取得してシステムにインストールしました。
ここで、クライアント マシンに既にインストールされているクライアント側の ActiveX コントロールで使用可能なメソッドにアクセスしたいと考えています。問題は、コードがサーバー側で実行され、コードがサーバーで機能することです。
クライアント マシンでコードが実行されるようにするにはどうすればよいですか。
ありがとう
このようにしてこれを達成することができます。インストール後、ActiveXコントロールがcomに登録されるため。その中のメソッドを呼び出すことができます。
Type ComType;
object ComObject;
Guid myGuid1 = new Guid("2ABF5C37-ABC3-4600-8115-4F7E6F64C765");
ComType = Type.GetTypeFromCLSID(myGuid1);
ComObject = Activator.CreateInstance(ComType);
object[] args = new object[1];
args[0] = arg1;
ComType.InvokeMember("Your Method Name", BindingFlags.InvokeMethod, null, ComObject, args);
@アーミッシュ・クマール、
投稿したコードはサーバー側のコードです。これは、Visual WebGui Web アプリケーションの場合、ActiveX コントロールがサーバーにインストールされている場合、コードが Web サーバーでのみ実行されることを意味します。ローカル ホストを IIS Web サーバーとして使用して Web アプリケーションを実行する場合は、これでうまくいく可能性がありますが (推奨はされません)、Web サーバーがリモート マシンの場合、このコードはクライアントには影響しません。
Visual WebGui Web アプリケーションの場合、クライアントのブラウザに ActiveX コントロールを追加する正しいホスティング コントロール ActiveXBox を選択しました。それを制御するには、通常、ActiveXBox コントロールに「パラメーター」を設定します。これにより、ホストしている ActiveX コントロールが更新/接続されます。
Visual WebGuiのフォーラム スレッドの 1 つ (メディア プレーヤーの ActiveX コントロールの制御) で、それがどのように機能するかのかなり良い例を見つけることができます。詳細な情報とサンプルは、ここで見つけることができます。
パリ