Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# DDE:C“NDde DdeClient.请求频繁返回”;没有数据;?_C#_Dde - Fatal编程技术网

C# DDE:C“NDde DdeClient.请求频繁返回”;没有数据;?

C# DDE:C“NDde DdeClient.请求频繁返回”;没有数据;?,c#,dde,C#,Dde,使用NDde项目(http://ndde.codeplex.com/)从C#读取DDE服务器中的数据。DdeClient方法Request()通常会返回“#无数据”。再次调用完全相同的方法,将返回数据。为什么会发生这种情况 如何解决?注意:我尝试将Request()调用放入一个循环中,如果没有返回数据,那么它将重试给定次数。然而,即使循环10次数据,有时也会返回“无数据”。但是,如果设置断点,数据几乎总是在第二次返回。我猜这是因为请求之间的间隔时间较长。为什么不使用advice功能而不是Requ

使用NDde项目(http://ndde.codeplex.com/)从C#读取DDE服务器中的数据。DdeClient方法Request()通常会返回“#无数据”。再次调用完全相同的方法,将返回数据。为什么会发生这种情况


如何解决?注意:我尝试将Request()调用放入一个循环中,如果没有返回数据,那么它将重试给定次数。然而,即使循环10次数据,有时也会返回“无数据”。但是,如果设置断点,数据几乎总是在第二次返回。我猜这是因为请求之间的间隔时间较长。

为什么不使用advice功能而不是Request。要做到这一点,请订阅Advise活动

client.Advise += OnAdvise;
其中OnAdvise是事件处理程序方法。然后启动advice循环

client.StartAdvise("myitem", 1, true, 60000);

现在,当数据可用时,Advise事件将触发,您将从EventArgs获取数据。

如果我不得不猜测,我会说DDE服务器可能存在计时问题。您是否尝试了
请求
操作之间的时间间隔