In your Type declaration, fAborted should be a Long, not a Boolean. It is declared in the Windows C++ header file as a BOOL, which is a Long integer in C++.
Even though your type structure is misaligned, your functions do work, I believe, simply because you do not use fAborted or any of the...