我正在开发一个股票市场软件 (AmiBroker) 插件,其中我必须调用一个 COM 对象才能检索活动符号。即,当用户请求特定符号时,我必须向服务器发送请求以获取股票数据。因此,AmiBroker 使用 COM 公开了一些函数,允许检索已请求的符号。
代码
System.Timers.Timer tm = new Timer(1000);
tm.Elapsed += delagate(sender, e)
{
dynamic broker = Activator.CreateInstance(Type.GetTypeFromProgID("Broker.Application", true));
hashtable.Add(uniquernd, broker.GetActiveSymbols());
Marshal.ReleaseCOMObject(broker);
}
注意:这就是我在 C# 中实现逻辑的方式(不要在此代码中找到语法错误)
有时当我关闭 AmiBroker 应用程序时,每个 COM 对象都会成功处理。但有时它确实停留在导致故障的过程中。有没有其他方法可以通过确保每次都处理对象来实现这一点?