2024年3月29日发(作者:)
计算机系列教学文档
------syslistview32的内容获取
文件状态:
[ ] 草稿
[√] 正式发布
当前版本: V1.0
作 者: 李星华
完成日期: 2014-05-07
个人博客:
系列文档-技术文档
作者:
lixh
syslistview32的内容获取
void ListGetText(HWND hWnd, int row, int col, char* pSave, intsz)
{
const intBUFSIZE = 1024;
DWORD dwProcess;
HANDLE hProcess;
char buf[BUFSIZE];
LVITEM* pItem =(LVITEM*)buf;
pSave[0] = ’0′;
GetWindowThreadProcessId(hWnd, &dwProcess);
// 申请内存
hProcess
dwProcess);
LPLVITEM pTemp =(LPLVITEM)VirtualAllocEx(hProcess, 0,
BUFSIZE, MEM_COMMIT,PAGE_READWRITE);
memset(pItem, 0, sizeof(buf));
pItem->pszText = (char*)((char*)pTemp + sizeof(LVITEM));
pItem->cchTextMax = BUFSIZE - sizeof(LVITEM);
pItem->iSubItem = col; //列
=OpenProcess(PROCESS_ALL_ACCESS, false,
1 / 3
系列文档-技术文档
作者:
lixh
pItem->mask = LVIF_TEXT;
DWORD dWord = 0;
WriteProcessMemory(hProcess,
sizeof(buf),&dWord);
int nChar =SendMessage(hWnd,
LVM_GETITEMTEXT,
(WPARAM)row, //行
(LPARAM)pTemp);
//printf(“ListGetText read char count : %dn”, nChar);
//读数据
ReadProcessMemory(hProcess,
sizeof(buf),&dWord);
pItem->pszText = (char*)((char*)pItem + sizeof(LVITEM));
// 释放内存
VirtualFreeEx(hProcess,
MEM_RELEASE);
CloseHandle(hProcess);
sprintf(pSave, ”%s”, pItem->pszText);
}
pTemp, BUFSIZE,
pTemp, pItem,
pTemp, pItem,
2 / 3


发布评论