Прочитал статью на хабре о внедрении в чужой процесс
http://habrahabr.ru/blogs/cpp/95305/
Ну и пытаюсь повторить
PHP код:
DWORD WINAPI func(LPVOID)
{
LoadLibrary("kernel32.dll");
LoadLibrary("user32.dll");
MessageBox(0,"Hello from addres area of explorer","title",0);
return true;
}
MessageBox выскакивает, т.е. в недрение в explorer.exe произошло. Потом пытаюсь сделать, чтобы появилось окошко
PHP код:
HINSTANCE HInstance;
DWORD WINAPI func(LPVOID)
{
HWND hwnd;
WNDCLASS w;
memset(&w,0,sizeof(WNDCLASS));
w.style = CS_HREDRAW | CS_VREDRAW;
w.lpfnWndProc = WndProc;
w.hInstance = HInstance;
w.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
w.lpszClassName = "My Class";
RegisterClass(&w);
LoadLibrary("kernel32.dll");
LoadLibrary("user32.dll");
//MessageBox(0,"Hello from addres area of explorer","title",0);
hwnd = CreateWindow("My Class", "My title", WS_OVERLAPPEDWINDOW,
300, 200, 200, 180, NULL, NULL, HInstance, NULL);
ShowWindow(hwnd,SW_SHOWNORMAL);
return true;
}
и explorer падает . В чём может быть проблема?