LVITEM lParam abrufen



  • Hallo!

    Ich habe ein ListView Item, dessen lParam Wert ein Pointer auf einen LPSTR zugeordnet ist. Folgender Code sollte mir eigentlich den Wert des lParams ausgeben:

    LVITEM lvi2;
    ZeroMemory(&lvi2, sizeof(lvi2));
    lvi2.iItem	= 0; // Item mit diesem Index prüfen
    lvi2.mask		= LVFI_PARAM; // Rufe lParam ab
    
    ListView_GetItem(hList, &lvi2); // hList ist auf jeden Fall valid, denn er findet das Item.
    
    MessageBox(0,(LPSTR)lvi2.lParam,"",0); // MessageBox ist leer
    

    Er füllt die lParam Variable beim erstellen des LVITEMs auf jeden fall korrekt, das weiß ich. Nur ich frage mich, wieso ListView_GetItem() den lParam bei der Abfrage dieser Variable nicht füllt! Kann mir da jemand weiterhelfen?

    Gruß veryxRV



  • Ist der Speicherbereich, auf den dein lParam zeigt, zu dem Zeitpunkt auch noch gültig?



  • Jep, befindet sich beides auf einer Gültigkeitsebene.


  • Mod

    veryxRV schrieb:

    Jep, befindet sich beides auf einer Gültigkeitsebene.

    Was meinst Du damit?
    Zeig mal wie Du den Zeiger zuordnest.



  • Hat sich erledigt!

    Es war die Nadel im Heuhaufen:

    LVFI_PARAM ist noch lange nicht gleich LVIF_PARAM, welches der Richtige Flag ist 😉


Anmelden zum Antworten