看板 Python 關於我們 聯絡資訊
line 35 ret = self._RegisterOnAccountCallBack(c_long(id(cb))) 為什麼要取 id 後又轉成 c_long 呢? 應該是像 sbrhsieh 寫的 self._RegisterOnAccountCallBack(cb) 吧? 我以前也有試過用 ctypes 呼叫群〇API, 但那時也是沒成功,遇到跟你類似的問題 就懷疑是 dll threading model 的問題 可能要看一下 dll 裡 callback 的實作 就放棄了~ 但如果你能成功 還請分享一下 :p ※ 引述《cobrasgo (體重突破所有均線)》之銘言: : 不好意思,我改寫了還是不work : 程式如下 : http://codepad.org/zGIVkXlv : API說明文件在此 : http://www.badongo.com/file/25005330 : 我還特地把self._GetUserAccount呼叫的時間延遲了5秒, : 但還是不行 : 執行結果就很順利的停在waiting那行 : 但callback function本身是沒進去 : 真的看不出哪裡有問題囧 : 請大德們不吝指教啊 : 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 160.39.214.186
cobrasgo:因為群益說明文件裡寫的,callback的data type是long 01/27 09:05
cobrasgo:再不行我就去學c++,沒在怕的啦XD 01/27 12:14
sbrhsieh:你還是可以使用我提供的做法。 01/27 17:58
sbrhsieh:使用 id function 來企圖取得 cb 的位址是不對的。 01/27 17:58
cobrasgo:我試出來了,等下貼個文跟大家分享一下 01/27 18:43