dir() mi vypíše tohle: ['__call__', '__class__', '__ctypes_from_outparam__', '__delattr__', '__dict__', '__doc__', '__getattribute__', '__hash__', '__init__', '__module__', '__name__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__str__', '__weakref__', '_b_base_', '_b_needsfree_', '_flags_', '_objects', '_restype_', 'argtypes', 'errcheck', 'restype']
Ostatně, lepší příklad na vyzkoušení než ten, který jsem prve napsal je lib = CDLL('libc.so.6') a jak teď třeba získat hodnotu errno? >>> lib.errno <_FuncPtr object at 0xb7f667e4> -- Jan Martinek rajcze wrote: > Ahoj, > > co ti vrati vypis > >>>> dir(lib.a) > > ? > > On 7/23/07, Jan Martinek <[EMAIL PROTECTED]> wrote: >> Ahoj, >> >> mám soubor "testlib.c", který obsahuje jediný řádek, a to >> >> int a = 1243; >> >> Z toho udělám sdílenou knihovnu >> gcc -shared testlib.c -o testlib.so >> >> natáhnu ji do pythonu pomocí ctypes >> >> >>> from ctypes import * >> >>> lib = CDLL('./testlib.so') >> >>> lib.a >> <_FuncPtr object at 0xb7f3d7e4> >> >> což se zřejmě úspěšně podaří, ale vůbec netuším, jakým způsobem se >> dostat k té hodnotě 1243. Nevíte to někdo? >> Když mám v té knihovně nějaké funkce, tak s jejich voláním nemám >> problém, ale nevím, jakým způsobem přečíst a změnit globální proměnnou. >> >> Díky >> Jan Martinek >> _______________________________________________ >> Python mailing list >> Python@py.cz >> http://www.py.cz/mailman/listinfo/python >> > > _______________________________________________ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python