use Win32::GuiTest qw( :ALL ); use warnings; use Win32::GUI(); my @whnds = FindWindowLike( undef, "NT App" ); if( !@whnds ){ die "Cannot find window with title/caption App\n"; }else{ printf( "Window handle of App application is %x\n", $whnds[ 0 ] ); } my @lst = GetChildWindows($whnds[ 0 ] ); my $edit_ctrl_id = 233; #Edit window, 193 Hex my @edit = FindWindowLike( $whnds[ 0 ], undef, "^SysListView32"); if( !@edit ){ die "Cannot find window handle for Edit control\n"; } else{ printf( "Edit window handle is %x\n", $edit[ 0 ] ); SelListViewItem( $edit[ 0 ], 1); sleep(1); SendMouse('{LEFTCLICK}'); sleep(1); SendMouse('{LEFTCLICK}{LEFTCLICK}'); # my @list = GetListViewContents(); # print @list; sleep(4); my @message = FindWindowLike( undef, "event details" ); if( !@message ){ die "Cannot find window with title/caption event details\n"; }else{ printf( "Window handle of event details application is %x\n", $message[ 0 ] ); my @editVal = FindWindowLike( $message[ 0 ], undef, "^Edit"); if( !@editVal ){ die "Cannot find window handle for editVal control\n"; }else{ printf( "editVal window handle is %x\n", $editVal[ 0 ] ); } my $result = WMGetText($editVal[ 0 ]); print $result." result \n"; MouseClick('OK'); } }