SubItems von ListView werden nur Teilweise erstellt
-
Hi Leute,
ich habe ein Problem mit den SubItems meiner ListView.
Hier mal mein Code:
for(int item_count = 0; retval;item_count++) { LVITEM lvI[3]; char TempChar[64]; memset(&lvI,0,sizeof(lvI)); retval = Process32Next(thSnapShot, &pe); lvI[0].mask = LVIF_TEXT; lvI[0].pszText = pe.szExeFile; lvI[0].iItem = item_count; SendMessage(hProcessList,LVM_INSERTITEM,0,(LPARAM)&lvI[0]); sprintf_s(TempChar, "%d",pe.cntThreads); lvI[1].mask = LVIF_TEXT; lvI[1].iSubItem = 1; lvI[1].pszText = TempChar; SendMessage(hProcessList,LVM_SETITEM,0,(LPARAM)&lvI[1]); sprintf_s(TempChar, "%d",pe.th32ProcessID); lvI[2].mask = LVIF_TEXT; lvI[2].iSubItem = 2; lvI[2].pszText = "Test"; SendMessage(hProcessList,LVM_SETITEM,0,(LPARAM)&lvI[2]); }
Ich möchte damit alle laufenden Prozesse anzeigen und dazu ein paar Informationen ausgeben.
Doch leider werden nicht zu allen Prozessen SubItems angelegt.
Hier mal ein Screenshot meines Ergebnis:
http://oi43.tinypic.com/23mlz4w.jpgDie ListView erstelle ich so:
hProcessList =CreateWindow(WC_LISTVIEW,"", WS_CHILD | LVS_REPORT | WS_VISIBLE | LVS_SINGLESEL | LVS_EX_HEADERDRAGDROP, 0, 0, 300, 453, hWnd, (HMENU)ID_INJECTOR_PROCESSLIST, g_hInstance, NULL);
ich verstehe nicht ganz, wie das zustande kommt.
Ich hoffe, einer von euch kann mir weiterhelfen.Mit freundlichem Gruß
xXSlayerXx
-
1. Du solltest den Wert für das Item nehmen den LVM_INSERTTEM liefert!
2. Wenn Du .iItem für die Subitems nicht setzt wird das wohl nichts werden können.