0

我在可视化 WebGui 中创建一个项目,在加载第一页时,我使用了一个 ActiveXBox 并将其安装到系统中。

现在我想访问已安装在客户端计算机中的客户端 ActiveX 控件中可用的方法。问题是代码在服务器端执行并且代码适用于服务器。

我应该怎么做才能为客户端机器执行代码。

谢谢

4

2 回答 2

0

我们可以通过这种方式实现这一点。由于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);
于 2012-08-23T11:48:14.843 回答
0

@阿米什库马尔,

您发布的代码是服务器端代码,对于 Visual WebGui Web 应用程序来说,如果 ActiveX 控件已安装在服务器上,则该代码将仅在 Web 服务器上运行。如果您使用本地主机作为 IIS Web 服务器运行 Web 应用程序,这可能对您有用(尽管不推荐),但是当 Web 服务器是远程计算机时,此代码不会影响客户端。

对于 Visual WebGui Web 应用程序,您选择了正确的宿主控件 ActiveXBox,它将 ActiveX 控件添加到客户端的浏览器中。为了控制它,您通常在 ActiveXBox 控件上设置“参数”,然后它会更新/联系它所托管的 ActiveX 控件。

可以在此处的 Visual WebGui 的论坛主题之一(控制媒体播放器 ActiveX 控件)中找到有关其工作原理的相当好的示例,并且可以在此处找到更多信息和示例。

帕利

于 2012-08-28T10:37:00.913 回答