Witam.
Mam taki oto kodzik:
DWORD i;
HANDLE th=CreateThread( NULL, 0, (LPTHREAD_START_ROUTINE)watek, NULL, 0, &i );
LPCONTEXT cont=(CONTEXT*)malloc(sizeof(CONTEXT));
printf( "status %d\n", GetThreadContext( th,cont) );
printf( "ESP %x\n", cont->Esp );
I teraz problem w tym, że wartość Esp wynosi zero. Tak samo jest z Eip i innymi. GetThreadContext zwraca 1 czyli wg. MSDN funkcja zakończyła się sukcesem. Dodatkowo próbowałem otwierać wątek poprzez OpenThread z wszystkimi prawami dostępu jednak i ten sposób poległ. Czy ktoś wie może jak zmusić system do podania mi właściwego kontekstu wątku ? Ew. samego stanu rejestrów.
Pozdrawiam