호출 된 함수에서 할당 한 메모리 블록에서 정보를 다시 가져 오는 데 문제가 있습니다. 특히, JNA에 포함 된 X11 lib에 함수 XGetWindowProperties
이 있습니다. 마지막 파라미터 인 PointerByReference prop_return
을 통해 결과를 반환합니다.JNA를 통해 배열 검색 중
실제 메모리 영역에는 Window
의 배열이 들어 있습니다. 그러나 어떻게 그 객체를 만들 수 있습니까? 포인터 자체에서 얻는 방법이 보이지 않으며 Window
크기를 모르기 때문에 Buffer
을 얻을 수 없습니다.
실제 함수는 int XGetWindowProperty(...., unsigned char **prop_return)
이고 매개 변수는이 매개 변수가 실제로는 int XGetWindowProperty(...., Window *prop_return[])
입니다.
이것이 나의 즉각적인 문제를 해결하는 동안, 나는 일반적인 해결책을보고 싶다 : PointerByReference에서 알려진 네이티브 매핑 타입의 배열로가는 방법. – viraptor
예, JNA 질문에만 대답 할 수는 없지만 Xlib 질문 만 답변 할 수 있습니다. fwiw "Window"는 단지 정수 ID이며 의미있는 의미의 객체는 아닙니다. –