pub unsafe fn GetPrivateProfileStringW<P0, P1, P2, P3>(
    lpappname: P0,
    lpkeyname: P1,
    lpdefault: P2,
    lpreturnedstring: Option<&mut [u16]>,
    lpfilename: P3,
) -> u32
where P0: Param<PCWSTR>, P1: Param<PCWSTR>, P2: Param<PCWSTR>, P3: Param<PCWSTR>,