############### sub getListviewItems{ my $hwnd = shift || return "No treeview handle"; #if no result send a WM_GetText message to the window $WmSendMessage ||= new Win32::API("user32", "SendMessageA", [N, N, N, P],'N') || return "SendMessageA Error"; my $TV_FIRST=4352; my $TVM_GETNEXTITEM=$TV_FIRST+10; my $text = " " x 2048; my $textLen = 2048; my @items=(); print "calling $hwnd with $TVM_GETNEXTITEM\n"; while(my $result = $WmSendMessage->Call($hwnd,$TVM_GETNEXTITEM, $textLen, $text)){ my $item=substr($text, 0, $result); print "getListviewItems: [$item]\n"; push(@items,$item); } return @items; }