Const LVM_FIRST = &H1000
Const LVM_SETTEXTCOLOR = (LVM_FIRST + 36)
В успешном случае возвращается цвет текста
' Изменим цвет текста под значками на Рабочем столе Dim lProgman As Long Dim lSHELLDLLDefView As Long Dim lSysListView32 As Long ' Получим дескриптор Рабочего стола lProgman = FindWindow("Progman", "Program Manager") If lProgman = 0 Then Exit Sub ' Сначала получим дочернее окно с именем класса "SHELLDLL_DefView" lSHELLDLLDefView = FindWindowEx(lProgman, 0&, "SHELLDLL_DefView", vbNullString) If lSHELLDLLDefView = 0 Then Exit Sub ' Теперь получим его дочернее окно (т.е. окно Рабочего стола) lSysListView32 = FindWindowEx(lSHELLDLLDefView, 0&, "SysListView32", vbNullString) If lSysListView32 = 0 Then Exit Sub ' Меняем цвет текста под значками на красный SendMessage lSysListView32, LVM_SETTEXTCOLOR, 0&, vbRed ' Теперь надо обновить область окна Рабочего стола Call InvalidateRect(lSysListView32, ByVal 0&, True) Call UpdateWindow(lSysListView32)