Function ShellExecuteW
pub unsafe fn ShellExecuteW<P1, P2, P3, P4>(
    hwnd: Option<HWND>,
    lpoperation: P1,
    lpfile: P2,
    lpparameters: P3,
    lpdirectory: P4,
    nshowcmd: SHOW_WINDOW_CMD,
) -> HINSTANCEwhere
    P1: Param<PCWSTR>,
    P2: Param<PCWSTR>,
    P3: Param<PCWSTR>,
    P4: Param<PCWSTR>,