目标进程中ListView控件中的每一行文本内容分为2子行显示(有个图表将行顶高了),这样一来我只能得到上一子行的内容(并却内容并不完整,我想是由于这一子行的文字中有\0符,才使的只能取\0符前的文本内容,如何何取得这一行的所有文本内容呢?(不管分了多少子行,其中有多少\0符)!希望知道的达人指教.....以下是我的代码:
-------------------------------------------------------------------
TCHAR szTMnetState[256];
memset(szTMnetState,0x00,sizeof(szTMnetState));LVITEM lvitem, *plvitem;
int nItem =0;
DWORD PID =0;
HANDLE hProcess;

TCHAR *pItem;//int iLen = ListView_GetItemCount(m_hTMnetLsitViewWnd);memset(m_tszTMnetState,0x00,sizeof(m_tszTMnetState));
SendMessage(m_hTMnetLsitViewWnd,LVM_SETSELECTIONMARK,0,0);
nItem=SendMessage(m_hTMnetLsitViewWnd,LVM_GETNEXTITEM,-1,0);
if ( nItem == -1)
{
  return;
}
else
{
    GetWindowThreadProcessId(m_hTMnetLsitViewWnd, &PID);
    hProcess=OpenProcess(PROCESS_ALL_ACCESS,false,PID);
    if (!hProcess)
    {
       return;
    }
    else
    {
      plvitem=(LVITEM*)VirtualAllocEx(hProcess, NULL, sizeof (LVITEM),  MEM_COMMIT, PAGE_READWRITE);
      pItem=(TCHAR*)VirtualAllocEx(hProcess, NULL, 256, MEM_COMMIT, PAGE_READWRITE);
       if (!plvitem)
       {
 return ;
       }
       else
       {
nItem=0;  lvitem.state=LVIS_STATEIMAGEMASK; lvitem.stateMask=LVIS_SELECTED;
lvitem.pszText = pItem;
lvitem.mask = LVIF_TEXT;
lvitem.cchTextMax = 256;
lvitem.iSubItem =0;
WriteProcessMemory(hProcess, plvitem, &lvitem, sizeof(LVITEM), NULL);
SendMessage(m_hTMnetLsitViewWnd, LVM_GETITEMTEXT, (WPARAM)nItem, (LPARAM)plvitem);
ReadProcessMemory(hProcess, pItem, szTMnetState, 256, NULL);
       }
       CloseHandle(hProcess);
       VirtualFreeEx(hProcess, plvitem, 0, MEM_RELEASE);
       VirtualFreeEx(hProcess, pItem, 0, MEM_RELEASE);
     }
 }
-------------------------------------------------------------------