Iczer Posted March 3, 2018 Share 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 &= 'NbYAAAABAAIAICABAXAgAKgQAAAmMAAAABAAOAF4aARoAADOACwoAEwAiACuQAAMAVwoAAMABhYABqowAAY7AAY8QAY6AAM6KwADFAADAKEWABACAAkPYRA3VrcYAFWF3BtfluUbKGCX5gMDlgIDGlsAj+YVSnTmFUkCc6QBcuUTQWbdAAwqQr4CBwx+FYAxP4ABD5A9Eg4uAEefJ4DG+SyToOX/LZrwgAHxigEALJXo/yR6vv8IIna4rAG3/yFxAK//HmKX+QskFDe0gDVQjEECEDAASZEukd7+L5wg8P8vnPGOAS2WAOj/JXu+/yR3Arj4ALf/I2+q/lANJTmzwBw9xWIFAA4VLy6L0vgwCJ3x/9EAL5jo/4AmfL7/JXi4/wABwAAka6H5AwgNCnuAHhPBHxxOdISAMp3u/zKe8c4AADCZ6P8nfb7/GCZ5uP8AxgC2/xMYM0u7gB6ByQAwhkDGszOg8f/NADeAofH/4vH7/zUAAOHs9f8rfLr/CCd6uM4AHlJ52gWAHjbBHzid5741iKHy/80AP6by9h4BBQA0grz/KHu5YW4AIVyH40EP4Q87gKHrvzaj8v9tAMRBp/sP7vf9YgD6D0CDvP8pfLluACIUXYjhDzfhDz2j7CC/N6Ty/20APKYQ8f/0+fcLXLTzA2IAFQDz9/v/L4Aguv8qfbluACNeBIni5S8/pe6/OQil8v9tAEGp8v8o/v7+cgv94AJNrh7yYgBhAREAYQc0hLsQ/yx+uW4AJGCKweYPQKjvvzpgLW0AxEWr9y+Z0ffmBGEBgRUAOIa8/yyAYA6hbAAmYovhQA814Q/ARKvwvzyo4C1sAMRFrPcPcb/15gRhAY35Dy7gDW0AKGOM4Q8CNOEPR63xvz2qJPL/bQBAqvc/yOZ4+v9HYC9hAGEB8j/4APv/MYO5/y+CKW8AKmXiDzPhD0uwmPK/P2AtbQBJr/tfGPr8/mIAGQA7ibwM/zBgEGkAMYW7/1AzeqjgQA8y4Q9PMLLyv0BgLW0ASrAH/38PAAsAPIq8/zEWhDAHNAAy8Bg9o+UQ/zmFtvYHUrXzoL9CrvP/PQBG8A889Pr/Fw8ADwD1FzeIILv/MoW6MgAzhyC8/z6k5bIFPIcUtt+gBzHxB1a39CC/Q6/z/z8A8/9AUbXz/2C7NwBdALTq/1Oaxv9SRJjEPgCUwNu2B2EAocn/Qo+//zNGhnAHMAA0iLzwVOUZdgU+iPIHMY4AWrnA9L9FsPP/PwA7AABCqej/Noq+/xg1h7o/ADAAgrXUMfYHRpG/twEwIEGnUuW6BECK8gcv8Qde4Lv0v0ay8BY/ADYAAEOq5/83i77/mDaIuj8ANACDtvgHjJK/cwHwH0Ko5f8ECIu33vUHYb30vzBIs/P/PwAzAE62APP/qM3k/6fLAOD/ZKTJ/zeJRro/ADAAhrjV+gc3wIu8/0Sp5T8FMAAURY3yBy7xB2XA9By/SXAePwAzAEu18gj/9ftzKK3P4v94OIq6PwAwALEBAQD1QPn7/zuNvfBT5UP/BDQASI633aAHLcHxB2jC9L9KMA4/ABE3AL3k+bIF+fv8AP9mpcn/OYu6DzoAMQGxAQEAt9fo/1hGrOV/BDkAkPIHLAHxB2zE9b9Mt/MG/z8ANwBiwPT/8420OPmwELEOe7LQMgCPsQAxATI38FJgvO4/BBE9AJG33DS5AHHGwPS+Tbnz/z8AOwDAdMj1/+34/0AFAA+xATECvwM/AFCTt9sFoAcq8Qd+y/StTxi68/8/AD8AWr70AP+m3Pj/3vL8/P/5sFcxALEAMQGxAT8DQz8AMQBSi6nPoAchQfEHj9HzcVawA1B+uz8APwA/AD8APwA5AFchsAZCYHCjNcBtmwCyE3/O9vBSvfz0/z8APwA/AD8APwA3AAB3w+n2DBEUSQOi4QQAmtXzWnjM+Pb+U7AJPwA/AD8APwABPwD0/3jM9f46KE9aiiAHCg3Yn9gA9FqO1ffwacfo9f9W8C5V' ;$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 ;============================================================================================================================================================================================== Â Link to comment Share on other sites More sharing options...
Iczer Posted March 24, 2018 Author Share Posted March 24, 2018 Link to comment Share on other sites More sharing options...
LarsJ Posted March 30, 2018 Share 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 &= 'gsDSsgOxch+xBHEdsU3xXbFOfKSq4t71B6nd5P9PMRg2QFEzEG+lzjIGPLAHJQQvqrIAOlK0/z5AV7b/ISio8gBPwHOx/4HA0TID8RNPthe1HzAGcW59pfIHLu3xB6vwB/VnmLhvMhA4WAB9udT/W4PE/4BQcr7/JCyp8gYAKDOm/yk1p/+AJzGm/zpPrDACvtAySzEDMSQxBLMX3rYXobEGfqWq3aAHLfEH+Kze5fQHOxB1UHEY8QRHcQWxGLEQMECv8gdZ/IKxsibxHjEXcQ+xAnIXH3AfuQ+xBTEGsQZ/pav18Qcs8Qet9Ac2EHFgPHgjNQgzgNn/K/QeV33ysXIug8HzHrUHMSexB491H7EltQ/yB6ar3DS58ACv3+XyhzUQOYg1CEexDPEUdQgeI6byBzHwQar/hTA2cSKxATUXP7UHcQwxHXIftA8xAIGmFKvboAcq8Qe14OZerb6nPAjxBHWYi3AOIEAlp/8+U7VwVdL/MgexKjEPMQLxO7UHNie4B6ExAHuans+gByHxB4C94udxn9nh+gH/Ogi0tzK3cQi0CHWwsQAxAX91B7ECMhe2B3cXMQCxBlcIaGqjNcCMp6oT8LXi6PA5ArvHcwx1CP8xBnnA9QDyyDQP8R5/DzMAAKvV2/YQExNJA6LhBADC5OhaseD85v4/CLcQdQixDXbQtAAfMQBzB3UuvwcxALHf5qD+SFRWiiAHCg3YAMXm6lq95erw//BYfgN1CDEN8QVxTDEOcQBPMgAwAbUWfwfg/zBW/wCz2d71SVVXgA2gBgzv3wMAmLG0EwDJ6e1yyOjsrQDG6Oy+xujtvw8/AD8APwA1AOy+ttIA1rJ5i41/GyDgICYBAgI2Fw8ADwABDwBlswIASgDwAAAH4ACAAAPAAAABgAAer10GAWcBbwF3/wAAKAATahAAAyAAAwECBRoABAAQFhdMLT9BiwAwQ0aRMENFkQQvQocBLkFEkSkAODuRKTk7kSaANTeODhMUX4AZAhQFHjxSVZCTzADT/ZvX3/+Z1gDf/5bT3v+U0gDd/5PR3f+S0ADb/4O5w/9/sgC7/4K0vP+DtQC8/3yrsv0zRQRIrYEhFh8gLZck0NiDHdXfghuRzwDc/47N3P+MywDa/3y0wf94rQC5/3qvuf99sQi6/4GEIYCwtv0AEBUWXFBtcVyYm9jggjuBHZDOgRsA2/+Jydr/bJ0Ayf9yqLf/c6kAuP92q7j/ea6DgyGBQ4S2vf8ugHcQW32BX4E9ltTeBcIdi8AOh8fZ/4MAxNj/XIbD/23ApLX/b6a2whHBEBHBIX+zu8IgMUNGQIxdf4NfmsQejkDN2/+IyNrCDn4AwNf/TXG9/2gAoLT/aqK1/24cpbbCIcEywSCDtb0A/zVIS4tfgIUiX8E9ktDdwi2GxgDZ/3/B1/96vQDV/0Bet/9jnQCz/2eftP9soxC1/3GnwCCsuP8AfLC6/5HK0/8AO1FUimGBhl9GmMQPwS6ExdnCHncAutP/M0mv/15Al7H/ZZ6zwiBwgcEPq7n/isXQwlqAPFFUiWKChsYfBcEPhcQfR2i4/yMALab/PVqu/1Awea//a8EfwECEwAbPwgrBDD1SVIhkTIOHwj/Beo3Mw06BAMLX/0JeuP8qADes/3Gv0f8jACun/2mdtf+ANL3OwgiUwArBDD5S4FWHZoOIw1/AjMFuAIrK2v9+u9X/AD9Ytv8eIqb/ADJErv8mMKf/6HWty8IGkMBowQrBDJHAD4VohMEP4P/BQA/BIMFgwQnBISIpqP/oZJS0wB3NwgTBlMEIA8EuwQw/U1WEaoTYiFucwI/BE5dgQOEDAo9kSCUsqf9woH7LYhZhAmEDYQRhBWEGPwBQUn1VZWchowja4vtlCJjV3v/+lWBBYSThSWEAYQFhAmEDAWUHoNff/BoeHwI/4WehwMVsp9z+42YIYSNhBWENYQBhAWECAWUHpNng/FBiZAqFQAcCZXBdbG4hAHyQk1t8kZRf' $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 Link to comment Share on other sites More sharing options...
Iczer Posted April 2, 2018 Author Share Posted April 2, 2018 Thanks! Link to comment Share on other sites More sharing options...
Iczer Posted April 10, 2018 Author Share 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 &= 'lYPxBy7h8QdXyrS/dRdxAvECgD/Lsv9BzbRyFYBF0bn/9fz7cgUAs+3k/0fXwP9USNgxAMEyAEewAEdA17//su3jMgL0ATBjNaOQ/z7DrD8yDLEMsRyxDTEOMRA9lhSE3aAHLfEHWsy2EL86xKm/D862/0hD0biyFrvvM0b5AfA+cuHP/0naw8D/StvE/0kxALAARzEBsQEBALbf2LAzr3FyIUHNtbIMOxAwEZcKhfEHLPEHXc23vzeyF3UfuA9DsA+xFV3aEMb/8/yzOPr9/QD/tPDm/4bo2HD/hufYsgAxAQEA8vHwOlvVwDILsSnxG7EMLD7K8AewDTw0GECYBIbcNLkAYc+5vvw7xfUHtBdwA/ELsSXxBwBH1r//cODO/wbt/1j3gPv4/2/fjs0yIXEpsQtCz7Y4GAPwB3Ioqf9DmYjbhaAHKvEHbtK+rXcvB/8H8gfwHUjZwv9WAN3I/6Tt4v/eHPj08hYxALEAo+3hsP9V3MZyIXEpRfkHQ7AU/QdHj4HPoAchwfEHgtXFcUKwB/sXXfsHRvAPsSaxHktwBkxA3sj/TN/JMADIAP9L3cf/StzFfbABwrIp8TDzD/AX/w//QkEwADxiW6M1wGOAnZITbtPA8LEB//MH8CfyH/En8B+wBDEFci/HMBAxJ/EGS93GsghyKD9wCbIwcArxCnEL/h/HrgHyJ2fHtfYLEhAGSaLhBACM2cpaZqjSvv4xCj64P0IwBP03EL40CHEQcAgwB3IHMAm/sgcwGrcPsxdxLPMvr/IvAGbRvf41UEuKBSAHCg3YkdvOWn4A2snwVc+5/0D/MAM3EDgIdEexBrEIMwBwB10xH9S4B7E3tA9A8AxVATBcd8699TZRTBqAoAYM798DAHGqnwATmODTcpfh0wCtkuHTvpLi1AC/k+PVv5Pk1gC/lOXXv5Tm2KS/lTEA59k3AOYxAHkwAeXYMwKwAjIDsAOSAOHSvonLv7JcAIZ+fxUfHSYBPAICNhcPAA8ADwCQswIASgDwAAAH4ACAAAPAAAABgAAer10GAWcBbwF3/wAAKAATahAAAyAAAwECBRoABAADEQ1MCi8miwALMiiRCzIpkYAKLCORCCcfhwECJoQBJB2OAg0KCl+AGRQFHg8+MpAAI5l8/SWjhf8AJqWG/ySafv+AHoBp/x5/aIcBAH5n/x1+Zv8cAH1l/xt1X/0MCC8nrYEhBhgULQAmoIP9KKeJ/wApqYv/J56C/8AhhG3/IYOAAYEDEYIFbP8ggAEfgmsQ/x+BaoInHXpkAP0EDw1cGFZIAFwpqoz/K6yOAP8wr5L/9/v7AwF/EgD3+vr/JYcGcIMlgCMMLSWLHQBlVF8srpH/LgCxlP8ztJj//MT9/cYL0e7owgAFAEHBBiiKdf8jwBAhAIVu/w4xKYwfAGlYXy+zlv8xALWZ/ze5nv/+xP7+xguF1sbCAAUAAcEGK456/yWKdAD/JIhy/w8zKwCLI21dXzK3mwD/NLqe/zi9ooj//P7HH2zRvcIAAckfLJF8/yeNeAD/Jot2/xE1LQCKJ3BhXzS7nwD/Nr6j/z3CqB3KO/3AG8EACQAwloEE/ynAECqYgf8WAEQ6iSxzZV83AcAOOcKn/zzFqxD/qubbwgm97eVw/67p38IAwQIBAKMA0sn/LpaD/y4AnYf/Nbug/xkASD6IMXZoXzkQwaf/O8AOPsmvEP9IzbXCCmfZxXD/Q9G5wgDBAgEAOQCfjf8yo47/OgDBqP84wKb/GwBJQIc1eGtfOgDEqf89yK7/QEDMsv9G0LjAQP4A/3Pfzf9H178HwgDBAsE+OaqX/z4AyK//PMet/zoAw6j/HkpChTkIem1fwh7KsP9BAM61/0TSuv/CAPHp/9n38v9zBOPRwgDZ9vL/wADr5P9Czrb/QATNtMAar/87xKoA/x9LQ4Q/e28AWzzGrP8/yrEA/0LPtv9F07sA/1Haw/+58egQ//X9+2IAufDoMP9R2cJiC2EMPskC' $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 &= 'gsDSsgOxch+xBHEdsU3xXbFOfKSq4t71B6nd5P9PMRg2QFEzEG+lzjIGPLAHJQQvqrIAOlK0/z5AV7b/ISio8gBPwHOx/4HA0TID8RNPthe1HzAGcW59pfIHLu3xB6vwB/VnmLhvMhA4WAB9udT/W4PE/4BQcr7/JCyp8gYAKDOm/yk1p/+AJzGm/zpPrDACvtAySzEDMSQxBLMX3rYXobEGfqWq3aAHLfEH+Kze5fQHOxB1UHEY8QRHcQWxGLEQMECv8gdZ/IKxsibxHjEXcQ+xAnIXH3AfuQ+xBTEGsQZ/pav18Qcs8Qet9Ac2EHFgPHgjNQgzgNn/K/QeV33ysXIug8HzHrUHMSexB491H7EltQ/yB6ar3DS58ACv3+XyhzUQOYg1CEexDPEUdQgeI6byBzHwQar/hTA2cSKxATUXP7UHcQwxHXIftA8xAIGmFKvboAcq8Qe14OZerb6nPAjxBHWYi3AOIEAlp/8+U7VwVdL/MgexKjEPMQLxO7UHNie4B6ExAHuans+gByHxB4C94udxn9nh+gH/Ogi0tzK3cQi0CHWwsQAxAX91B7ECMhe2B3cXMQCxBlcIaGqjNcCMp6oT8LXi6PA5ArvHcwx1CP8xBnnA9QDyyDQP8R5/DzMAAKvV2/YQExNJA6LhBADC5OhaseD85v4/CLcQdQixDXbQtAAfMQBzB3UuvwcxALHf5qD+SFRWiiAHCg3YAMXm6lq95erw//BYfgN1CDEN8QVxTDEOcQBPMgAwAbUWfwfg/zBW/wCz2d71SVVXgA2gBgzv3wMAmLG0EwDJ6e1yyOjsrQDG6Oy+xujtvw8/AD8APwA1AOy+ttIA1rJ5i41/GyDgICYBAgI2Fw8ADwABDwBlswIASgDwAAAH4ACAAAPAAAABgAAer10GAWcBbwF3/wAAKAATahAAAyAAAwECBRoABAAQFhdMLT9BiwAwQ0aRMENFkQQvQocBLkFEkSkAODuRKTk7kSaANTeODhMUX4AZAhQFHjxSVZCTzADT/ZvX3/+Z1gDf/5bT3v+U0gDd/5PR3f+S0ADb/4O5w/9/sgC7/4K0vP+DtQC8/3yrsv0zRQRIrYEhFh8gLZck0NiDHdXfghuRzwDc/47N3P+MywDa/3y0wf94rQC5/3qvuf99sQi6/4GEIYCwtv0AEBUWXFBtcVyYm9jggjuBHZDOgRsA2/+Jydr/bJ0Ayf9yqLf/c6kAuP92q7j/ea6DgyGBQ4S2vf8ugHcQW32BX4E9ltTeBcIdi8AOh8fZ/4MAxNj/XIbD/23ApLX/b6a2whHBEBHBIX+zu8IgMUNGQIxdf4NfmsQejkDN2/+IyNrCDn4AwNf/TXG9/2gAoLT/aqK1/24cpbbCIcEywSCDtb0A/zVIS4tfgIUiX8E9ktDdwi2GxgDZ/3/B1/96vQDV/0Bet/9jnQCz/2eftP9soxC1/3GnwCCsuP8AfLC6/5HK0/8AO1FUimGBhl9GmMQPwS6ExdnCHncAutP/M0mv/15Al7H/ZZ6zwiBwgcEPq7n/isXQwlqAPFFUiWKChsYfBcEPhcQfR2i4/yMALab/PVqu/1Awea//a8EfwECEwAbPwgrBDD1SVIhkTIOHwj/Beo3Mw06BAMLX/0JeuP8qADes/3Gv0f8jACun/2mdtf+ANL3OwgiUwArBDD5S4FWHZoOIw1/AjMFuAIrK2v9+u9X/AD9Ytv8eIqb/ADJErv8mMKf/6HWty8IGkMBowQrBDJHAD4VohMEP4P/BQA/BIMFgwQnBISIpqP/oZJS0wB3NwgTBlMEIA8EuwQw/U1WEaoTYiFucwI/BE5dgQOEDAo9kSCUsqf9woH7LYhZhAmEDYQRhBWEGPwBQUn1VZWchowja4vtlCJjV3v/+lWBBYSThSWEAYQFhAmEDAWUHoNff/BoeHwI/4WehwMVsp9z+42YIYSNhBWENYQBhAWECAWUHpNng/FBiZAqFQAcCZXBdbG4hAHyQk1t8kZRf' $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 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