2012-10-14 19 views
0

我想定義一個在DLL中定義的結構或變量類型的實例,使用'ctypes'將它發送給一個函數。我知道我可以在python/ctypes中定義類似的變量/結構類型,然後發送它們,但是在我的代碼中定義所有類型需要很長時間。有沒有什麼辦法可以像在ctypes中的c_int或c_char_p一樣聲明內部DLL類型的變量?如何聲明在DLL或共享庫中定義的類型的變量?

回答

1

你使用哪個DLL?

對於winapi.dll,ctypes還提供了一些有用的結構,如HWND,RECT,MSG,... 有關更多信息,請參閱ctypes.wintypes

您還可以檢查解析結構和數據類型的C文件的ctypeslib。根據我的經驗,當從python腳本/程序調用dll時,我幾乎不會寫下超過幾個C結構,所以這不是問題。如果您必須使用很多in-DLL結構,則可能需要使用SWIG

+0

wpcap.dll是我想用的。 – sia

+0

你有沒有試過[winpcapy](http://code.google.com/p/winpcapy/)?有一個人已經完成了你想要的任務。 – lucasg