Да просто этой функции надо знать, сколько байт от неё вы готовы проглотить, т.е. размер созданного вами буфера. Выяснить размер буфера из одного только dwBufferAddress она не может, т.к. это лишь указатель на начало буфера.