[問題] 請問各位程式高手

看板Trading (金融交易)作者 (serene ice)時間15年前 (2009/10/06 20:53), 編輯推噓7(7022)
留言29則, 5人參與, 最新討論串1/2 (看更多)
群益提供的報價 API 應該是用 C/C++ 寫的 32-bit DLL 我則是使用 C# 來寫策略程式 API 中有函式需要 callback function 但是他的函式參數只收 long 做為 function pointer 的 type 而 C# 裡只有 delegate 頂多轉成 IntPtr 我試了幾種方法 都沒辦法成功地讓該函式呼叫到 callback function 範例程式碼有 VB 與 VC++ 他們使用 VB: 函式名稱( AddressOf CallbackFunctionName ) VC++: 函式名稱( (long) CallbackFunctionName ) 不曉得板上是否有高手處理過該 DLL (SKQuoteLib.dll) 或是類似的問題 我卡在這地方許久 也找不到解決的方式 根據查的一些資訊 這跟 Managed 與 Unmanaged 之間的 P/Invoke 與反向 P/Invoke 有關 可能跟 CLR 的細部處理有關 C/C++ 的 long 是 32-bit 平台: Vista 64-bit Enterprise Visual Studio 2008, 專案的 target platform 已改為 x86 先行感謝~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.32.91.117

10/06 21:52, , 1F
先到XP上試吧
10/06 21:52, 1F

10/06 21:57, , 2F
另外,你有問過群x的工程師嗎?
10/06 21:57, 2F

10/06 23:09, , 3F
營業員轉述 說資訊部都說在研究中
10/06 23:09, 3F

10/06 23:15, , 4F
不好意思 那個營業員就是我 明天繼續幫你追!
10/06 23:15, 4F

10/06 23:16, , 5F
還讓你到版上問 我好慚愧 哈哈
10/06 23:16, 5F

10/06 23:18, , 6F
沒關係啦^^" 集思廣益總是好 工程師應該也很忙~
10/06 23:18, 6F

10/06 23:23, , 7F
謝謝啦 我會盡快幫你解決的
10/06 23:23, 7F

10/06 23:48, , 8F
群益給的測試程式,成交回報功能有正常嗎?
10/06 23:48, 8F

10/06 23:59, , 9F
順便問一下,我發現有一個function,回傳很慢,約0.2秒
10/06 23:59, 9F

10/07 00:00, , 10F
實際使用,會嚴重拖慢電腦速度,有人遇到同樣情形嗎?
10/07 00:00, 10F

10/07 01:32, , 11F
成交回報? 若是指成交價報價的話 VB測試程式是正常的
10/07 01:32, 11F

10/07 12:45, , 12F
那這樣群益dll是正常的
10/07 12:45, 12F

10/07 12:46, , 13F
接下來就要確定你寫的程式是32bit的,用diassembly確認一下
10/07 12:46, 13F

10/08 00:58, , 14F
我解決了,寫 windows form 程式就可以,console 程式不行
10/08 00:58, 14F

10/08 00:59, , 15F
可能跟 life time 有關吧~!
10/08 00:59, 15F

10/08 10:35, , 16F
可以幫我試一下,GetTick那個函數,回傳會很慢嗎?(約0.2s)
10/08 10:35, 16F

10/08 21:36, , 17F
我現在卡在RequestTicks耶 TCHAR* 搞不定 老是回覆212
10/08 21:36, 17F

10/08 21:37, , 18F
所以還沒辦法用GetTick吧 Orz
10/08 21:37, 18F

10/08 22:44, , 19F
我傳 "TX00"
10/08 22:44, 19F

10/08 22:53, , 20F
是String直接不用MarshalAs嗎? 我也丟過 "TX00"、"0050" 等
10/08 22:53, 20F

10/08 22:54, , 21F
都是212 害我懷疑是Stocks.dat的問題? 有時看它被覆寫成0KB
10/08 22:54, 21F

10/08 23:30, , 22F
嗯 看來應該跟Stocks.dat無關 它好像程式關閉後才會被更新
10/08 23:30, 22F

10/08 23:31, , 23F
我的程式不會正常關閉 最後會有Memory不能為read的錯誤訊息
10/08 23:31, 23F

10/12 00:04, , 24F
string改成用stringbuilder來接試試看~
10/12 00:04, 24F

10/12 00:05, , 25F
雖然我沒接過群X的API,但我有接過其他C/C++ DLL,也是用C#
10/12 00:05, 25F

10/12 00:06, , 26F
該DLL也是交易用,但不是證券or期權商品,開發過程蒐集很多
10/12 00:06, 26F

10/12 00:06, , 27F
資料,如還有問題,我可以把這些資料share給你參考喔~
10/12 00:06, 27F

10/12 01:28, , 28F
不是證期權?那是外匯嗎?那個平台的呢 ^^
10/12 01:28, 28F

10/13 21:05, , 29F
StringBuilder sb = new StringBuilder("TX00"); 也不行Orz
10/13 21:05, 29F
文章代碼(AID): #1AoptZH1 (Trading)
討論串 (同標題文章)
文章代碼(AID): #1AoptZH1 (Trading)