change from SetWindowLong to SetWindowLongPtr for x64 compatible