You can't simply use long here, you need to handle the difference in thesize of long between Win32 and Unix.