Re: [问题] 凯基API报价与下单整合异常

楼主: xlehoo (莱诺)   2015-09-18 11:19:19
谢谢善心人士提醒,也谢谢stockwinner愿意花时间帮后进解释凯基API的状况。
测试环境的IP在报价与下单是相同的。
至于package.dll这个在用的时候的确有些疑问。
初步先试着用try catch方式回避这个问题
最差的情况就是用范例程式让两者分离
谢谢帮忙
※ 引述《stockwinner (期股相当)》之铭言:
: 你运气不错,遇到善心人士提醒我这里有人问这个问题
: 这边是Trading,不是Coding板, 且我目前很少看到有人跟我一样用C#做程式交易
: 我用过几家期商的API, 各有优缺点
: KGI报价与下单API应该是两个不同团队或人做的, 但是它们又有共用的套件
: 所以你分别拿到的两套API, 里面的Package.dll的版本可能不是同一个版本
: 至少我当初拿到的就是不同的版本, 所以你在整合的时候要多费点心力
: KGI的API是我看过目前做的比较严谨的, 你在VS环境Run是无法连上正式Server的
: 所以请乖乖地用业务给你的测试环境Server以及帐号密码
: 你初期的问题有可能会是这个, 尤其你是在登入的时候发生的问题
: 而且他机车的是宣告报价或下单物件的时候要先给个起始的Server
: 实际上真正的连线又是另一个Method, 里面也要给个Server
: 我很难判断你的问题出在哪边
: 另外, 就算你开发到后期, 也是常常会有地雷在这个Event发生exception
: 原因很多, 就算网络不稳定也可能会出这个exception
: 我只能说每一家的Push报价and交易元件运作得好不好都要看厂商功力及个人功力
: 最后我把我的这个Event的Sub给你, Programming高手看了只会大笑
: 但是我就是这样解决问题的(可是初期这样做就会造成难以Debug)
: 后续问再多我也不会再回了, 因为基本上我只回答女性同胞的问题, 不信你问版主
: private void OnGetStatus(object sender, COM_STATUS staus, byte[] msg)
: {
: TaiFexCom com = (TaiFexCom)sender;
: if (this.InvokeRequired)
: {
: try
: {
: Smart.OnGetStatus_EventHandler d = new Smart.OnGetStatus_EventHandler(OnGetStatus);
: this.Invoke(d, new object[] { sender, staus, msg });
: return;
: }
: catch { }
: }
: OnGetStatusUpdateUI(sender, staus, msg);
: }
: ※ 引述《xlehoo (莱诺)》之铭言:
: : 大大好,
: : 近期在凯基报价与下单API整合在一个C# Form内,执行登入连线时,
: : 报价API正常登入动作后,接着做下单登入时,很快就出现断线
: : 出现执行绪中断异常在以下程式码,请问有朋友遇过这样的问题吗?烦请指点,谢谢
: : private void OnGetStatus(object sender, COM_STATUS staus, byte[] msg)
: : {
: : TaiFexCom com = (TaiFexCom)sender;
: : if (this.InvokeRequired)
: : {
: : Smart.OnGetStatus_EventHandler d = new
: : Smart.OnGetStatus_EventHandler(OnGetStatus);
: : this.Invoke(d, new object[] { sender, staus, msg });======>执
: : 行时在此行出现
: : ThreadInterruptedException
作者: stockwinner (期股相当)   2015-09-18 16:56:00
我是拿报价范例当Base, 再把下单的dll与其他Sub慢慢整合进来,其实不到一天就能够解决了
楼主: xlehoo (莱诺)   2015-09-19 13:20:00
报价与下单会不会有crossthread的问题?我先试您提供的方法

Links booklink

Contact Us: admin [ a t ] ucptt.com