Sin profuncizar mucho en tu código veo errores de bulto. Por ejemplo:
Código:
void __fastcall THiloDebugger::OnCreateThreadDebugEventThread()
{
dwContinueStatus = TDebugger::OnCreateThreadDebugEvent(&DebugEv);
}
En caso de que
OnCreateThreadDebugEvent fuese una función miembro estática de la clase TDebugger, podrías invocarla así, pero como no lo es, deber hacerlo a través de un objeto de esa clase.
El mismo error se repite varias veces. Piensa que necesitas hacer para diseñar las clases. Un TThread no es mas que otra clase y se rige por los mismos principios. Si vas a acceder a objetos o variables desde distintos threads al mismo tiempo ten en cuenta que escrituras simultáneas pueden corromper los hilos, de aquí que exista Synchronize. Las API de Windows
suelen ser thread-safe pero la VCL no.
Espero haberte orientado.
Saludos.