add win32 porting
add win32 porting