Ciao, grazie per la risposta,
quel parametro è corretto perchè all'interno del thread ho la necessità di poter modificare l'evento.

Comunque credo di aver trovato il problema dalla documentazione msdn:

codice:
HANDLE WINAPI CreateEvent(
  _In_opt_  LPSECURITY_ATTRIBUTES lpEventAttributes,
  _In_      BOOL bManualReset,
  _In_      BOOL bInitialState,
  _In_opt_  LPCTSTR lpName
);
lpEventAttributes [in, optional]
A pointer to a SECURITY_ATTRIBUTES structure. If this parameter is NULL, the handle cannot be inherited by child processes.

Questo spiegherebbe perchè riesco a gestire tranquillamente l'evento dal main, ma non ho accesso dal thread child. Devo creare un oggetto con i diritti di condivisione per i figli.