0

我在 Windows 服务中托管 netTcpBinding WCF 服务器。我能够通过我自己的客户端成功连接到它的远程调用而没有问题,所以我知道它运行良好。

但是,当我尝试通过第三方解决方案的 .NET 插件连接到同一服务时,我会生成“System.Security.Permissions.EnvironmentPermission”类型权限的异常请求。

从第三方应用程序加载的我的客户端插件正在执行以下操作:

        EndpointAddress endpointAdress = new EndpointAddress("net.tcp://localhost:2001/MyWCFServer/Server");

        NetTcpBinding binding1 = new NetTcpBinding();

        CTraderClient  _client = new CTraderClient(new InstanceContext(this), binding1, endpointAdress);

         _client.RegisterBotInstance("GBPUSD", 30);

其中 RegisterBotInstance 是对 WCF 服务器公开的远程方法的调用。

当我调用此远程方法 _client.RegisterBotInstance("GBPUSD", 30); 时,会引发以下异常:

附加信息:请求“System.Security.Permissions.EnvironmentPermission, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”类型的权限失败。

操作:System.Security.Permissions.SecurityAction.Demand

谁能想到解决这个问题?

顺便说一句,第三方应用程序是 cAlgo,以防万一。

这个第三方软件似乎存在一些信任问题。

4

1 回答 1

0

解决方案是将其添加到插件标头中:

AccessRights = AccessRights.FullAccess

于 2014-12-16T19:06:15.833 回答