因Package版本不一致,造成「參考」時的大混亂。
QuoteCom的Package版本是1.0.6.3
TradeCom的Package版本是1.0.6.8
只要引用最新版的Package(1.0.6.8)問題就解決了
問題:
在Log檔中發現
[P:PushClient FeedPkgThread OnRcvData Exception1503]
造成TradeCom的事件無法正常運作,特別是資料接收( OnRcvMessage)
而接收主機時間(OnRcvServerTime)的Event又正常運作。
所以這問題變的不知所云,因為錯誤清單完全沒有出現錯誤。
Step 1:問題點Package版本不同
Step 2:取最新的Package(1.0.6.8)來加入參考,捨棄Package(1.0.6.3)版
把KGI的四個dll加入參考
Package.dll
PushClient.dll
QuoteCom.dll
TradeCom.dll
Step 3:額外的dll放在同目錄
有兩個dll不能引用進參考,只能放在同目錄。
ICSharpCode.SharpZipLib.dll
Interop.KGICGCAPIATLLib.dll
這個Package.dll版本錯亂,花了很多時間才解決。一度懷疑報價與交易不能共存在同一類別(class)中。
記得先把所有資料匣(專案目錄、debug目錄、release目錄)中的dll檔全清光,有時visual studio建置時,不會重抓dll。
參考資料:無