#include <GUIConstantsEx.au3>
#include <GuiListView.au3>

$Debug_LV = False ; Проверяет ClassName передаваемый в ListView функции. Установите True и используйте дескриптор от другого элемента, чтобы увидеть как это работает

_Main()

Func _Main()
	Local $tText, $tItem, $hListView

	GUICreate("Устанавливает атрибуты пункта (Ex)", 400, 300)
	$hListView = GUICtrlCreateListView("", 2, 2, 394, 268)
	GUISetState()

	; Добавляет колонки
	_GUICtrlListView_AddColumn($hListView, "Пункты", 140)

	; Добавляет пункты
	GUICtrlCreateListViewItem("Пункт 1", $hListView)
	GUICtrlCreateListViewItem("Пункт 2", $hListView)
	GUICtrlCreateListViewItem("Пункт 3", $hListView)

	; Изменяет 2-ой пункт
	MsgBox(4160, "Информация", "Изменяет 2-ой пункт")
	$tText = DllStructCreate("wchar Text[14]") ; на 1 больше чем кол. символов
	$tItem = DllStructCreate($tagLVITEM)
	DllStructSetData($tText, "Text", "Новый пункт 2")
	DllStructSetData($tItem, "Mask", $LVIF_TEXT)
	DllStructSetData($tItem, "Item", 1)
	DllStructSetData($tItem, "Text", DllStructGetPtr($tText))
	_GUICtrlListView_SetItemEx($hListView, $tItem)

	; Цикл выполняется, пока окно не будет закрыто
	Do
	Until GUIGetMsg() = $GUI_EVENT_CLOSE
	GUIDelete()
EndFunc   ;==>_Main