How to convert \_\_int64 to long in Windows (MSVC8 & MSVC6)?

Will a normal typecasting work? 

Also, how about converting long to \_\_int64? If the long is a negative value, will it work?

Note - I am talking of a scenario in which the \_\_int64 variable will always contain a value which will not be more than 32 bits long.