首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

关于取得别的进程中,ListView控件中的文本内容的有关问题

2012-02-08 
关于取得别的进程中,ListView控件中的文本内容的问题!目标进程中ListView控件中的每一行文本内容分为2子行

关于取得别的进程中,ListView控件中的文本内容的问题!
目标进程中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);
          }
  }
-------------------------------

[解决办法]
帮顶

热点排行