刚才学delphi ,只会做做小程序,这个代码内核不内核,消息不消息的我不会搞,谁能帮我转成delphi,谢谢啦!!
最好测试通过哟
#include <Windows.h>
HINSTANCE g_hInstance =0;void SendAsyncProc( HWND hwnd,
UINT uMsg,
ULONG_PTR dwData,
LRESULT lResult
)
{
char szWndText[255];
char szGameText[] = "文本文档";
memset(szWndText,0,255);
GetWindowText(hwnd,szWndText,255);
szWndText[9] = 0;
if (lstrcmpi(szWndText,szGameText) == 0)
{
MessageBox(NULL,"找到了-_-","Yes",MB_OK);
SendMessage(hwnd,WM_SETTEXT,0,(LPARAM)"hehe");
}
} void entry()
{
DWORD dwData =0;
g_hInstance = GetModuleHandle(NULL);
SendMessageCallback(HWND_BROADCAST,WM_PAINT,0,0,(SENDASYNCPROC)&SendAsyncProc,dwData);
MessageBox(NULL,NULL,NULL,NULL);
ExitProcess(0);
}
最好测试通过哟
#include <Windows.h>
HINSTANCE g_hInstance =0;void SendAsyncProc( HWND hwnd,
UINT uMsg,
ULONG_PTR dwData,
LRESULT lResult
)
{
char szWndText[255];
char szGameText[] = "文本文档";
memset(szWndText,0,255);
GetWindowText(hwnd,szWndText,255);
szWndText[9] = 0;
if (lstrcmpi(szWndText,szGameText) == 0)
{
MessageBox(NULL,"找到了-_-","Yes",MB_OK);
SendMessage(hwnd,WM_SETTEXT,0,(LPARAM)"hehe");
}
} void entry()
{
DWORD dwData =0;
g_hInstance = GetModuleHandle(NULL);
SendMessageCallback(HWND_BROADCAST,WM_PAINT,0,0,(SENDASYNCPROC)&SendAsyncProc,dwData);
MessageBox(NULL,NULL,NULL,NULL);
ExitProcess(0);
}
var
szWndText: array[0..254] of char;
szGameText: PChar;
begin
szGameText := '文本文档';
ZeroMemory(@szWndText[0], 255);
GetWindowText(m_hwnd, @szWndText[0], 255);
szWndText[9] = '0';
if (lstrcmpi(@szWndText[0], szGameText) = 0) then
begin
MessageBox(0, '找到了-_-', 'Yes', MB_OK);
SendMessage(m_hwnd:HWND, WM_SETTEXT, 0, LPARAM('hehe'));
end;
end; procedure entry()
var dwData: DWORD;
begin
dwData := 0;
g_hInstance := GetModuleHandle(0);
SendMessageCallback(HWND_BROADCAST, WM_PAINT, 0, 0, @SendAsyncProc, dwData);
MessageBox(0, '', '', 0);
ExitProcess(0);
end;
Windows, Messages, SysUtils;
var g_hInstance :Cardinal = 0;
dwData: DWORD = 0;procedure SendAsyncProc(m_hwnd:HWND; uMsg: UINT; dwData: PDWord; m_lResult: LRESULT);stdcall;
var
szWndText: array[0..254] of char;
szGameText: PChar;
begin
szGameText := 'Windows 任务管理器';//'文本文档';
ZeroMemory(@szWndText[0], 255);
GetWindowText(m_hwnd, @szWndText[0], 255);
if Trim(PChar(@szWndText[0]))<>'' then
OutputDebugString(PChar(@szWndText[0]));
if (lstrcmpi(@szWndText[0], szGameText) = 0) then
begin
MessageBox(0, '找到了-_-', 'Yes', MB_OK);
SendMessage(m_hwnd, WM_SETTEXT, 0, LPARAM(PChar('hehe')));
end;
end;begin
g_hInstance := GetModuleHandle(nil);
SendMessageCallback(HWND_BROADCAST, WM_PAINT, 0, 0, @SendAsyncProc, dwData);
MessageBox(0, '', '', 0);
ExitProcess(0);
end.