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

zxw2844 2007-02-09 04:51:05
目标进程中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);
}
}
-------------------------------------------------------------------
...全文
250 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
zxw2844 2007-03-03
  • 打赏
  • 举报
回复
up
super2006 2007-03-01
  • 打赏
  • 举报
回复
帮顶
zxw2844 2007-02-10
  • 打赏
  • 举报
回复
up

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧