HANDLE --> (void *), we can't rely on having included windows.h here