Iczer Posted March 3, 2018 Posted March 3, 2018 I have some ListView with icons in subitem and defined LVS_EX_FULLROWSELECT style. How I can make full row selection to not select icon image, so it's colours would be preserved? demo: expandcollapse popup#include <GuiListView.au3> #include <FontConstants.au3> #include <GUIConstantsEx.au3> #include <ListViewConstants.au3> #include <TreeViewConstants.au3> #include <WindowsConstants.au3> #include <GuiTreeView.au3> #include <SQLite.au3> #include <Math.au3> #include <GDIPlus.au3> $hDLL_Crypt32 = DllOpen("Crypt32.dll") $hDLL_ntdll = DllOpen("ntdll.dll") _GDIPlus_Startup() Global Const $tagNMLVCACHEHINT = $tagNMHDR & ";int iFrom;int iTo" Global $aListView, $hListView, $TreeView_SelTitle, $aTreeViewState[19][8] = [[18,"","","","","","",""]], $sSelectedTVIndex = 3 Opt("GUIOnEventMode", 1) #Region ### START Koda GUI section ### Form= Global $Form1 = GUICreate("Form1", 881, 516, -1, -1) GUISetOnEvent($GUI_EVENT_CLOSE, "Form1Close") Global $TreeView = _GUICtrlTreeView_Create($Form1, 8, 16, 319, 489, BitOR($GUI_SS_DEFAULT_TREEVIEW,$WS_HSCROLL,$WS_VSCROLL, $TVS_SHOWSELALWAYS,$WS_HSCROLL,$WS_BORDER, $TVS_INFOTIP), BitOR($WS_EX_CLIENTEDGE,$WS_EX_STATICEDGE)) $TreeView_Root_1 = _GUICtrlTreeView_Add($TreeView, 0, "Root - 1") _GUICtrlTreeView_SetIcon($TreeView, $TreeView_Root_1, "shell32.dll", 4) $TreeView_Root_2 = _GUICtrlTreeView_Add($TreeView, 0, "Root - 2") _GUICtrlTreeView_SetIcon($TreeView, $TreeView_Root_2, "shell32.dll", 4) Global $ListView = GUICtrlCreateListView("Rowid|Name|Time|Category", 336, 16, 538, 486, $LVS_SHOWSELALWAYS);,$LVS_SINGLESEL _GUICtrlListView_SetExtendedListViewStyle( $ListView, BitOR($LVS_EX_DOUBLEBUFFER, $LVS_EX_FULLROWSELECT, $LVS_EX_SUBITEMIMAGES, $WS_EX_CLIENTEDGE, $WS_EX_STATICEDGE)) GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 0, 0) GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 1, 250) GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 2, 88) GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 3, 112) GUICtrlSetOnEvent(-1, "ListViewClick") SetIconListToListView() ;------------------------------------------------------------------------------------------ ; Get the font of the TreeView control ; Copied from the _GUICtrlGetFont example by KaFu ; See http://www.autoitscript.com/forum/index.php?showtopic=124526 Local $hDC = _WinAPI_GetDC( $TreeView ) $hFont = _SendMessage( $TreeView, $WM_GETFONT ) Local $hObject = _WinAPI_SelectObject( $hDC, $hFont ) Local $lvLOGFONT = DllStructCreate( $tagLOGFONT ) DllCall( 'gdi32.dll', 'int', 'GetObjectW', 'ptr', $hFont, 'int', DllStructGetSize( $lvLOGFONT ), 'ptr', DllStructGetPtr( $lvLOGFONT ) ) _WinAPI_SelectObject( $hDC, $hObject ) _WinAPI_ReleaseDC( $TreeView, $hDC ) $TreeViewFont = _WinAPI_CreateFontIndirect( $lvLOGFONT ) Local $iWeight = BitOR( DllStructGetData( $lvLOGFONT, "Weight" ), $FW_BOLD ) DllStructSetData( $lvLOGFONT, "Weight", $iWeight ) $TreeViewFontBold = _WinAPI_CreateFontIndirect( $lvLOGFONT ) ;------------------------------------------------------------------------------------------ Local $idTVContextMenu = GUICtrlCreateContextMenu(GUICtrlCreateDummy()) $hTVContextMenu = GUICtrlGetHandle($idTVContextMenu) Local $idTVContextMenu_Refresh = GUICtrlCreateMenuItem("Refresh", $idTVContextMenu) Local $idTVContextMenu_Rename = GUICtrlCreateMenuItem("Rename", $idTVContextMenu) GUICtrlCreateMenuItem("", $idTVContextMenu) ; separator Local $idTVContextMenu_MarkALLRead = GUICtrlCreateMenuItem("Mark ALL Items Read", $idTVContextMenu) Local $idTVContextMenu_MarkALLUnRead = GUICtrlCreateMenuItem("Mark ALL Items UnRead", $idTVContextMenu) ;------------------------------------------------------------------------------------------ GUIRegisterMsg($WM_NOTIFY, "LWS_WM_NOTIFY") GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### SubFunction_FillTreeView() While 1 Sleep(100) WEnd Func Form1Close() GUIRegisterMsg( $WM_NOTIFY, "" ) ; DllClose($hDLL_Crypt32) DllClose($hDLL_ntdll) _GDIPlus_Shutdown() Exit EndFunc ;========================================================================================== Func ListViewClick() EndFunc ;========================================================================================== Func TreeView1Click() Local $sQuery, $aResult, $iRows, $iColumns Static Local $TreeView_SelTitlePRE = "" If $TreeView_SelTitlePRE == "" Then $TreeView_Selected = _GUICtrlTreeView_GetFirstChild($TreeView, $TreeView_Root_1) _GUICtrlTreeView_ClickItem($TreeView, $TreeView_Selected, "left") Else $TreeView_Selected = _GUICtrlTreeView_GetSelection($TreeView) EndIf $TreeView_SelTitle = _GUICtrlTreeView_GetText($TreeView, $TreeView_Selected) If $TreeView_SelTitle == $TreeView_SelTitlePRE Then Return Else $TreeView_SelTitlePRE = $TreeView_SelTitle EndIf ConsoleWrite($TreeView_SelTitle & @CRLF) EndFunc ;========================================================================================== Func SubFunction_FillTreeView() ConsoleWrite(" > $sSelected TV Index = " & $sSelectedTVIndex & @CRLF) ConsoleWrite(" > $sSelected TV Name = " & $aTreeViewState[$sSelectedTVIndex][5] & @CRLF) Local $idTVItem[$aTreeViewState[0][0]+1] = [$aTreeViewState[0][0]] _GUICtrlTreeView_BeginUpdate($TreeView) _GUICtrlTreeView_DeleteChildren($TreeView, $TreeView_Root_1) _GUICtrlTreeView_DeleteChildren($TreeView, $TreeView_Root_2) _GUICtrlTreeView_SetTextColor($TreeView, 0x77B5FE) ; color of additional text For $i = 1 To $aTreeViewState[0][0] $aTreeViewState[$i][0] = 3 ; icon num in "shell32.dll" $aTreeViewState[$i][1] = 0x000000 ; item text color $aTreeViewState[$i][2] = 0 ; text is bold (or not) $aTreeViewState[$i][3] = "some info" ; some additional text $aTreeViewState[$i][5] = String("item " & $i); item name Switch Mod($i,2) Case 0 $idTVItem[$i] = _GUICtrlTreeView_AddChild($TreeView,$TreeView_Root_2, $aTreeViewState[$i][5]) Case Else $idTVItem[$i] = _GUICtrlTreeView_AddChild($TreeView,$TreeView_Root_1, $aTreeViewState[$i][5]) EndSwitch Switch Mod($i,3) Case 0 $aTreeViewState[$i][2] = 0 Case Else $aTreeViewState[$i][2] = 1 EndSwitch _GUICtrlTreeView_SetItemParam($TreeView, $idTVItem[$i], $i) _GUICtrlTreeView_SetIcon($TreeView, $idTVItem[$i], "shell32.dll", $aTreeViewState[$i][0]) Next _GUICtrlTreeView_Expand($TreeView, $TreeView_Root_1, True) _GUICtrlTreeView_EndUpdate($TreeView) _GUICtrlTreeView_ClickItem($TreeView, $idTVItem[$sSelectedTVIndex]) SubFunction_FillListView() EndFunc ;========================================================================================== Func SubFunction_FillListView_Delayed() AdlibUnRegister("SubFunction_FillListView_Delayed") SubFunction_FillListView() EndFunc ;========================================================================================== Func SubFunction_FillListView() _GUICtrlListView_BeginUpdate ($ListView) _GUICtrlListView_DeleteAllItems ($ListView) For $i = 0 To 63 $ret = _GUICtrlListView_AddItem($ListView, "RowID "&$i&": Col 0") ;ConsoleWrite($i & @TAB & "$ret = " & $ret & @CRLF) _GUICtrlListView_AddSubItem($ListView, $i, "Row "&$i&": Col 1", 1, Random(0,2,1)); _GUICtrlListView_AddSubItem($ListView, $i, "Col 2", 2) _GUICtrlListView_AddSubItem($ListView, $i, "Col 3", 3) Next _GUICtrlListView_EndUpdate ($ListView) EndFunc ;========================================================================================== Func LWS_WM_NOTIFY( $hWnd, $iMsg, $wParam, $lParam ) Local Static $tText = DllStructCreate( "wchar[512]" ) Local Static $pText = DllStructGetPtr( $tText ) Local Static $aResult, $iRows, $iFrom Local $tNMHDR, $hWndFrom, $iCode, $tInfo, $VKey $tNMHDR = DllStructCreate( $tagNMHDR, $lParam ) $hWndFrom = HWnd( DllStructGetData( $tNMHDR, "hWndFrom" ) ) $iCode = DllStructGetData( $tNMHDR, "Code" ) Switch $hWndFrom Case $TreeView Switch $iCode Case $NM_CUSTOMDRAW Local $tNMTVCUSTOMDRAW = DllStructCreate($tagNMTVCUSTOMDRAW, $lParam) Local $dwDrawStage = DllStructGetData($tNMTVCUSTOMDRAW, "DrawStage") Switch $dwDrawStage ; Holds a value that specifies the drawing stage Case $CDDS_PREPAINT ; Before the paint cycle begins Return $CDRF_NOTIFYITEMDRAW ; Notify the parent window of any item-related drawing operations Case $CDDS_ITEMPREPAINT ; Before painting an item Local $hItemSpec = DllStructGetData($tNMTVCUSTOMDRAW, "ItemSpec") ; $hItemSpec = $hItem Local $iItemState = DllStructGetData($tNMTVCUSTOMDRAW, "ItemState") Local $iItemParam = DllStructGetData($tNMTVCUSTOMDRAW, "ItemParam") ; ItemParam = index in array Local $hDC = DllStructGetData($tNMTVCUSTOMDRAW, "HDC") ; Handle to the item's device context $iSelected = DllCall( "user32.dll", "lresult", "SendMessageW", "hwnd", $TreeView, "uint", $TVM_GETITEMSTATE, "wparam", $hItemSpec, "lparam", $TVIS_SELECTED )[0] ; Selected state If BitAND( $iSelected, $TVIS_SELECTED ) Then Return $CDRF_NOTIFYPOSTPAINT ;If Not BitAnd( $iItemState, $CDIS_FOCUS ) Then DllStructSetData( $tNMTVCUSTOMDRAW, "ClrText", $aTreeViewState[$iItemParam][1] ) ; Forecolor of item text ;DllStructSetData( $tNMTVCUSTOMDRAW, "clrTextBk",$aTreeViewState[$iItemParam][1] ) ; Backcolor of item text Local $tRECT = _GUICtrlTreeView_DisplayRectEx ( $TreeView, $hItemSpec, True) DllStructSetData( $tRECT, "Left", DllStructGetData( $tRECT, "Right") + 7) DllStructSetData( $tRECT, "Right", DllStructGetData( $tRECT, "Right") + 188) _WinAPI_DrawText( $hDC, $aTreeViewState[$iItemParam][3], $tRECT, $DT_LEFT ) ; and background color of the device context. _GUICtrlTreeView_SetBold ($TreeView, $hItemSpec, $aTreeViewState[$iItemParam][2]) ;Else ;_GUICtrlTreeView_SetBold ($TreeView, $hItemSpec, $aTreeViewState[$iItemParam][2]) ;EndIf Return $CDRF_NEWFONT ; $CDRF_NEWFONT must be returned after changing font or colors Case $CDDS_ITEMPOSTPAINT Local $hItemSpec = DllStructGetData($tNMTVCUSTOMDRAW, "ItemSpec") ; $hItemSpec = $hItem Local $iItemState = DllStructGetData($tNMTVCUSTOMDRAW, "ItemState") Local $iItemParam = DllStructGetData($tNMTVCUSTOMDRAW, "ItemParam") ; ItemParam = index in array Local $hDC = DllStructGetData($tNMTVCUSTOMDRAW, "HDC") ; Handle to the item's device context Local $tRECT = _GUICtrlTreeView_DisplayRectEx( $TreeView, $hItemSpec, True) DllStructSetData( $tRECT, "Left", DllStructGetData( $tRECT, "Right") + 7) DllStructSetData( $tRECT, "Right", DllStructGetData( $tRECT, "Right") + 188) ;DllStructSetData( $tNMTVCUSTOMDRAW, "ClrText", $aTreeViewState[$iItemParam][1] ) ; Forecolor of item text DllCall( "gdi32.dll", "int", "SetTextColor", "handle", $hDC, "int", 0xFEB577 ) ; 0x77B5FE _WinAPI_SelectObject( $hDC, $aTreeViewState[$iItemParam][2] ? $TreeViewFontBold : $TreeViewFont ) ; Bold/normal font _WinAPI_DrawText( $hDC, $aTreeViewState[$iItemParam][3], $tRECT, $DT_LEFT ) ; and background color of the device context. _GUICtrlTreeView_SetBold ($TreeView, $hItemSpec, $aTreeViewState[$iItemParam][2]) Return $CDRF_NEWFONT ; $CDRF_NEWFONT must be returned after changing font or colors EndSwitch Case $TVN_SELCHANGEDA, $TVN_SELCHANGEDW AdlibRegister("SubFunction_FillListView_Delayed",300) _WinAPI_RedrawWindow($TreeView) Case $NM_RCLICK Local $tMPos = _WinAPI_GetMousePos(True, $hWndFrom) ; ?????????? ???????????? ???????? Local $hItem = _GUICtrlTreeView_HitTestItem($hWndFrom, DllStructGetData($tMPos, 1), DllStructGetData($tMPos, 2)) ; ???????? ?????????? ?????? If $hItem <> -1 And $hItem <> 0x0 Then DllCall("user32.dll", "int", "TrackPopupMenuEx", "hwnd", $hTVContextMenu, "int", 0, "int", MouseGetPos(0), "int", MouseGetPos(1), "hwnd", $Form1, "ptr", 0) EndIf EndSwitch EndSwitch Return $GUI_RUNDEFMSG EndFunc ;============================================================================================================================================================================================== Func SetIconListToListView() Local $hItemIcon_Item0 = _GDIPlus_BitmapCreateFromMemory(GetIcon_ListView_Item0(), True) Local $hItemIcon_Item1 = _GDIPlus_BitmapCreateFromMemory(GetIcon_ListView_Item1(), True) Local $hItemIcon_Item2 = _GDIPlus_BitmapCreateFromMemory(GetIcon_ListView_Item2(), True) Local $hListView_ImageList = _GUIImageList_Create(16, 16, 5, 3) _GUIImageList_Add($hListView_ImageList, $hItemIcon_Item0) _GUIImageList_Add($hListView_ImageList, $hItemIcon_Item1) _GUIImageList_Add($hListView_ImageList, $hItemIcon_Item2) _GUICtrlListView_SetImageList($ListView, $hListView_ImageList, 1) _WinAPI_DeleteObject($hItemIcon_Item0) _WinAPI_DeleteObject($hItemIcon_Item1) _WinAPI_DeleteObject($hItemIcon_Item2) EndFunc ;============================================================================================================================================================================================== Func GetIcon_ListView_Item0() Local $AleciveFlatwokenAppsFileNewsico $AleciveFlatwokenAppsFileNewsico &= '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' $AleciveFlatwokenAppsFileNewsico &= 'cCUzTXMicSZYoLS4sgAxaLWwLNoA5OT/6/Hw/+wE8fE9AP5laGibRaAHC/EHzOXk8gewRMrJcn2vycmyB6XjsD85fa/JyPIFMRIxAouxcXEAnvAGj6Ok8iMIrcbGchvT3Nz/EQ8A///+AAB3eHgwngEBAbIHAQDO5o/zB/EvsSdxF2h1efIGOHyMj3IGcVgxrIibip3yQa+wCnqKjbIZCIWXmnBwy/95icaM8o2xCOfr678HsweGnbkHAQDR5+atcQTR8QWWq61wBY5yV7ENOH+QkzIR8QUxAnaFIIj/kqaoMi19jgaRcm4xTZOoqf94jIeLsmoxe+rv778HGHh4nL0HAQDV6OcQccXi4PIHbXt/8P+QpaayMPUHMVCxaSK8MG57i45ymXaFGIn/pDA9MXt8jZC3ckqxD/EHm/wHtAebvwcBAwCerKsT0ujn4vBxJoKUlrKL8SexHviDlZeyrjEVcRdxEXFsf7Fc8R6xEbEAcQAxAvVt8hz4+L8HDwAGANjp6OBaz+fl/b+KPwA/AIc/APEHsQd4eHiasAcGCh8HDwDa6ula1/jr6fDwSD8FPwA/APsHHbEHmb8HDwAJAKm1tCAT3u7scjAArduI7eu+MwDsvtw/AIa/PwA3AIeMi4i/Bw8PAA8ADwALAF+zAgBKAPAAAAfgAIAAA8AAAAGAAB6rTAYBUwMAAwcAAw8AA6ofAGc/AG9/AHf/AQCqKAAnEAADIAADAQIFARoABBYZGU08RgBFjEBJSZE/SSBJkD9JSIUBjz8CSIIBjj5IR448qEVEjIAVYIAZFQUeAE1YWJC619X9gMLg3v/D4d+aAaGBEbrW1P2AGa0AHQAUHSEhLbfT0QD9ma6v/6G4uQGCEZyzs/+jursA/63Hxv+mvr4C/4ENt9PS/7DKAMn/ma+w/7jUANP/vdrY/RgbABtdZHNyXLzZGNf/mIARgQGvyckQ/5yys4IForm6C4Ifhw3Igg2mv7//AYEZQ05Ni3GCgQBfvNjX/5qwsQHCC7LNzP+Xra4jwhzBA6O7u8Ilo7tivMIjn7a2wgbAH/8ASFNSjHKDgl+Au9fW/4+jpcItgLjU0v+VqqvGDwHBC5Ooqf+hubkBwC/K/6W9vf+oAMHB/8De3P9JgFNTi3SFhF/JLwCuyMj/qMi//wimxrzGALHTyf8Irs/FwgaasbH/AKnCwv/B393/gElUU4p2hoXCLwiXrK3CD6zGxf8AnMit/5fDp/8AptK2/5/Lr/8AlsOm/5TBpP8GrsA/xRm72Nb/RkBQT4l3h4bCL5QBwCybsbL/sczLAP+xyrv/t8y9AP+9yMD/scm6AP+u2b3/rtK7EP+rxcTGGaW/vkD/P0dHiHjAD7kM1tTCZcFKudXU/wDa2NH/6uTZ/wDp49r/6OPb/wDb2tD/xsXC/wauwE/BCYmdnv+hALq4/z9IR4d4HojAD8AMwWTBALbR0ED/2OLa/9rAANsPwA7BAcUCwQaYr6//gIyhof+iu7rBDxCFeYiHwj+dtLRHwljBXMEBpLy9wAC8EcJbnbS1wHC4/9hA4+P/9fj4wgDTANbW5hkaGix7wIiIW77c2sJ84TaAjaCi/7POzeIAAIyfof+yzMz/AI2ho/+qw8P/CPP29mJr3d3d5hAeHh4tYV9gaGcAIcDb2fuQpaYc/6RgDeFA4TOVqqwj4iThHZ+3t2JW9vkK+WUHLIlvtcXEbBDJ5OL7fWfW2tkK5WAHKxF4Z25uIQCJk5JaiZSTXxVhAIpmAJRkAJNfJ8goKCTtBoABY4ofABMEAOAFAANgBgcAAADADwAA' $AleciveFlatwokenAppsFileNewsico = _WinAPI_Base64Decode($AleciveFlatwokenAppsFileNewsico) Local $tSource = DllStructCreate('byte[' & BinaryLen($AleciveFlatwokenAppsFileNewsico) & ']') DllStructSetData($tSource, 1, $AleciveFlatwokenAppsFileNewsico) Local $tDecompress _WinAPI_LZNTDecompress($tSource, $tDecompress, 5430) $tSource = 0 Return Binary(DllStructGetData($tDecompress, 1)) EndFunc ;============================================================================================================================================================================================== Func GetIcon_ListView_Item1() Local $AleciveFlatwokenAppsUnlockico ;$AleciveFlatwokenAppsUnlockico &= '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' ;$AleciveFlatwokenAppsUnlockico &= 'PwA/AD8ABz4AsQQxBYfK6vU7aFBagKAGDO/fAwB7AKe8E6Xd93KjANz3rZ7b976euNv4vz8APwAxAJ89AALccQD3vpXH37IAY4STfxYeIiZ4AQICNhcPAA8ADwDQsgIASgDwAAAH4ACAAAPAAAABgAAer10GAWcBbwF3/wAAKAATahAAAyAAAwECBRoABAAEEBlMDS1GixANMEuRgQEMKUEQkQokOY8BIjaOUAMME1+AGRQFHhMAPFuQLJPj/S4Am/D/Lpvx/ysAkOD/I3e5/yMEdriQAbf/InCtIP0PLkatgSEIFwAiLTGZ6P0xngTx/4EBLZPg/yVAern/JXm4mwF1ALH9BQ8WXB5SQHpcNKHx/4EBN8Ci8v/3+/4BfxIAAPf6/P8rfbr/CCh7uIIBDytAiwAkYItfN6Py/4GBATql8v/8/ccPONLq+8IABQDBBi5/ILr/Kn25wgARLwBEjCZjjV86pgPADsAAPqjy//7+cccPh8n2wgAFAMEGMUCCuv8sf7nCABIAMEWLKmaPXz1IqfL/wQBAqssfbwy/9cIAyR8xg7r/CC6BucIAFDJGisAuaZBfQKzADsAA6EWu8so7/cAbwQAJAAg2hrrAELn/NIwAxf8bQFeJM2xAkF9CrvP/wQBEAK/y/6na+f+vAN35/6vT6/+oRMvhwgC51efCDqUQyuD/NMAPNo7GAP9BrO//HkNbAIg4b5FfRbHzAv/JAECj4P81iCC7/zWHusIAXJ4Cx8IPPoy8/zmQCsbAGe/CCSFFW4cAPXKRX0i08/8BxQBKtfL/0eTwAP9gocj/N4m6EcIAaKbLwj4/lccQ/0ex78YKI0ZbAIVBdZFfS7fzAv/JAMTn+v/W52Dw/2amycIAwQLCQOP0/0q078oJJQBIW4RId5BbTgi58//JAFi98//gu+T6//VgSWEAYQEDYQLtBChHWH1BXgBsIV7B9PtRvAz0/38AZwBcvvH8EBMcIT/hZ3uzzwBsZ8b1+1S/9AL/fwD0/2bD8fxQO1tqhUAHAmVwTABmcyFkiJlbZAiJm195AF1+jlyQHykuKeUGgAHjhwcfAAsAYo4DAAA=' $AleciveFlatwokenAppsUnlockico &= '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' $AleciveFlatwokenAppsUnlockico &= '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' $AleciveFlatwokenAppsUnlockico &= 'sOIdIkpCfTtfQFghSsqy++YP0wK6YhZJ28T/S90ix2AAxv9J4AlG1oC+/0PSuf9B4A8B4iTGrvwSHRs/AeFnbrapbFTPuIr7YRND4B9F1LxiCFhI2MFiAGEHROASQgTPt2IkUsu1/DQoXFWFQAcCZXBFaABiIVyMg1tdjgCFX16Phl9ekOCHX1+QiGIAYQFhAgFhA1aBeVwcKifyKeUGgAHjhx8ACwBijgADAAA=' $AleciveFlatwokenAppsUnlockico = _WinAPI_Base64Decode($AleciveFlatwokenAppsUnlockico) Local $tSource = DllStructCreate('byte[' & BinaryLen($AleciveFlatwokenAppsUnlockico) & ']') DllStructSetData($tSource, 1, $AleciveFlatwokenAppsUnlockico) Local $tDecompress _WinAPI_LZNTDecompress($tSource, $tDecompress, 5430) $tSource = 0 Return Binary(DllStructGetData($tDecompress, 1)) EndFunc ;============================================================================================================================================================================================== Func GetIcon_ListView_Item2() Local $AleciveFlatwokenAppsMahjonggico $AleciveFlatwokenAppsMahjonggico &= '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' $AleciveFlatwokenAppsMahjonggico &= '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' $AleciveFlatwokenAppsMahjonggico &= 'BXEAfWQAc4WIXCbIKywp5QaAAeOHHwADCwBijgMAAA==' $AleciveFlatwokenAppsMahjonggico = _WinAPI_Base64Decode($AleciveFlatwokenAppsMahjonggico) Local $tSource = DllStructCreate('byte[' & BinaryLen($AleciveFlatwokenAppsMahjonggico) & ']') DllStructSetData($tSource, 1, $AleciveFlatwokenAppsMahjonggico) Local $tDecompress _WinAPI_LZNTDecompress($tSource, $tDecompress, 5430) $tSource = 0 Return Binary(DllStructGetData($tDecompress, 1)) EndFunc ;============================================================================================================================================================================================== Func _WinAPI_Base64Decode($sB64String) Local $aCrypt = DllCall($hDLL_Crypt32, "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "ptr", 0, "dword*", 0, "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(1, 0, "") Local $bBuffer = DllStructCreate("byte[" & $aCrypt[5] & "]") $aCrypt = DllCall($hDLL_Crypt32, "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "struct*", $bBuffer, "dword*", $aCrypt[5], "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(2, 0, "") Return DllStructGetData($bBuffer, 1) EndFunc ;==>_WinAPI_Base64Decode ;============================================================================================================================================================================================== Func _WinAPI_LZNTDecompress(ByRef $tInput, ByRef $tOutput, $iBufferSize) $tOutput = DllStructCreate("byte[" & $iBufferSize & "]") If @error Then Return SetError(1, 0, 0) Local $aRet = DllCall($hDLL_ntdll, "uint", "RtlDecompressBuffer", "ushort", 0x0002, "struct*", $tOutput, "ulong", $iBufferSize, "struct*", $tInput, "ulong", DllStructGetSize($tInput), "ulong*", 0) If @error Then Return SetError(2, 0, 0) If $aRet[0] Then Return SetError(3, $aRet[0], 0) Return $aRet[6] EndFunc ;==>_WinAPI_LZNTDecompress ;============================================================================================================================================================================================== Â
LarsJ Posted March 30, 2018 Posted March 30, 2018 Mr. Iczer, Redraw the icon of selected items with _GUIImageList_Draw in the custom draw post paint stage. Here a modified version of the example for _GUICtrlListView_CreateSolidBitMap in the help file: expandcollapse popup#AutoIt3Wrapper_Au3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6 #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <GuiImageList.au3> #include <GuiListView.au3> Opt( "MustDeclareVars", 1 ) Global $idListView, $hListView, $hImage Example() Func Example() GUICreate("ListView Create Solid BitMap", 400, 300) $idListView = GUICtrlCreateListView("", 2, 2, 394, 268, $GUI_SS_DEFAULT_LISTVIEW-$LVS_SINGLESEL) $hListView = GUICtrlGetHandle( $idListView ) GUISetState(@SW_SHOW) GUIRegisterMsg($WM_NOTIFY, "WM_NOTIFY") ; Load images $hImage = _GUIImageList_Create() _GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($hListView, 0xFF0000, 16, 16)) _GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($hListView, 0x00FF00, 16, 16)) _GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($hListView, 0x0000FF, 16, 16)) _GUICtrlListView_SetImageList($idListView, $hImage, 1) ; Add columns _GUICtrlListView_AddColumn($idListView, "Items", 100) ; Add items _GUICtrlListView_AddItem($idListView, "Item 1", 0) _GUICtrlListView_AddItem($idListView, "Item 2", 1) _GUICtrlListView_AddItem($idListView, "Item 3", 2) ; Loop until the user exits. Do Until GUIGetMsg() = $GUI_EVENT_CLOSE GUIDelete() EndFunc Func WM_NOTIFY( $hWnd, $iMsg, $wParam, $lParam ) Static $hDC, $iItem, $tRect = DllStructCreate( $tagRECT ), $pRect = DllStructGetPtr( $tRect ) Local $tNMHDR = DllStructCreate($tagNMHDR, $lParam) Switch HWnd(DllStructGetData($tNMHDR, "hWndFrom")) Case $hListView Switch DllStructGetData($tNMHDR, "Code") Case $NM_CUSTOMDRAW Local $tNMLVCUSTOMDRAW = DllStructCreate( $tagNMLVCUSTOMDRAW, $lParam ) Switch DllStructGetData( $tNMLVCUSTOMDRAW, "dwDrawStage" ) Case $CDDS_PREPAINT ; Before the paint cycle begins $hDC = DllStructGetData( $tNMLVCUSTOMDRAW, "hdc" ) ; Device context Return $CDRF_NOTIFYITEMDRAW ; Notify the parent window before an item is painted Case $CDDS_ITEMPREPAINT ; Before an item is painted $iItem = DllStructGetData( $tNMLVCUSTOMDRAW, "dwItemSpec" ) ; Item index If GUICtrlSendMsg( $idListView, $LVM_GETITEMSTATE, $iItem, $LVIS_SELECTED ) Then _ ; Selected item? Return $CDRF_NOTIFYPOSTPAINT ; Custom drawing of selected items Return $CDRF_NEWFONT ; Default drawing of other items Case $CDDS_ITEMPOSTPAINT ; After an item has been painted ; Subitem rectangle DllStructSetData( $tRect, "Top", 0 ) DllStructSetData( $tRect, "Left", $LVIR_ICON ) GUICtrlSendMsg( $idListView, $LVM_GETSUBITEMRECT, $iItem, $pRect ) _GUIImageList_Draw( $hImage, $iItem, $hDC, DllStructGetData( $tRect, "Left" ), DllStructGetData( $tRect, "Top" ) + 1 ) Return $CDRF_NEWFONT ; $CDRF_NEWFONT must be returned after changing font or colors EndSwitch EndSwitch EndSwitch #forceref $hWnd, $iMsg, $wParam EndFunc  And the same example with your icons copied from the code in first post: expandcollapse popup#AutoIt3Wrapper_Au3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6 #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <GuiImageList.au3> #include <GuiListView.au3> #include <GDIPlus.au3> Opt( "MustDeclareVars", 1 ) Global $idListView, $hListView, $hImage Example() Func Example() GUICreate("ListView Create Solid BitMap", 400, 300) $idListView = GUICtrlCreateListView("", 2, 2, 394, 268, $GUI_SS_DEFAULT_LISTVIEW-$LVS_SINGLESEL) $hListView = GUICtrlGetHandle( $idListView ) GUISetState(@SW_SHOW) GUIRegisterMsg($WM_NOTIFY, "WM_NOTIFY") #cs ; Load images $hImage = _GUIImageList_Create() _GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($hListView, 0xFF0000, 16, 16)) _GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($hListView, 0x00FF00, 16, 16)) _GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($hListView, 0x0000FF, 16, 16)) _GUICtrlListView_SetImageList($idListView, $hImage, 1) #ce ; Load images _GDIPlus_Startup() $hImage = _GUIImageList_Create(16, 16, 5, 3) _GUIImageList_Add($hImage, _GDIPlus_BitmapCreateFromMemory(GetIcon_ListView_Item0(), True)) _GUIImageList_Add($hImage, _GDIPlus_BitmapCreateFromMemory(GetIcon_ListView_Item1(), True)) _GUIImageList_Add($hImage, _GDIPlus_BitmapCreateFromMemory(GetIcon_ListView_Item2(), True)) _GUICtrlListView_SetImageList($idListView, $hImage, 1) _GDIPlus_Shutdown() ; Add columns _GUICtrlListView_AddColumn($idListView, "Items", 100) ; Add items _GUICtrlListView_AddItem($idListView, "Item 1", 0) _GUICtrlListView_AddItem($idListView, "Item 2", 1) _GUICtrlListView_AddItem($idListView, "Item 3", 2) ; Loop until the user exits. Do Until GUIGetMsg() = $GUI_EVENT_CLOSE GUIDelete() EndFunc Func WM_NOTIFY( $hWnd, $iMsg, $wParam, $lParam ) Static $hDC, $iItem, $tRect = DllStructCreate( $tagRECT ), $pRect = DllStructGetPtr( $tRect ) Local $tNMHDR = DllStructCreate($tagNMHDR, $lParam) Switch HWnd(DllStructGetData($tNMHDR, "hWndFrom")) Case $hListView Switch DllStructGetData($tNMHDR, "Code") Case $NM_CUSTOMDRAW Local $tNMLVCUSTOMDRAW = DllStructCreate( $tagNMLVCUSTOMDRAW, $lParam ) Switch DllStructGetData( $tNMLVCUSTOMDRAW, "dwDrawStage" ) Case $CDDS_PREPAINT ; Before the paint cycle begins $hDC = DllStructGetData( $tNMLVCUSTOMDRAW, "hdc" ) ; Device context Return $CDRF_NOTIFYITEMDRAW ; Notify the parent window before an item is painted Case $CDDS_ITEMPREPAINT ; Before an item is painted $iItem = DllStructGetData( $tNMLVCUSTOMDRAW, "dwItemSpec" ) ; Item index If GUICtrlSendMsg( $idListView, $LVM_GETITEMSTATE, $iItem, $LVIS_SELECTED ) Then _ ; Selected item? Return $CDRF_NOTIFYPOSTPAINT ; Custom drawing of selected items Return $CDRF_NEWFONT ; Default drawing of other items Case $CDDS_ITEMPOSTPAINT ; After an item has been painted ; Subitem rectangle DllStructSetData( $tRect, "Top", 0 ) DllStructSetData( $tRect, "Left", $LVIR_ICON ) GUICtrlSendMsg( $idListView, $LVM_GETSUBITEMRECT, $iItem, $pRect ) _GUIImageList_Draw( $hImage, $iItem, $hDC, DllStructGetData( $tRect, "Left" ), DllStructGetData( $tRect, "Top" ) + 1 ) Return $CDRF_NEWFONT ; $CDRF_NEWFONT must be returned after changing font or colors EndSwitch EndSwitch EndSwitch #forceref $hWnd, $iMsg, $wParam EndFunc ;============================================================================================================================================================================================== Func GetIcon_ListView_Item0() Local $AleciveFlatwokenAppsFileNewsico $AleciveFlatwokenAppsFileNewsico &= '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' $AleciveFlatwokenAppsFileNewsico &= 'cCUzTXMicSZYoLS4sgAxaLWwLNoA5OT/6/Hw/+wE8fE9AP5laGibRaAHC/EHzOXk8gewRMrJcn2vycmyB6XjsD85fa/JyPIFMRIxAouxcXEAnvAGj6Ok8iMIrcbGchvT3Nz/EQ8A///+AAB3eHgwngEBAbIHAQDO5o/zB/EvsSdxF2h1efIGOHyMj3IGcVgxrIibip3yQa+wCnqKjbIZCIWXmnBwy/95icaM8o2xCOfr678HsweGnbkHAQDR5+atcQTR8QWWq61wBY5yV7ENOH+QkzIR8QUxAnaFIIj/kqaoMi19jgaRcm4xTZOoqf94jIeLsmoxe+rv778HGHh4nL0HAQDV6OcQccXi4PIHbXt/8P+QpaayMPUHMVCxaSK8MG57i45ymXaFGIn/pDA9MXt8jZC3ckqxD/EHm/wHtAebvwcBAwCerKsT0ujn4vBxJoKUlrKL8SexHviDlZeyrjEVcRdxEXFsf7Fc8R6xEbEAcQAxAvVt8hz4+L8HDwAGANjp6OBaz+fl/b+KPwA/AIc/APEHsQd4eHiasAcGCh8HDwDa6ula1/jr6fDwSD8FPwA/APsHHbEHmb8HDwAJAKm1tCAT3u7scjAArduI7eu+MwDsvtw/AIa/PwA3AIeMi4i/Bw8PAA8ADwALAF+zAgBKAPAAAAfgAIAAA8AAAAGAAB6rTAYBUwMAAwcAAw8AA6ofAGc/AG9/AHf/AQCqKAAnEAADIAADAQIFARoABBYZGU08RgBFjEBJSZE/SSBJkD9JSIUBjz8CSIIBjj5IR448qEVEjIAVYIAZFQUeAE1YWJC619X9gMLg3v/D4d+aAaGBEbrW1P2AGa0AHQAUHSEhLbfT0QD9ma6v/6G4uQGCEZyzs/+jursA/63Hxv+mvr4C/4ENt9PS/7DKAMn/ma+w/7jUANP/vdrY/RgbABtdZHNyXLzZGNf/mIARgQGvyckQ/5yys4IForm6C4Ifhw3Igg2mv7//AYEZQ05Ni3GCgQBfvNjX/5qwsQHCC7LNzP+Xra4jwhzBA6O7u8Ilo7tivMIjn7a2wgbAH/8ASFNSjHKDgl+Au9fW/4+jpcItgLjU0v+VqqvGDwHBC5Ooqf+hubkBwC/K/6W9vf+oAMHB/8De3P9JgFNTi3SFhF/JLwCuyMj/qMi//wimxrzGALHTyf8Irs/FwgaasbH/AKnCwv/B393/gElUU4p2hoXCLwiXrK3CD6zGxf8AnMit/5fDp/8AptK2/5/Lr/8AlsOm/5TBpP8GrsA/xRm72Nb/RkBQT4l3h4bCL5QBwCybsbL/sczLAP+xyrv/t8y9AP+9yMD/scm6AP+u2b3/rtK7EP+rxcTGGaW/vkD/P0dHiHjAD7kM1tTCZcFKudXU/wDa2NH/6uTZ/wDp49r/6OPb/wDb2tD/xsXC/wauwE/BCYmdnv+hALq4/z9IR4d4HojAD8AMwWTBALbR0ED/2OLa/9rAANsPwA7BAcUCwQaYr6//gIyhof+iu7rBDxCFeYiHwj+dtLRHwljBXMEBpLy9wAC8EcJbnbS1wHC4/9hA4+P/9fj4wgDTANbW5hkaGix7wIiIW77c2sJ84TaAjaCi/7POzeIAAIyfof+yzMz/AI2ho/+qw8P/CPP29mJr3d3d5hAeHh4tYV9gaGcAIcDb2fuQpaYc/6RgDeFA4TOVqqwj4iThHZ+3t2JW9vkK+WUHLIlvtcXEbBDJ5OL7fWfW2tkK5WAHKxF4Z25uIQCJk5JaiZSTXxVhAIpmAJRkAJNfJ8goKCTtBoABY4ofABMEAOAFAANgBgcAAADADwAA' $AleciveFlatwokenAppsFileNewsico = _WinAPI_Base64Decode($AleciveFlatwokenAppsFileNewsico) Local $tSource = DllStructCreate('byte[' & BinaryLen($AleciveFlatwokenAppsFileNewsico) & ']') DllStructSetData($tSource, 1, $AleciveFlatwokenAppsFileNewsico) Local $tDecompress _WinAPI_LZNTDecompress($tSource, $tDecompress, 5430) $tSource = 0 Return Binary(DllStructGetData($tDecompress, 1)) EndFunc ;============================================================================================================================================================================================== Func GetIcon_ListView_Item1() Local $AleciveFlatwokenAppsUnlockico ;$AleciveFlatwokenAppsUnlockico &= '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' ;$AleciveFlatwokenAppsUnlockico &= 'PwA/AD8ABz4AsQQxBYfK6vU7aFBagKAGDO/fAwB7AKe8E6Xd93KjANz3rZ7b976euNv4vz8APwAxAJ89AALccQD3vpXH37IAY4STfxYeIiZ4AQICNhcPAA8ADwDQsgIASgDwAAAH4ACAAAPAAAABgAAer10GAWcBbwF3/wAAKAATahAAAyAAAwECBRoABAAEEBlMDS1GixANMEuRgQEMKUEQkQokOY8BIjaOUAMME1+AGRQFHhMAPFuQLJPj/S4Am/D/Lpvx/ysAkOD/I3e5/yMEdriQAbf/InCtIP0PLkatgSEIFwAiLTGZ6P0xngTx/4EBLZPg/yVAern/JXm4mwF1ALH9BQ8WXB5SQHpcNKHx/4EBN8Ci8v/3+/4BfxIAAPf6/P8rfbr/CCh7uIIBDytAiwAkYItfN6Py/4GBATql8v/8/ccPONLq+8IABQDBBi5/ILr/Kn25wgARLwBEjCZjjV86pgPADsAAPqjy//7+cccPh8n2wgAFAMEGMUCCuv8sf7nCABIAMEWLKmaPXz1IqfL/wQBAqssfbwy/9cIAyR8xg7r/CC6BucIAFDJGisAuaZBfQKzADsAA6EWu8so7/cAbwQAJAAg2hrrAELn/NIwAxf8bQFeJM2xAkF9CrvP/wQBEAK/y/6na+f+vAN35/6vT6/+oRMvhwgC51efCDqUQyuD/NMAPNo7GAP9BrO//HkNbAIg4b5FfRbHzAv/JAECj4P81iCC7/zWHusIAXJ4Cx8IPPoy8/zmQCsbAGe/CCSFFW4cAPXKRX0i08/8BxQBKtfL/0eTwAP9gocj/N4m6EcIAaKbLwj4/lccQ/0ex78YKI0ZbAIVBdZFfS7fzAv/JAMTn+v/W52Dw/2amycIAwQLCQOP0/0q078oJJQBIW4RId5BbTgi58//JAFi98//gu+T6//VgSWEAYQEDYQLtBChHWH1BXgBsIV7B9PtRvAz0/38AZwBcvvH8EBMcIT/hZ3uzzwBsZ8b1+1S/9AL/fwD0/2bD8fxQO1tqhUAHAmVwTABmcyFkiJlbZAiJm195AF1+jlyQHykuKeUGgAHjhwcfAAsAYo4DAAA=' $AleciveFlatwokenAppsUnlockico &= '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' $AleciveFlatwokenAppsUnlockico &= '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' $AleciveFlatwokenAppsUnlockico &= 'sOIdIkpCfTtfQFghSsqy++YP0wK6YhZJ28T/S90ix2AAxv9J4AlG1oC+/0PSuf9B4A8B4iTGrvwSHRs/AeFnbrapbFTPuIr7YRND4B9F1LxiCFhI2MFiAGEHROASQgTPt2IkUsu1/DQoXFWFQAcCZXBFaABiIVyMg1tdjgCFX16Phl9ekOCHX1+QiGIAYQFhAgFhA1aBeVwcKifyKeUGgAHjhx8ACwBijgADAAA=' $AleciveFlatwokenAppsUnlockico = _WinAPI_Base64Decode($AleciveFlatwokenAppsUnlockico) Local $tSource = DllStructCreate('byte[' & BinaryLen($AleciveFlatwokenAppsUnlockico) & ']') DllStructSetData($tSource, 1, $AleciveFlatwokenAppsUnlockico) Local $tDecompress _WinAPI_LZNTDecompress($tSource, $tDecompress, 5430) $tSource = 0 Return Binary(DllStructGetData($tDecompress, 1)) EndFunc ;============================================================================================================================================================================================== Func GetIcon_ListView_Item2() Local $AleciveFlatwokenAppsMahjonggico $AleciveFlatwokenAppsMahjonggico &= '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' $AleciveFlatwokenAppsMahjonggico &= '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' $AleciveFlatwokenAppsMahjonggico &= 'BXEAfWQAc4WIXCbIKywp5QaAAeOHHwADCwBijgMAAA==' $AleciveFlatwokenAppsMahjonggico = _WinAPI_Base64Decode($AleciveFlatwokenAppsMahjonggico) Local $tSource = DllStructCreate('byte[' & BinaryLen($AleciveFlatwokenAppsMahjonggico) & ']') DllStructSetData($tSource, 1, $AleciveFlatwokenAppsMahjonggico) Local $tDecompress _WinAPI_LZNTDecompress($tSource, $tDecompress, 5430) $tSource = 0 Return Binary(DllStructGetData($tDecompress, 1)) EndFunc ;============================================================================================================================================================================================== Func _WinAPI_Base64Decode($sB64String) Local $aCrypt = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "ptr", 0, "dword*", 0, "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(1, 0, "") Local $bBuffer = DllStructCreate("byte[" & $aCrypt[5] & "]") $aCrypt = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "struct*", $bBuffer, "dword*", $aCrypt[5], "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(2, 0, "") Return DllStructGetData($bBuffer, 1) EndFunc ;==>_WinAPI_Base64Decode ;============================================================================================================================================================================================== Func _WinAPI_LZNTDecompress(ByRef $tInput, ByRef $tOutput, $iBufferSize) $tOutput = DllStructCreate("byte[" & $iBufferSize & "]") If @error Then Return SetError(1, 0, 0) Local $aRet = DllCall("ntdll.dll", "uint", "RtlDecompressBuffer", "ushort", 0x0002, "struct*", $tOutput, "ulong", $iBufferSize, "struct*", $tInput, "ulong", DllStructGetSize($tInput), "ulong*", 0) If @error Then Return SetError(2, 0, 0) If $aRet[0] Then Return SetError(3, $aRet[0], 0) Return $aRet[6] EndFunc ;==>_WinAPI_LZNTDecompress ;==============================================================================================================================================================================================  To customize my examples to your code in the first post, please take into account that my examples contain only items and item icons while your code contains subitems and subitem icons. You need more code. Controls,  File Explorer,  ROT objects,  UI Automation,  Windows Message MonitorCompiled code: Accessing AutoIt variables,  DotNet.au3 UDF,  Using C# and VB codeShell menus: The Context menu,  The Favorites menu. Shell related: Control Panel,  System Image ListsGraphics related: Rubik's Cube,  OpenGL without external libraries,  Navigating in an image,  Non-rectangular selectionsListView controls: Colors and fonts,  Multi-line header,  Multi-line items,  Checkboxes and icons,  Incremental searchListView controls: Virtual ListViews,  Editing cells,  Data display functions
Iczer Posted April 10, 2018 Author Posted April 10, 2018 forgot to post working example expandcollapse popup#include <GuiListView.au3> #include <FontConstants.au3> #include <GUIConstantsEx.au3> #include <ListViewConstants.au3> #include <TreeViewConstants.au3> #include <WindowsConstants.au3> #include <GuiTreeView.au3> #include <SQLite.au3> #include <Math.au3> #include <GDIPlus.au3> $hDLL_Crypt32 = DllOpen("Crypt32.dll") $hDLL_ntdll = DllOpen("ntdll.dll") _GDIPlus_Startup() Global Const $tagNMLVCACHEHINT = $tagNMHDR & ";int iFrom;int iTo" Global $aListView, $hListView, $TreeView_SelTitle, $aTreeViewState[19][8] = [[18,"","","","","","",""]], $sSelectedTVIndex = 3 Global $hListView_ImageList Opt("GUIOnEventMode", 1) #Region ### START Koda GUI section ### Form= Global $Form1 = GUICreate("Form1", 881, 516, -1, -1) GUISetOnEvent($GUI_EVENT_CLOSE, "Form1Close") Global $hTreeView = _GUICtrlTreeView_Create($Form1, 8, 16, 319, 489, BitOR($GUI_SS_DEFAULT_TREEVIEW,$WS_HSCROLL,$WS_VSCROLL, $TVS_SHOWSELALWAYS,$WS_HSCROLL,$WS_BORDER, $TVS_INFOTIP), BitOR($WS_EX_CLIENTEDGE,$WS_EX_STATICEDGE)) $TreeView_Root_1 = _GUICtrlTreeView_Add($hTreeView, 0, "Root - 1") _GUICtrlTreeView_SetIcon($hTreeView, $TreeView_Root_1, "shell32.dll", 4) $TreeView_Root_2 = _GUICtrlTreeView_Add($hTreeView, 0, "Root - 2") _GUICtrlTreeView_SetIcon($hTreeView, $TreeView_Root_2, "shell32.dll", 4) Global $idListView = GUICtrlCreateListView("Rowid|Name|Time|Category", 336, 16, 538, 486, $LVS_SHOWSELALWAYS);,$LVS_SINGLESEL _GUICtrlListView_SetExtendedListViewStyle( $idListView, BitOR($LVS_EX_DOUBLEBUFFER, $LVS_EX_FULLROWSELECT, $LVS_EX_SUBITEMIMAGES, $WS_EX_CLIENTEDGE, $WS_EX_STATICEDGE)) GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 0, 0) GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 1, 250) GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 2, 88) GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 3, 112) GUICtrlSetOnEvent(-1, "ListViewClick") SetIconListToListView() $hListView = GUICtrlGetHandle($idListView) ConsoleWrite($hListView & @CRLF) ;------------------------------------------------------------------------------------------ ; Get the font of the TreeView control ; Copied from the _GUICtrlGetFont example by KaFu ; See http://www.autoitscript.com/forum/index.php?showtopic=124526 Local $hDC = _WinAPI_GetDC( $hTreeView ) $hFont = _SendMessage( $hTreeView, $WM_GETFONT ) Local $hObject = _WinAPI_SelectObject( $hDC, $hFont ) Local $lvLOGFONT = DllStructCreate( $tagLOGFONT ) DllCall( 'gdi32.dll', 'int', 'GetObjectW', 'ptr', $hFont, 'int', DllStructGetSize( $lvLOGFONT ), 'ptr', DllStructGetPtr( $lvLOGFONT ) ) _WinAPI_SelectObject( $hDC, $hObject ) _WinAPI_ReleaseDC( $hTreeView, $hDC ) $TreeViewFont = _WinAPI_CreateFontIndirect( $lvLOGFONT ) Local $iWeight = BitOR( DllStructGetData( $lvLOGFONT, "Weight" ), $FW_BOLD ) DllStructSetData( $lvLOGFONT, "Weight", $iWeight ) $TreeViewFontBold = _WinAPI_CreateFontIndirect( $lvLOGFONT ) ;------------------------------------------------------------------------------------------ Local $idTVContextMenu = GUICtrlCreateContextMenu(GUICtrlCreateDummy()) $hTVContextMenu = GUICtrlGetHandle($idTVContextMenu) Local $idTVContextMenu_Refresh = GUICtrlCreateMenuItem("Refresh", $idTVContextMenu) Local $idTVContextMenu_Rename = GUICtrlCreateMenuItem("Rename", $idTVContextMenu) GUICtrlCreateMenuItem("", $idTVContextMenu) ; separator Local $idTVContextMenu_MarkALLRead = GUICtrlCreateMenuItem("Mark ALL Items Read", $idTVContextMenu) Local $idTVContextMenu_MarkALLUnRead = GUICtrlCreateMenuItem("Mark ALL Items UnRead", $idTVContextMenu) ;------------------------------------------------------------------------------------------ GUIRegisterMsg($WM_NOTIFY, "LWS_WM_NOTIFY") GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### SubFunction_FillTreeView() While 1 Sleep(100) WEnd Func Form1Close() GUIRegisterMsg( $WM_NOTIFY, "" ) ; DllClose($hDLL_Crypt32) DllClose($hDLL_ntdll) _GDIPlus_Shutdown() Exit EndFunc ;========================================================================================== Func ListViewClick() EndFunc ;========================================================================================== Func TreeView1Click() Local $sQuery, $aResult, $iRows, $iColumns Static Local $TreeView_SelTitlePRE = "" If $TreeView_SelTitlePRE == "" Then $TreeView_Selected = _GUICtrlTreeView_GetFirstChild($hTreeView, $TreeView_Root_1) _GUICtrlTreeView_ClickItem($hTreeView, $TreeView_Selected, "left") Else $TreeView_Selected = _GUICtrlTreeView_GetSelection($hTreeView) EndIf $TreeView_SelTitle = _GUICtrlTreeView_GetText($hTreeView, $TreeView_Selected) If $TreeView_SelTitle == $TreeView_SelTitlePRE Then Return Else $TreeView_SelTitlePRE = $TreeView_SelTitle EndIf ConsoleWrite($TreeView_SelTitle & @CRLF) EndFunc ;========================================================================================== Func SubFunction_FillTreeView() ConsoleWrite(" > $sSelected TV Index = " & $sSelectedTVIndex & @CRLF) ConsoleWrite(" > $sSelected TV Name = " & $aTreeViewState[$sSelectedTVIndex][5] & @CRLF) Local $idTVItem[$aTreeViewState[0][0]+1] = [$aTreeViewState[0][0]] _GUICtrlTreeView_BeginUpdate($hTreeView) _GUICtrlTreeView_DeleteChildren($hTreeView, $TreeView_Root_1) _GUICtrlTreeView_DeleteChildren($hTreeView, $TreeView_Root_2) _GUICtrlTreeView_SetTextColor($hTreeView, 0x77B5FE) ; color of additional text For $i = 1 To $aTreeViewState[0][0] $aTreeViewState[$i][0] = 3 ; icon num in "shell32.dll" $aTreeViewState[$i][1] = 0x000000 ; item text color $aTreeViewState[$i][2] = 0 ; text is bold (or not) $aTreeViewState[$i][3] = "some info" ; some additional text $aTreeViewState[$i][5] = String("item " & $i); item name Switch Mod($i,2) Case 0 $idTVItem[$i] = _GUICtrlTreeView_AddChild($hTreeView,$TreeView_Root_2, $aTreeViewState[$i][5]) Case Else $idTVItem[$i] = _GUICtrlTreeView_AddChild($hTreeView,$TreeView_Root_1, $aTreeViewState[$i][5]) EndSwitch Switch Mod($i,3) Case 0 $aTreeViewState[$i][2] = 0 Case Else $aTreeViewState[$i][2] = 1 EndSwitch _GUICtrlTreeView_SetItemParam($hTreeView, $idTVItem[$i], $i) _GUICtrlTreeView_SetIcon($hTreeView, $idTVItem[$i], "shell32.dll", $aTreeViewState[$i][0]) Next _GUICtrlTreeView_Expand($hTreeView, $TreeView_Root_1, True) _GUICtrlTreeView_EndUpdate($hTreeView) _GUICtrlTreeView_ClickItem($hTreeView, $idTVItem[$sSelectedTVIndex]) SubFunction_FillListView() EndFunc ;========================================================================================== Func SubFunction_FillListView_Delayed() AdlibUnRegister("SubFunction_FillListView_Delayed") SubFunction_FillListView() EndFunc ;========================================================================================== Func SubFunction_FillListView() _GUICtrlListView_BeginUpdate ($idListView) _GUICtrlListView_DeleteAllItems ($idListView) For $i = 0 To 63 $ret = _GUICtrlListView_AddItem($idListView, "RowID "&$i&": Col 0") ;ConsoleWrite($i & @TAB & "$ret = " & $ret & @CRLF) _GUICtrlListView_AddSubItem($idListView, $i, "Row "&$i&": Col 1", 1, Random(0,2,1)); _GUICtrlListView_AddSubItem($idListView, $i, "Col 2", 2) _GUICtrlListView_AddSubItem($idListView, $i, "Col 3", 3) Next _GUICtrlListView_EndUpdate ($idListView) EndFunc ;========================================================================================== Func LWS_WM_NOTIFY( $hWnd, $iMsg, $wParam, $lParam ) Local Static $tText = DllStructCreate( "wchar[512]" ) Local Static $pText = DllStructGetPtr( $tText ) Local Static $aResult, $iRows, $iFrom, $tRectLVI = DllStructCreate( $tagRECT ), $pRectLVI = DllStructGetPtr( $tRectLVI ) Local $tNMHDR, $hWndFrom, $iCode, $tInfo, $VKey $tNMHDR = DllStructCreate( $tagNMHDR, $lParam ) $hWndFrom = HWnd( DllStructGetData( $tNMHDR, "hWndFrom" ) ) $iCode = DllStructGetData( $tNMHDR, "Code" ) Switch $hWndFrom Case $hTreeView Switch $iCode Case $NM_CUSTOMDRAW Local $tNMTVCUSTOMDRAW = DllStructCreate($tagNMTVCUSTOMDRAW, $lParam) Local $dwDrawStage = DllStructGetData($tNMTVCUSTOMDRAW, "DrawStage") Switch $dwDrawStage ; Holds a value that specifies the drawing stage Case $CDDS_PREPAINT ; Before the paint cycle begins Return $CDRF_NOTIFYITEMDRAW ; Notify the parent window of any item-related drawing operations Case $CDDS_ITEMPREPAINT ; Before painting an item Local $hItemSpec = DllStructGetData($tNMTVCUSTOMDRAW, "ItemSpec") ; $hItemSpec = $hItem Local $iItemState = DllStructGetData($tNMTVCUSTOMDRAW, "ItemState") Local $iItemParam = DllStructGetData($tNMTVCUSTOMDRAW, "ItemParam") ; ItemParam = index in array Local $hDC = DllStructGetData($tNMTVCUSTOMDRAW, "HDC") ; Handle to the item's device context $iSelected = DllCall( "user32.dll", "lresult", "SendMessageW", "hwnd", $hTreeView, "uint", $TVM_GETITEMSTATE, "wparam", $hItemSpec, "lparam", $TVIS_SELECTED )[0] ; Selected state If BitAND( $iSelected, $TVIS_SELECTED ) Then Return $CDRF_NOTIFYPOSTPAINT ;If Not BitAnd( $iItemState, $CDIS_FOCUS ) Then DllStructSetData( $tNMTVCUSTOMDRAW, "ClrText", $aTreeViewState[$iItemParam][1] ) ; Forecolor of item text ;DllStructSetData( $tNMTVCUSTOMDRAW, "clrTextBk",$aTreeViewState[$iItemParam][1] ) ; Backcolor of item text Local $tRECT = _GUICtrlTreeView_DisplayRectEx ( $hTreeView, $hItemSpec, True) DllStructSetData( $tRECT, "Left", DllStructGetData( $tRECT, "Right") + 7) DllStructSetData( $tRECT, "Right", DllStructGetData( $tRECT, "Right") + 188) _WinAPI_DrawText( $hDC, $aTreeViewState[$iItemParam][3], $tRECT, $DT_LEFT ) ; and background color of the device context. _GUICtrlTreeView_SetBold ($hTreeView, $hItemSpec, $aTreeViewState[$iItemParam][2]) ;Else ;_GUICtrlTreeView_SetBold ($TreeView, $hItemSpec, $aTreeViewState[$iItemParam][2]) ;EndIf Return $CDRF_NEWFONT ; $CDRF_NEWFONT must be returned after changing font or colors Case $CDDS_ITEMPOSTPAINT Local $hItemSpec = DllStructGetData($tNMTVCUSTOMDRAW, "ItemSpec") ; $hItemSpec = $hItem Local $iItemState = DllStructGetData($tNMTVCUSTOMDRAW, "ItemState") Local $iItemParam = DllStructGetData($tNMTVCUSTOMDRAW, "ItemParam") ; ItemParam = index in array Local $hDC = DllStructGetData($tNMTVCUSTOMDRAW, "HDC") ; Handle to the item's device context Local $tRECT = _GUICtrlTreeView_DisplayRectEx( $hTreeView, $hItemSpec, True) DllStructSetData( $tRECT, "Left", DllStructGetData( $tRECT, "Right") + 7) DllStructSetData( $tRECT, "Right", DllStructGetData( $tRECT, "Right") + 188) ;DllStructSetData( $tNMTVCUSTOMDRAW, "ClrText", $aTreeViewState[$iItemParam][1] ) ; Forecolor of item text DllCall( "gdi32.dll", "int", "SetTextColor", "handle", $hDC, "int", 0xFEB577 ) ; 0x77B5FE _WinAPI_SelectObject( $hDC, $aTreeViewState[$iItemParam][2] ? $TreeViewFontBold : $TreeViewFont ) ; Bold/normal font _WinAPI_DrawText( $hDC, $aTreeViewState[$iItemParam][3], $tRECT, $DT_LEFT ) ; and background color of the device context. _GUICtrlTreeView_SetBold ($hTreeView, $hItemSpec, $aTreeViewState[$iItemParam][2]) Return $CDRF_NEWFONT ; $CDRF_NEWFONT must be returned after changing font or colors EndSwitch Case $TVN_SELCHANGEDA, $TVN_SELCHANGEDW AdlibRegister("SubFunction_FillListView_Delayed",300) _WinAPI_RedrawWindow($hTreeView) Case $NM_RCLICK Local $tMPos = _WinAPI_GetMousePos(True, $hWndFrom) ; ?????????? ???????????? ???????? Local $hItem = _GUICtrlTreeView_HitTestItem($hWndFrom, DllStructGetData($tMPos, 1), DllStructGetData($tMPos, 2)) ; ???????? ?????????? ?????? If $hItem <> -1 And $hItem <> 0x0 Then DllCall("user32.dll", "int", "TrackPopupMenuEx", "hwnd", $hTVContextMenu, "int", 0, "int", MouseGetPos(0), "int", MouseGetPos(1), "hwnd", $Form1, "ptr", 0) EndIf EndSwitch Case $hListView Switch $iCode Case $NM_CUSTOMDRAW Local $tNMLVCUSTOMDRAW = DllStructCreate( $tagNMLVCUSTOMDRAW, $lParam ) Switch DllStructGetData( $tNMLVCUSTOMDRAW, "dwDrawStage" ) Case $CDDS_PREPAINT ; Before the paint cycle begins $hDC = DllStructGetData( $tNMLVCUSTOMDRAW, "hdc" ) ; Device context Return $CDRF_NOTIFYITEMDRAW ; Notify the parent window before an item is painted Case $CDDS_ITEMPREPAINT,BitOR($CDDS_ITEMPREPAINT, $CDDS_SUBITEM) ; Before an item is painted $iItem = DllStructGetData( $tNMLVCUSTOMDRAW, "dwItemSpec" ) ; Item index $iSubItem = DllStructGetData($tNMLVCUSTOMDRAW, "iSubItem") ; Subitem index ;ConsoleWrite("$CDDS_ITEMPREPAINT - > "& $iItem &"/"&$iSubItem & @CRLF) If $iSubItem = 1 Then ConsoleWrite("$CDDS_ITEMPREPAINT - > "& $iItem &"/"&$iSubItem & @CRLF) Return $CDRF_NOTIFYPOSTPAINT EndIf If GUICtrlSendMsg( $idListView, $LVM_GETITEMSTATE, $iItem, $LVIS_SELECTED ) Then; Selected item? ;ConsoleWrite("$CDDS_ITEMPREPAINT - > "& $iItem & @CRLF) ;ConsoleWrite("$CDDS_ITEMPREPAINT - > "& $iItem &"/"&$iSubItem & @CRLF) Return $CDRF_NOTIFYSUBITEMDRAW ; Custom drawing of selected items EndIf Return $CDRF_NEWFONT ; Default drawing of other items Case $CDDS_ITEMPOSTPAINT,BitOR($CDDS_ITEMPOSTPAINT, $CDDS_SUBITEM) ; After an item has been painted $iSubItem = DllStructGetData($tNMLVCUSTOMDRAW, "iSubItem") ; Subitem index ConsoleWrite("$CDDS_ITEMPOSTPAINT - > "& $iSubItem & @CRLF) If $iSubItem = 1 Then $iItem = DllStructGetData( $tNMLVCUSTOMDRAW, "dwItemSpec" ) ; Subitem rectangle DllStructSetData( $tRectLVI, "Top", $iSubItem ) DllStructSetData( $tRectLVI, "Left", $LVIR_ICON ) GUICtrlSendMsg( $idListView, $LVM_GETSUBITEMRECT, $iItem, $pRectLVI ) _GUIImageList_Draw( $hListView_ImageList, 0, $hDC, DllStructGetData( $tRectLVI, "Left" ), DllStructGetData( $tRectLVI, "Top" ) + 1 ) Return $CDRF_NEWFONT ; $CDRF_NEWFONT must be returned after changing font or colors EndIf EndSwitch EndSwitch EndSwitch Return $GUI_RUNDEFMSG EndFunc ;============================================================================================================================================================================================== Func SetIconListToListView() Local $hItemIcon_Item0 = _GDIPlus_BitmapCreateFromMemory(GetIcon_ListView_Item0(), True) Local $hItemIcon_Item1 = _GDIPlus_BitmapCreateFromMemory(GetIcon_ListView_Item1(), True) Local $hItemIcon_Item2 = _GDIPlus_BitmapCreateFromMemory(GetIcon_ListView_Item2(), True) $hListView_ImageList = _GUIImageList_Create(16, 16, 5, 3) _GUIImageList_Add($hListView_ImageList, $hItemIcon_Item0) _GUIImageList_Add($hListView_ImageList, $hItemIcon_Item1) _GUIImageList_Add($hListView_ImageList, $hItemIcon_Item2) _GUICtrlListView_SetImageList($idListView, $hListView_ImageList, 1) _WinAPI_DeleteObject($hItemIcon_Item0) _WinAPI_DeleteObject($hItemIcon_Item1) _WinAPI_DeleteObject($hItemIcon_Item2) EndFunc ;============================================================================================================================================================================================== Func GetIcon_ListView_Item0() Local $AleciveFlatwokenAppsFileNewsico $AleciveFlatwokenAppsFileNewsico &= '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' $AleciveFlatwokenAppsFileNewsico &= 'cCUzTXMicSZYoLS4sgAxaLWwLNoA5OT/6/Hw/+wE8fE9AP5laGibRaAHC/EHzOXk8gewRMrJcn2vycmyB6XjsD85fa/JyPIFMRIxAouxcXEAnvAGj6Ok8iMIrcbGchvT3Nz/EQ8A///+AAB3eHgwngEBAbIHAQDO5o/zB/EvsSdxF2h1efIGOHyMj3IGcVgxrIibip3yQa+wCnqKjbIZCIWXmnBwy/95icaM8o2xCOfr678HsweGnbkHAQDR5+atcQTR8QWWq61wBY5yV7ENOH+QkzIR8QUxAnaFIIj/kqaoMi19jgaRcm4xTZOoqf94jIeLsmoxe+rv778HGHh4nL0HAQDV6OcQccXi4PIHbXt/8P+QpaayMPUHMVCxaSK8MG57i45ymXaFGIn/pDA9MXt8jZC3ckqxD/EHm/wHtAebvwcBAwCerKsT0ujn4vBxJoKUlrKL8SexHviDlZeyrjEVcRdxEXFsf7Fc8R6xEbEAcQAxAvVt8hz4+L8HDwAGANjp6OBaz+fl/b+KPwA/AIc/APEHsQd4eHiasAcGCh8HDwDa6ula1/jr6fDwSD8FPwA/APsHHbEHmb8HDwAJAKm1tCAT3u7scjAArduI7eu+MwDsvtw/AIa/PwA3AIeMi4i/Bw8PAA8ADwALAF+zAgBKAPAAAAfgAIAAA8AAAAGAAB6rTAYBUwMAAwcAAw8AA6ofAGc/AG9/AHf/AQCqKAAnEAADIAADAQIFARoABBYZGU08RgBFjEBJSZE/SSBJkD9JSIUBjz8CSIIBjj5IR448qEVEjIAVYIAZFQUeAE1YWJC619X9gMLg3v/D4d+aAaGBEbrW1P2AGa0AHQAUHSEhLbfT0QD9ma6v/6G4uQGCEZyzs/+jursA/63Hxv+mvr4C/4ENt9PS/7DKAMn/ma+w/7jUANP/vdrY/RgbABtdZHNyXLzZGNf/mIARgQGvyckQ/5yys4IForm6C4Ifhw3Igg2mv7//AYEZQ05Ni3GCgQBfvNjX/5qwsQHCC7LNzP+Xra4jwhzBA6O7u8Ilo7tivMIjn7a2wgbAH/8ASFNSjHKDgl+Au9fW/4+jpcItgLjU0v+VqqvGDwHBC5Ooqf+hubkBwC/K/6W9vf+oAMHB/8De3P9JgFNTi3SFhF/JLwCuyMj/qMi//wimxrzGALHTyf8Irs/FwgaasbH/AKnCwv/B393/gElUU4p2hoXCLwiXrK3CD6zGxf8AnMit/5fDp/8AptK2/5/Lr/8AlsOm/5TBpP8GrsA/xRm72Nb/RkBQT4l3h4bCL5QBwCybsbL/sczLAP+xyrv/t8y9AP+9yMD/scm6AP+u2b3/rtK7EP+rxcTGGaW/vkD/P0dHiHjAD7kM1tTCZcFKudXU/wDa2NH/6uTZ/wDp49r/6OPb/wDb2tD/xsXC/wauwE/BCYmdnv+hALq4/z9IR4d4HojAD8AMwWTBALbR0ED/2OLa/9rAANsPwA7BAcUCwQaYr6//gIyhof+iu7rBDxCFeYiHwj+dtLRHwljBXMEBpLy9wAC8EcJbnbS1wHC4/9hA4+P/9fj4wgDTANbW5hkaGix7wIiIW77c2sJ84TaAjaCi/7POzeIAAIyfof+yzMz/AI2ho/+qw8P/CPP29mJr3d3d5hAeHh4tYV9gaGcAIcDb2fuQpaYc/6RgDeFA4TOVqqwj4iThHZ+3t2JW9vkK+WUHLIlvtcXEbBDJ5OL7fWfW2tkK5WAHKxF4Z25uIQCJk5JaiZSTXxVhAIpmAJRkAJNfJ8goKCTtBoABY4ofABMEAOAFAANgBgcAAADADwAA' $AleciveFlatwokenAppsFileNewsico = _WinAPI_Base64Decode($AleciveFlatwokenAppsFileNewsico) Local $tSource = DllStructCreate('byte[' & BinaryLen($AleciveFlatwokenAppsFileNewsico) & ']') DllStructSetData($tSource, 1, $AleciveFlatwokenAppsFileNewsico) Local $tDecompress _WinAPI_LZNTDecompress($tSource, $tDecompress, 5430) $tSource = 0 Return Binary(DllStructGetData($tDecompress, 1)) EndFunc ;============================================================================================================================================================================================== Func GetIcon_ListView_Item1() Local $AleciveFlatwokenAppsUnlockico ;$AleciveFlatwokenAppsUnlockico &= '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' ;$AleciveFlatwokenAppsUnlockico &= 'PwA/AD8ABz4AsQQxBYfK6vU7aFBagKAGDO/fAwB7AKe8E6Xd93KjANz3rZ7b976euNv4vz8APwAxAJ89AALccQD3vpXH37IAY4STfxYeIiZ4AQICNhcPAA8ADwDQsgIASgDwAAAH4ACAAAPAAAABgAAer10GAWcBbwF3/wAAKAATahAAAyAAAwECBRoABAAEEBlMDS1GixANMEuRgQEMKUEQkQokOY8BIjaOUAMME1+AGRQFHhMAPFuQLJPj/S4Am/D/Lpvx/ysAkOD/I3e5/yMEdriQAbf/InCtIP0PLkatgSEIFwAiLTGZ6P0xngTx/4EBLZPg/yVAern/JXm4mwF1ALH9BQ8WXB5SQHpcNKHx/4EBN8Ci8v/3+/4BfxIAAPf6/P8rfbr/CCh7uIIBDytAiwAkYItfN6Py/4GBATql8v/8/ccPONLq+8IABQDBBi5/ILr/Kn25wgARLwBEjCZjjV86pgPADsAAPqjy//7+cccPh8n2wgAFAMEGMUCCuv8sf7nCABIAMEWLKmaPXz1IqfL/wQBAqssfbwy/9cIAyR8xg7r/CC6BucIAFDJGisAuaZBfQKzADsAA6EWu8so7/cAbwQAJAAg2hrrAELn/NIwAxf8bQFeJM2xAkF9CrvP/wQBEAK/y/6na+f+vAN35/6vT6/+oRMvhwgC51efCDqUQyuD/NMAPNo7GAP9BrO//HkNbAIg4b5FfRbHzAv/JAECj4P81iCC7/zWHusIAXJ4Cx8IPPoy8/zmQCsbAGe/CCSFFW4cAPXKRX0i08/8BxQBKtfL/0eTwAP9gocj/N4m6EcIAaKbLwj4/lccQ/0ex78YKI0ZbAIVBdZFfS7fzAv/JAMTn+v/W52Dw/2amycIAwQLCQOP0/0q078oJJQBIW4RId5BbTgi58//JAFi98//gu+T6//VgSWEAYQEDYQLtBChHWH1BXgBsIV7B9PtRvAz0/38AZwBcvvH8EBMcIT/hZ3uzzwBsZ8b1+1S/9AL/fwD0/2bD8fxQO1tqhUAHAmVwTABmcyFkiJlbZAiJm195AF1+jlyQHykuKeUGgAHjhwcfAAsAYo4DAAA=' $AleciveFlatwokenAppsUnlockico &= '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' $AleciveFlatwokenAppsUnlockico &= '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' $AleciveFlatwokenAppsUnlockico &= 'sOIdIkpCfTtfQFghSsqy++YP0wK6YhZJ28T/S90ix2AAxv9J4AlG1oC+/0PSuf9B4A8B4iTGrvwSHRs/AeFnbrapbFTPuIr7YRND4B9F1LxiCFhI2MFiAGEHROASQgTPt2IkUsu1/DQoXFWFQAcCZXBFaABiIVyMg1tdjgCFX16Phl9ekOCHX1+QiGIAYQFhAgFhA1aBeVwcKifyKeUGgAHjhx8ACwBijgADAAA=' $AleciveFlatwokenAppsUnlockico = _WinAPI_Base64Decode($AleciveFlatwokenAppsUnlockico) Local $tSource = DllStructCreate('byte[' & BinaryLen($AleciveFlatwokenAppsUnlockico) & ']') DllStructSetData($tSource, 1, $AleciveFlatwokenAppsUnlockico) Local $tDecompress _WinAPI_LZNTDecompress($tSource, $tDecompress, 5430) $tSource = 0 Return Binary(DllStructGetData($tDecompress, 1)) EndFunc ;============================================================================================================================================================================================== Func GetIcon_ListView_Item2() Local $AleciveFlatwokenAppsMahjonggico $AleciveFlatwokenAppsMahjonggico &= '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' $AleciveFlatwokenAppsMahjonggico &= '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' $AleciveFlatwokenAppsMahjonggico &= 'BXEAfWQAc4WIXCbIKywp5QaAAeOHHwADCwBijgMAAA==' $AleciveFlatwokenAppsMahjonggico = _WinAPI_Base64Decode($AleciveFlatwokenAppsMahjonggico) Local $tSource = DllStructCreate('byte[' & BinaryLen($AleciveFlatwokenAppsMahjonggico) & ']') DllStructSetData($tSource, 1, $AleciveFlatwokenAppsMahjonggico) Local $tDecompress _WinAPI_LZNTDecompress($tSource, $tDecompress, 5430) $tSource = 0 Return Binary(DllStructGetData($tDecompress, 1)) EndFunc ;============================================================================================================================================================================================== Func _WinAPI_Base64Decode($sB64String) Local $aCrypt = DllCall($hDLL_Crypt32, "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "ptr", 0, "dword*", 0, "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(1, 0, "") Local $bBuffer = DllStructCreate("byte[" & $aCrypt[5] & "]") $aCrypt = DllCall($hDLL_Crypt32, "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "struct*", $bBuffer, "dword*", $aCrypt[5], "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(2, 0, "") Return DllStructGetData($bBuffer, 1) EndFunc ;==>_WinAPI_Base64Decode ;============================================================================================================================================================================================== Func _WinAPI_LZNTDecompress(ByRef $tInput, ByRef $tOutput, $iBufferSize) $tOutput = DllStructCreate("byte[" & $iBufferSize & "]") If @error Then Return SetError(1, 0, 0) Local $aRet = DllCall($hDLL_ntdll, "uint", "RtlDecompressBuffer", "ushort", 0x0002, "struct*", $tOutput, "ulong", $iBufferSize, "struct*", $tInput, "ulong", DllStructGetSize($tInput), "ulong*", 0) If @error Then Return SetError(2, 0, 0) If $aRet[0] Then Return SetError(3, $aRet[0], 0) Return $aRet[6] EndFunc ;==>_WinAPI_LZNTDecompress ;============================================================================================================================================================================================== hope it would be useful to someone
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