createprocess
readprocessmemory
writeprocessmemory
virtualallocex
virtualfreeex
readprocessmemory
writeprocessmemory
virtualallocex
virtualfreeex
解决方案 »
- 两个图像比较的问题
- 能不能在单文档中,画出一个圆,而在ondraw()调用后画出一个别的图形后,这个圆还在?
- 为什么在msdn上查不到ZwCreateProcess
- ip控件的使用,急,非常感谢!~
- 100份求救: 如何用在自己的程序里实现类似 控制面板里面打印机属性->端口页 ?
- 一道简单的DLL题目,几乎难倒了所有C++高手!!!!!
- server端接受不到client端传来的字符,高分求解
- 帮忙看一下,,高分,,再线等
- 关于WinZip将文件从自己的应用程序拖动到资源管理器的实现?????
- 如何实现Socket全双工文件传输?(流方式)
- 怎样动态把本地Access数据库.mdb连到RemoteData上啊?不用odbc.
- 希望各位大虾教教我,如何成为一名优秀的程序员?
FindWindow
GetWindowThreadProcessId
OpenProcess
WriteProcessMemory
ReadProcessMemory
CloseHandle
{
CWnd* toFind;
unsigned long p=0x00;
toFind=CWnd::FindWindow(NULL,Caption);//找到窗口
if(!toFind)
{
return false;
}
GetWindowThreadProcessId(toFind->m_hWnd ,&p);//得到窗口的ProcessID
m_hProcess=OpenProcess(PROCESS_ALL_ACCESS,true,p);//打开Process
if(!m_hProcess)
{
return false;
}
return true;
}
WriteProcessMemory(m_hProcess,Pointer,Buffer,Length,NULL)
//写地址,pointer是一个指针,你有unsigned long的值的话可以用汇编把它变成指针,或者就看我的.
Pointer = reinterpret_cast< void* > (address)
Void * unsigned long/int
至于这个地址,我想可以使用FPE2000来得到.先跟踪一下拉.
最后,别忘了关闭句柄.
bool ClosehProcess()
{
if(m_hProcess)
{
if(CloseHandle(m_hProcess))
{
m_hProcess=NULL;
return true;
}
}
return false;
}