pub unsafe fn DefSubclassProc<P0, P1, P2>(
    hwnd: P0,
    umsg: u32,
    wparam: P1,
    lparam: P2
) -> LRESULT
where P0: IntoParam<HWND>, P1: IntoParam<WPARAM>, P2: IntoParam<LPARAM>,