Re: [問題] 請問各位程式高手
對了 最後有成功接收到報價了
使用 C# 接收群益報價 API 的個人寫法 記錄在網誌裡
http://percyy-buy.blogspot.com/2009/12/c-api-skquotelibdll.html
(沒有最近流行的對帳單啊不好意思^^")
總之 最後的問題 用 Windows Form 的 Textbox.text 可以正確吃進去
雖然我也不知道為什麼 ~"~ 其他試過的字串型態都不行
也不清楚 API 改版之後有沒有變化
感謝各位高手的相助!!
※ 引述《percyy (serene ice)》之銘言:
: 標題: [問題] 請問各位程式高手
: 時間: Tue Oct 6 20:53:54 2009
: 群益提供的報價 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
: → idleidle:先到XP上試吧 10/06 21:52
: → idleidle:另外,你有問過群x的工程師嗎? 10/06 21:57
: → percyy:營業員轉述 說資訊部都說在研究中 10/06 23:09
: 推 richshen:不好意思 那個營業員就是我 明天繼續幫你追! 10/06 23:15
: → richshen:還讓你到版上問 我好慚愧 哈哈 10/06 23:16
: → percyy:沒關係啦^^" 集思廣益總是好 工程師應該也很忙~ 10/06 23:18
: 推 richshen:謝謝啦 我會盡快幫你解決的 10/06 23:23
: 推 Rudy:群益給的測試程式,成交回報功能有正常嗎? 10/06 23:48
: → Rudy:順便問一下,我發現有一個function,回傳很慢,約0.2秒 10/06 23:59
: → Rudy:實際使用,會嚴重拖慢電腦速度,有人遇到同樣情形嗎? 10/07 00:00
: → percyy:成交回報? 若是指成交價報價的話 VB測試程式是正常的 10/07 01:32
: 推 Rudy:那這樣群益dll是正常的 10/07 12:45
: → Rudy:接下來就要確定你寫的程式是32bit的,用diassembly確認一下 10/07 12:46
: → percyy:我解決了,寫 windows form 程式就可以,console 程式不行 10/08 00:58
: → percyy:可能跟 life time 有關吧~! 10/08 00:59
: 推 Rudy:可以幫我試一下,GetTick那個函數,回傳會很慢嗎?(約0.2s) 10/08 10:35
: → percyy:我現在卡在RequestTicks耶 TCHAR* 搞不定 老是回覆212 10/08 21:36
: → percyy:所以還沒辦法用GetTick吧 Orz 10/08 21:37
: 推 Rudy:我傳 "TX00" 10/08 22:44
: → percyy:是String直接不用MarshalAs嗎? 我也丟過 "TX00"、"0050" 等 10/08 22:53
: → percyy:都是212 害我懷疑是Stocks.dat的問題? 有時看它被覆寫成0KB 10/08 22:54
: → percyy:嗯 看來應該跟Stocks.dat無關 它好像程式關閉後才會被更新 10/08 23:30
: → percyy:我的程式不會正常關閉 最後會有Memory不能為read的錯誤訊息 10/08 23:31
: 推 iamkjs:string改成用stringbuilder來接試試看~ 10/12 00:04
: → iamkjs:雖然我沒接過群X的API,但我有接過其他C/C++ DLL,也是用C# 10/12 00:05
: → iamkjs:該DLL也是交易用,但不是證券or期權商品,開發過程蒐集很多 10/12 00:06
: → iamkjs:資料,如還有問題,我可以把這些資料share給你參考喔~ 10/12 00:06
: → idleidle:不是證期權?那是外匯嗎?那個平台的呢 ^^ 10/12 01:28
: → percyy:StringBuilder sb = new StringBuilder("TX00"); 也不行Orz 10/13 21:05
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.32.91.117
推
12/22 19:46, , 1F
12/22 19:46, 1F
討論串 (同標題文章)
Trading 近期熱門文章
57
160
PTT職涯區 即時熱門文章
176
342