Yes, if you are compiling this as C++, then you need to cast your void* returning functions to the appropriate type.
FileSize = (LPSTR)GlobalAlloc(GHND,Buff);
But why are you using GlobalAlloc() in preference to the standard C++ 'new' operator for allocating memory, which does not need any casting.