У меня возникла проблема с получением информации из блока памяти, выделенного вызываемой функцией. В частности, в библиотеке X11, включенной в JNA, есть функция XGetWindowProperties
. Он возвращает результаты через последний параметр — PointerByReference prop_return
.
Я знаю, что фактическая область памяти содержит массив Window
. Но как мне создать эти объекты? Я не вижу способа получить его из самого указателя и не могу получить из него Buffer
, так как не знаю размер Window
.
Настоящая функция такова: int XGetWindowProperty(...., unsigned char **prop_return)
и с параметрами, с которыми я ее вызываю, на самом деле это int XGetWindowProperty(...., Window *prop_return[])
.