Cyber Posted December 4, 2021 Share Posted December 4, 2021 Hi, i have a problem, i can't retrive all items from list: $win ="Optimus64" $iListView=ControlGetHandle ($win, "","SysListView32") $array=_GUICtrlListView_GetItemTextArray ($iListView) _GUICtrlListView_GetItemTextArray retrive an array with 23 elements but blank. why? i can retrive all item with select all and copy with Send("^c") but is very orrible thanks Console Browse: Navigate on the WEB in a textual consoleMultiPing!: Show computer on the lan and/or show the local/remote task, ALL animated!KillaWin: Event executingCryptPage: Crypt your webpage and show only with key Link to comment Share on other sites More sharing options...
Nine Posted December 4, 2021 Share Posted December 4, 2021 Some syslistview32 require that you run it at x64. “They did not know it was impossible, so they did it” ― Mark Twain Spoiler Block all input without UAC Save/Retrieve Images to/from Text Monitor Management (VCP commands) Tool to search in text (au3) files Date Range Picker Virtual Desktop Manager Sudoku Game 2020 Overlapped Named Pipe IPC HotString 2.0 - Hot keys with string x64 Bitwise Operations Multi-keyboards HotKeySet Recursive Array Display Fast and simple WCD IPC Multiple Folders Selector GIF Animation (cached) Screen Scraping Link to comment Share on other sites More sharing options...
ad777 Posted December 5, 2021 Share Posted December 5, 2021 (edited) On 12/4/2021 at 12:55 PM, Cyber said: Hi, i have a problem, i can't retrive all items from list: $win ="Optimus64" $iListView=ControlGetHandle ($win, "","SysListView32") $array=_GUICtrlListView_GetItemTextArray ($iListView) _GUICtrlListView_GetItemTextArray retrive an array with 23 elements but blank. why? i can retrive all item with select all and copy with Send("^c") but is very orrible thanks i hope this help ya #include <GuiListView.au3> #RequireAdmin $instance = 1 $win = "Optimus64" _RetrieveItems($win,"","SysListView32",$instance) ;; ;;Made by Ad777 ;FuncName:_RetrieveItems ;Param: ;$wintitle:The title/hWnd/class of the window to move/resize. See Title special definition. ;$text;The text of the window to move/resize. See Text special definition. ;$controlid:The control to interact ;$instance:instance of Class ;; Func _RetrieveItems($wintitle,$text,$controlid,$instance) Global $inc Local $Item,$Combine For $ii = 0 to 400 $Item = _GUICtrlListView_GetItemTextArray(ControlGetHandle($wintitle,$text,$controlid&$instance), $ii) For $i = 1 To $Item[0] $Combine &= $Item[$i] & @CRLF if $Item[$i] = "" Then Return MsgBox(64, "", $Combine&@CRLF&"Count:"&$inc) Else $inc = $inc+1 EndIf Next Next EndFunc you can find instance using Autoit Window Info(C:\Program Files\AutoIt3\Au3Info.exe) https://i.postimg.cc/qqZ4yzcQ/instance.jpg Edited December 6, 2021 by ad777 iam ِAutoit programmer. best thing in life is to use your Brain to Achieve everything you want. Link to comment Share on other sites More sharing options...
Cyber Posted December 6, 2021 Author Share Posted December 6, 2021 Thanks, but not work 😔 the handle is correct but nothing return, the element is 23 (is correct) buy empty Console Browse: Navigate on the WEB in a textual consoleMultiPing!: Show computer on the lan and/or show the local/remote task, ALL animated!KillaWin: Event executingCryptPage: Crypt your webpage and show only with key Link to comment Share on other sites More sharing options...
ad777 Posted December 6, 2021 Share Posted December 6, 2021 8 hours ago, Cyber said: Thanks, but not work 😔 the handle is correct but nothing return, the element is 23 (is correct) buy empty can you show me Image of program you use. iam ِAutoit programmer. best thing in life is to use your Brain to Achieve everything you want. Link to comment Share on other sites More sharing options...
Cyber Posted December 7, 2021 Author Share Posted December 7, 2021 16 hours ago, ad777 said: can you show me Image of program you use. thanks ClassnameNN integrate instance Console Browse: Navigate on the WEB in a textual consoleMultiPing!: Show computer on the lan and/or show the local/remote task, ALL animated!KillaWin: Event executingCryptPage: Crypt your webpage and show only with key Link to comment Share on other sites More sharing options...
ad777 Posted December 8, 2021 Share Posted December 8, 2021 (edited) On 12/6/2021 at 10:15 AM, Cyber said: Thanks, but not work 😔 the handle is correct but nothing return, the element is 23 (is correct) buy empty try this code: #include <File.au3> #RequireAdmin Global $Combine,$strc,$num = 0,$np Local $wintitle = "Looking for '#32'", $class ="SysListView32" ,$instance ="1" ; _RetrieveItems2($wintitle,$class,$instance) Func _RetrieveItems2($wintitle,$class,$instance) For $i = 0 To ControlListView ( $wintitle, "",$class&$instance, "GetItemCount") Step 1 $strc = ControlListView ( $wintitle, "",$class&$instance, "GetText", $i, $num) if $strc = "" Then $num = $num + 1 $i = 0 if StringLen($np) = 0 And $strc = "" Then ExitLoop EndIf Else $Combine &= ControlListView ($wintitle, "",$class&$instance, "GetText", $i, $num) &@CRLF Endif $np = $strc Next Return MsgBox(0,"", $Combine) EndFunc Edited December 8, 2021 by ad777 iam ِAutoit programmer. best thing in life is to use your Brain to Achieve everything you want. Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted December 8, 2021 Moderators Share Posted December 8, 2021 ad777, For the last time, when you reply in future, please use the "Reply to this topic" button at the top of the thread or the "Reply to this topic" editor at the bottom rather than the "Quote" button - responders know what they wrote and it just pads the thread unnecessarily. Do it again and you get a posting holiday - clear? M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
Cyber Posted December 9, 2021 Author Share Posted December 9, 2021 nothing 😔 thanks anyway #include <File.au3> #RequireAdmin Global $Combine,$strc,$num = 0,$np Local $wintitle = "* - MetaTrader 4 Manager", $class ="SysListView32" ,$instance ="17" ; _RetrieveItems2($wintitle,$class,$instance) Func _RetrieveItems2($wintitle,$class,$instance) MsgBox(0,"",ControlListView ( $wintitle, "",$class&$instance, "GetItemCount")) For $i = 0 To ControlListView ( $wintitle, "",$class&$instance, "GetItemCount") Step 1 $strc = ControlListView ( $wintitle, "",$class&$instance, "GetText", $i, $num) if $strc = "" Then $num = $num + 1 $i = 0 if StringLen($np) = 0 And $strc = "" Then ExitLoop EndIf Else $Combine &= ControlListView ($wintitle, "",$class&$instance, "GetText", $i, $num) &@CRLF Endif $np = $strc Next Return MsgBox(0,"", $Combine) EndFunc Console Browse: Navigate on the WEB in a textual consoleMultiPing!: Show computer on the lan and/or show the local/remote task, ALL animated!KillaWin: Event executingCryptPage: Crypt your webpage and show only with key Link to comment Share on other sites More sharing options...
Luke94 Posted December 10, 2021 Share Posted December 10, 2021 Hi @Cyber, Does this return anything? #include <GuiListView.au3> Local $hWnd = WinGetHandle('* - MetaTrader 4 Manager') If IsHWnd($hWnd) = 1 Then Local $hCtrl = ControlGetHandle($hWnd, '', '[CLASS:SysListView32; INSTANCE:15]') Local $iCount = _GUICtrlListView_GetItemCount($hCtrl) For $i = 0 To ($iCount - 1) Step 1 Local $aItems = _GUICtrlListView_GetItemTextArray($hCtrl, $i) For $j = 1 To $aItems[0] Step 1 ConsoleWrite('Item ' & $i & ', SubItem ' & $j & ' - ' & $aItems[$j] & @CRLF) Next Next Else Exit(1) EndIf The WinTitle and ListView instance are based on the information from the image of your AutoIt Window Info Tool. Link to comment Share on other sites More sharing options...
spudw2k Posted December 13, 2021 Share Posted December 13, 2021 @Cyber Does forcing x64 make a difference? ;Add to beggining of script #AutoIt3Wrapper_UseX64=Y Spoiler Things I've Made: Always On Top Tool ◊ AU History ◊ Deck of Cards ◊ HideIt ◊ ICU ◊ Icon Freezer ◊ Ipod Ejector ◊ Link Downloader ◊ MD5 Folder Enumerator ◊ PassGen ◊ Ping Tool ◊ Quick NIC ◊ Read OCR ◊ RemoteIT ◊ SchTasksGui ◊ SpyCam ◊ System Scan Report Tool ◊ System UpTime ◊ Transparency Machine ◊ VMWare ESX BuilderMisc Code Snippets: ADODB Example ◊ CheckHover ◊ Detect SafeMode ◊ DynEnumArray ◊ GetNetStatData ◊ HashArray ◊ IsBetweenDates ◊ Local Admins ◊ Make Choice ◊ Recursive File List ◊ Remove Sizebox Style ◊ Retrieve PNPDeviceID ◊ Retreive SysListView32 Contents ◊ Set IE Homepage ◊ Tickle Expired Password ◊ Transpose ArrayProjects: Drive Space Usage GUI ◊ LEDkIT ◊ Plasma_kIt ◊ Scan Engine Builder ◊ SpeeDBurner ◊ SubnetCalcCool Stuff: AutoItObject UDF ◊ Extract Icon From Proc ◊ GuiCtrlFontRotate ◊ Hex Edit Funcs ◊ Run binary ◊ Service_UDF Link to comment Share on other sites More sharing options...
Cyber Posted December 14, 2021 Author Share Posted December 14, 2021 On 12/13/2021 at 2:48 AM, spudw2k said: @Cyber Does forcing x64 make a difference? ;Add to beggining of script #AutoIt3Wrapper_UseX64=Y nothing On 12/10/2021 at 2:18 PM, Luke94 said: Hi @Cyber, Does this return anything? #include <GuiListView.au3> Local $hWnd = WinGetHandle('* - MetaTrader 4 Manager') If IsHWnd($hWnd) = 1 Then Local $hCtrl = ControlGetHandle($hWnd, '', '[CLASS:SysListView32; INSTANCE:15]') Local $iCount = _GUICtrlListView_GetItemCount($hCtrl) For $i = 0 To ($iCount - 1) Step 1 Local $aItems = _GUICtrlListView_GetItemTextArray($hCtrl, $i) For $j = 1 To $aItems[0] Step 1 ConsoleWrite('Item ' & $i & ', SubItem ' & $j & ' - ' & $aItems[$j] & @CRLF) Next Next Else Exit(1) EndIf The WinTitle and ListView instance are based on the information from the image of your AutoIt Window Info Tool. Item 0, SubItem 1 - Item 0, SubItem 2 - Item 0, SubItem 3 - Item 0, SubItem 4 - Item 0, SubItem 5 - Item 0, SubItem 6 - Item 1, SubItem 1 - Item 1, SubItem 2 - Item 1, SubItem 3 - Item 1, SubItem 4 - Item 1, SubItem 5 - Item 1, SubItem 6 - Item 3, SubItem 6 - Item 4, SubItem 1 - Item 4, SubItem 2 - Item 4, SubItem 3 - Item 4, SubItem 4 - Item 4, SubItem 5 - Item 4, SubItem 6 - 😔 Console Browse: Navigate on the WEB in a textual consoleMultiPing!: Show computer on the lan and/or show the local/remote task, ALL animated!KillaWin: Event executingCryptPage: Crypt your webpage and show only with key Link to comment Share on other sites More sharing options...
Luke94 Posted December 14, 2021 Share Posted December 14, 2021 See if this returns anything different. #include <GuiListView.au3> Local $hWnd = WinGetHandle('* - MetaTrader 4 Manager') If IsHWnd($hWnd) = 1 Then Local $hCtrl = ControlGetHandle($hWnd, '', '[CLASS:SysListView32; INSTANCE:15; ID:2218]') Local $iCount = _GUICtrlListView_GetItemCount($hCtrl) For $i = 0 To ($iCount - 1) Step 1 Local $aItems = _GUICtrlListView_GetItemTextArray($hCtrl, $i) For $j = 1 To $aItems[0] Step 1 ConsoleWrite('Item ' & $i & ', SubItem ' & $j & ' - ' & $aItems[$j] & @CRLF) Next Next Else Exit(1) EndIf Link to comment Share on other sites More sharing options...
Cyber Posted December 16, 2021 Author Share Posted December 16, 2021 On 12/14/2021 at 4:35 PM, Luke94 said: See if this returns anything different. #include <GuiListView.au3> Local $hWnd = WinGetHandle('* - MetaTrader 4 Manager') If IsHWnd($hWnd) = 1 Then Local $hCtrl = ControlGetHandle($hWnd, '', '[CLASS:SysListView32; INSTANCE:15; ID:2218]') Local $iCount = _GUICtrlListView_GetItemCount($hCtrl) For $i = 0 To ($iCount - 1) Step 1 Local $aItems = _GUICtrlListView_GetItemTextArray($hCtrl, $i) For $j = 1 To $aItems[0] Step 1 ConsoleWrite('Item ' & $i & ', SubItem ' & $j & ' - ' & $aItems[$j] & @CRLF) Next Next Else Exit(1) EndIf Item 0, SubItem 1 - Item 0, SubItem 2 - Item 0, SubItem 3 - Item 0, SubItem 4 - Item 0, SubItem 5 - Item 0, SubItem 6 - Item 1, SubItem 1 - Item 1, SubItem 2 - Item 1, SubItem 3 - Item 1, SubItem 4 - Item 1, SubItem 5 - Item 1, SubItem 6 - .... 😔 thanks anyway Console Browse: Navigate on the WEB in a textual consoleMultiPing!: Show computer on the lan and/or show the local/remote task, ALL animated!KillaWin: Event executingCryptPage: Crypt your webpage and show only with key Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now