pub unsafe fn TranslateInfStringW<P0, P1, P2, P3>(
    pszinffilename: P0,
    pszinstallsection: P1,
    psztranslatesection: P2,
    psztranslatekey: P3,
    pszbuffer: Option<&mut [u16]>,
    pdwrequiredsize: *mut u32,
    pvreserved: Option<*const c_void>,
) -> Result<()>
where P0: Param<PCWSTR>, P1: Param<PCWSTR>, P2: Param<PCWSTR>, P3: Param<PCWSTR>,