In NM_CLICK use
SubItemHitTest(LPLVHITTESTINFO HitInfo)

This will return the iItem and iSubItem (in HitInfo structure). You also get the info whether the click was made on the item icon or item label or above or below or to the left or to the right of the client area of the list control.

If click is made on the item,
iItem = Item index and
iSubItem = 0

If the click is made on the subitem
iItem = SubItem's parent item
iSubItem = SubItem index