[問題] 關於Python呼叫dll

看板Python作者 (Minimi)時間15年前 (2010/06/02 11:05), 編輯推噓0(002)
留言2則, 2人參與, 最新討論串1/2 (看更多)
以下是dll的interface SetBrowseCallback(CALLBACK pFunc, DWORD dwIdentifier, DWORD dwExtData); BrowseServer() pFunc是BrowseServer()所需要的callback function pFunc的prototype大致如下 (LPTSTR sServerName, LPTSTR sServerIP, LPTSTR sServerVersion, LPTSTR sServerType, LPTSTR sServerMAC, DWORD dwIdentifier, DWORD dwExtData) 我呼叫的方式如下: dll = ctypes.CDLL("Server.dll") sbc = dll.SetBrowseCallback sbc.restype = None callback_proto = ctypes.PYFUNCTYPE( None, ctypes.c_char_p, ctypes.c_char_p, ctypes.c_char_p, ctypes.c_char_p, ctypes.c_char_p, DWORD, DWORD) callback = callback_proto(py_callback) #py_callback print所有參數 sbc(callback) dll.BrowseServer() 雖然沒有error但是我的callback function完全沒被用到 想請問可能是哪部分的問題應該要怎麼解決,謝謝 -- Idle lawyers tend to become politicians, so there is a certain social value in keeping lawyers busy. from "Operating System Principles, 7th ed" -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.87.144.205

06/02 11:40, , 1F
callback_proto = ctypes.CFUNCTYPE(...)
06/02 11:40, 1F

06/02 13:12, , 2F
結果還是一樣,但還是謝謝
06/02 13:12, 2F
文章代碼(AID): #1C1Sfosf (Python)
討論串 (同標題文章)
文章代碼(AID): #1C1Sfosf (Python)