#[cfg(feature = "Win32_UI_Shell_Common")]
pub mod Common;
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub mod PropertiesSystem;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn AssocCreate<T>(clsid: ::windows::core::GUID) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shlwapi.dll""system" fn AssocCreate ( clsid : :: windows::core::GUID , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
AssocCreate(::core::mem::transmute(clsid), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Registry\"`*"]
#[cfg(feature = "Win32_System_Registry")]
#[inline]
pub unsafe fn AssocCreateForClasses<T>(rgclasses: &[ASSOCIATIONELEMENT]) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn AssocCreateForClasses ( rgclasses : *const ASSOCIATIONELEMENT , cclasses : u32 , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
AssocCreateForClasses(::core::mem::transmute(rgclasses.as_ptr()), rgclasses.len() as _, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_Shell_PropertiesSystem"))]
#[inline]
pub unsafe fn AssocGetDetailsOfPropKey<P0>(psf: P0, pidl: *const Common::ITEMIDLIST, pkey: *const PropertiesSystem::PROPERTYKEY, pv: *mut super::super::System::Com::VARIANT, pffoundpropkey: ::core::option::Option<*mut super::super::Foundation::BOOL>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
{
::windows::core::link ! ( "shell32.dll""system" fn AssocGetDetailsOfPropKey ( psf : * mut::core::ffi::c_void , pidl : *const Common:: ITEMIDLIST , pkey : *const PropertiesSystem:: PROPERTYKEY , pv : *mut super::super::System::Com:: VARIANT , pffoundpropkey : *mut super::super::Foundation:: BOOL ) -> :: windows::core::HRESULT );
AssocGetDetailsOfPropKey(psf.into().abi(), pidl, pkey, pv, ::core::mem::transmute(pffoundpropkey.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn AssocGetPerceivedType<P0>(pszext: P0, ptype: *mut Common::PERCEIVED, pflag: *mut u32, ppsztype: ::core::option::Option<*mut ::windows::core::PWSTR>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn AssocGetPerceivedType ( pszext : :: windows::core::PCWSTR , ptype : *mut Common:: PERCEIVED , pflag : *mut u32 , ppsztype : *mut :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
AssocGetPerceivedType(pszext.into().abi(), ptype, pflag, ::core::mem::transmute(ppsztype.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn AssocIsDangerous<P0>(pszassoc: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn AssocIsDangerous ( pszassoc : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
AssocIsDangerous(pszassoc.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Registry\"`*"]
#[cfg(feature = "Win32_System_Registry")]
#[inline]
pub unsafe fn AssocQueryKeyA<P0, P1>(flags: ASSOCF, key: ASSOCKEY, pszassoc: P0, pszextra: P1) -> ::windows::core::Result<super::super::System::Registry::HKEY>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn AssocQueryKeyA ( flags : ASSOCF , key : ASSOCKEY , pszassoc : :: windows::core::PCSTR , pszextra : :: windows::core::PCSTR , phkeyout : *mut super::super::System::Registry:: HKEY ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
AssocQueryKeyA(flags, key, pszassoc.into().abi(), pszextra.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Registry\"`*"]
#[cfg(feature = "Win32_System_Registry")]
#[inline]
pub unsafe fn AssocQueryKeyW<P0, P1>(flags: ASSOCF, key: ASSOCKEY, pszassoc: P0, pszextra: P1) -> ::windows::core::Result<super::super::System::Registry::HKEY>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn AssocQueryKeyW ( flags : ASSOCF , key : ASSOCKEY , pszassoc : :: windows::core::PCWSTR , pszextra : :: windows::core::PCWSTR , phkeyout : *mut super::super::System::Registry:: HKEY ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
AssocQueryKeyW(flags, key, pszassoc.into().abi(), pszextra.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn AssocQueryStringA<P0, P1>(flags: ASSOCF, str: ASSOCSTR, pszassoc: P0, pszextra: P1, pszout: ::windows::core::PSTR, pcchout: *mut u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn AssocQueryStringA ( flags : ASSOCF , str : ASSOCSTR , pszassoc : :: windows::core::PCSTR , pszextra : :: windows::core::PCSTR , pszout : :: windows::core::PSTR , pcchout : *mut u32 ) -> :: windows::core::HRESULT );
AssocQueryStringA(flags, str, pszassoc.into().abi(), pszextra.into().abi(), ::core::mem::transmute(pszout), pcchout).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Registry\"`*"]
#[cfg(feature = "Win32_System_Registry")]
#[inline]
pub unsafe fn AssocQueryStringByKeyA<P0, P1>(flags: ASSOCF, str: ASSOCSTR, hkassoc: P0, pszextra: P1, pszout: ::windows::core::PSTR, pcchout: *mut u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn AssocQueryStringByKeyA ( flags : ASSOCF , str : ASSOCSTR , hkassoc : super::super::System::Registry:: HKEY , pszextra : :: windows::core::PCSTR , pszout : :: windows::core::PSTR , pcchout : *mut u32 ) -> :: windows::core::HRESULT );
AssocQueryStringByKeyA(flags, str, hkassoc.into(), pszextra.into().abi(), ::core::mem::transmute(pszout), pcchout).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Registry\"`*"]
#[cfg(feature = "Win32_System_Registry")]
#[inline]
pub unsafe fn AssocQueryStringByKeyW<P0, P1>(flags: ASSOCF, str: ASSOCSTR, hkassoc: P0, pszextra: P1, pszout: ::windows::core::PWSTR, pcchout: *mut u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn AssocQueryStringByKeyW ( flags : ASSOCF , str : ASSOCSTR , hkassoc : super::super::System::Registry:: HKEY , pszextra : :: windows::core::PCWSTR , pszout : :: windows::core::PWSTR , pcchout : *mut u32 ) -> :: windows::core::HRESULT );
AssocQueryStringByKeyW(flags, str, hkassoc.into(), pszextra.into().abi(), ::core::mem::transmute(pszout), pcchout).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn AssocQueryStringW<P0, P1>(flags: ASSOCF, str: ASSOCSTR, pszassoc: P0, pszextra: P1, pszout: ::windows::core::PWSTR, pcchout: *mut u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn AssocQueryStringW ( flags : ASSOCF , str : ASSOCSTR , pszassoc : :: windows::core::PCWSTR , pszextra : :: windows::core::PCWSTR , pszout : :: windows::core::PWSTR , pcchout : *mut u32 ) -> :: windows::core::HRESULT );
AssocQueryStringW(flags, str, pszassoc.into().abi(), pszextra.into().abi(), ::core::mem::transmute(pszout), pcchout).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Registry\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Registry", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn CDefFolderMenu_Create2<P0, P1>(pidlfolder: ::core::option::Option<*const Common::ITEMIDLIST>, hwnd: P0, apidl: ::core::option::Option<&[*const Common::ITEMIDLIST]>, psf: P1, pfn: LPFNDFMCALLBACK, ahkeys: ::core::option::Option<&[super::super::System::Registry::HKEY]>) -> ::windows::core::Result<IContextMenu>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
{
::windows::core::link ! ( "shell32.dll""system" fn CDefFolderMenu_Create2 ( pidlfolder : *const Common:: ITEMIDLIST , hwnd : super::super::Foundation:: HWND , cidl : u32 , apidl : *const *const Common:: ITEMIDLIST , psf : * mut::core::ffi::c_void , pfn : LPFNDFMCALLBACK , nkeys : u32 , ahkeys : *const super::super::System::Registry:: HKEY , ppcm : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
CDefFolderMenu_Create2(::core::mem::transmute(pidlfolder.unwrap_or(::std::ptr::null())), hwnd.into(), apidl.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(apidl.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), psf.into().abi(), pfn, ahkeys.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(ahkeys.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn CIDLData_CreateFromIDArray(pidlfolder: *const Common::ITEMIDLIST, apidl: ::core::option::Option<&[*const Common::ITEMIDLIST]>) -> ::windows::core::Result<super::super::System::Com::IDataObject> {
::windows::core::link ! ( "shell32.dll""system" fn CIDLData_CreateFromIDArray ( pidlfolder : *const Common:: ITEMIDLIST , cidl : u32 , apidl : *const *const Common:: ITEMIDLIST , ppdtobj : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
CIDLData_CreateFromIDArray(pidlfolder, apidl.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(apidl.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn ChrCmpIA(w1: u16, w2: u16) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn ChrCmpIA ( w1 : u16 , w2 : u16 ) -> super::super::Foundation:: BOOL );
ChrCmpIA(w1, w2)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn ChrCmpIW(w1: u16, w2: u16) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn ChrCmpIW ( w1 : u16 , w2 : u16 ) -> super::super::Foundation:: BOOL );
ChrCmpIW(w1, w2)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn ColorAdjustLuma<P0, P1>(clrrgb: P0, n: i32, fscale: P1) -> super::super::Foundation::COLORREF
where
P0: ::std::convert::Into<super::super::Foundation::COLORREF>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn ColorAdjustLuma ( clrrgb : super::super::Foundation:: COLORREF , n : i32 , fscale : super::super::Foundation:: BOOL ) -> super::super::Foundation:: COLORREF );
ColorAdjustLuma(clrrgb.into(), n, fscale.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn ColorHLSToRGB(whue: u16, wluminance: u16, wsaturation: u16) -> super::super::Foundation::COLORREF {
::windows::core::link ! ( "shlwapi.dll""system" fn ColorHLSToRGB ( whue : u16 , wluminance : u16 , wsaturation : u16 ) -> super::super::Foundation:: COLORREF );
ColorHLSToRGB(whue, wluminance, wsaturation)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn ColorRGBToHLS<P0>(clrrgb: P0, pwhue: *mut u16, pwluminance: *mut u16, pwsaturation: *mut u16)
where
P0: ::std::convert::Into<super::super::Foundation::COLORREF>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn ColorRGBToHLS ( clrrgb : super::super::Foundation:: COLORREF , pwhue : *mut u16 , pwluminance : *mut u16 , pwsaturation : *mut u16 ) -> ( ) );
ColorRGBToHLS(clrrgb.into(), pwhue, pwluminance, pwsaturation)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn CommandLineToArgvW<P0>(lpcmdline: P0, pnumargs: *mut i32) -> *mut ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn CommandLineToArgvW ( lpcmdline : :: windows::core::PCWSTR , pnumargs : *mut i32 ) -> *mut :: windows::core::PWSTR );
CommandLineToArgvW(lpcmdline.into().abi(), pnumargs)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
#[inline]
pub unsafe fn ConnectToConnectionPoint<P0, P1, P2>(punk: P0, riidevent: *const ::windows::core::GUID, fconnect: P1, punktarget: P2, pdwcookie: *mut u32, ppcpout: ::core::option::Option<*mut ::core::option::Option<super::super::System::Com::IConnectionPoint>>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn ConnectToConnectionPoint ( punk : * mut::core::ffi::c_void , riidevent : *const :: windows::core::GUID , fconnect : super::super::Foundation:: BOOL , punktarget : * mut::core::ffi::c_void , pdwcookie : *mut u32 , ppcpout : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
ConnectToConnectionPoint(punk.into().abi(), riidevent, fconnect.into(), punktarget.into().abi(), pdwcookie, ::core::mem::transmute(ppcpout.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn CreateProfile<P0, P1>(pszusersid: P0, pszusername: P1, pszprofilepath: &mut [u16]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "userenv.dll""system" fn CreateProfile ( pszusersid : :: windows::core::PCWSTR , pszusername : :: windows::core::PCWSTR , pszprofilepath : :: windows::core::PWSTR , cchprofilepath : u32 ) -> :: windows::core::HRESULT );
CreateProfile(pszusersid.into().abi(), pszusername.into().abi(), ::core::mem::transmute(pszprofilepath.as_ptr()), pszprofilepath.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn DAD_AutoScroll<P0>(hwnd: P0, pad: *mut AUTO_SCROLL_DATA, pptnow: *const super::super::Foundation::POINT) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
::windows::core::link ! ( "shell32.dll""system" fn DAD_AutoScroll ( hwnd : super::super::Foundation:: HWND , pad : *mut AUTO_SCROLL_DATA , pptnow : *const super::super::Foundation:: POINT ) -> super::super::Foundation:: BOOL );
DAD_AutoScroll(hwnd.into(), pad, pptnow)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn DAD_DragEnterEx<P0>(hwndtarget: P0, ptstart: super::super::Foundation::POINT) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
::windows::core::link ! ( "shell32.dll""system" fn DAD_DragEnterEx ( hwndtarget : super::super::Foundation:: HWND , ptstart : super::super::Foundation:: POINT ) -> super::super::Foundation:: BOOL );
DAD_DragEnterEx(hwndtarget.into(), ::core::mem::transmute(ptstart))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
#[inline]
pub unsafe fn DAD_DragEnterEx2<P0, P1>(hwndtarget: P0, ptstart: super::super::Foundation::POINT, pdtobject: P1) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
{
::windows::core::link ! ( "shell32.dll""system" fn DAD_DragEnterEx2 ( hwndtarget : super::super::Foundation:: HWND , ptstart : super::super::Foundation:: POINT , pdtobject : * mut::core::ffi::c_void ) -> super::super::Foundation:: BOOL );
DAD_DragEnterEx2(hwndtarget.into(), ::core::mem::transmute(ptstart), pdtobject.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn DAD_DragLeave() -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn DAD_DragLeave ( ) -> super::super::Foundation:: BOOL );
DAD_DragLeave()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn DAD_DragMove(pt: super::super::Foundation::POINT) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn DAD_DragMove ( pt : super::super::Foundation:: POINT ) -> super::super::Foundation:: BOOL );
DAD_DragMove(::core::mem::transmute(pt))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Controls\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
#[inline]
pub unsafe fn DAD_SetDragImage<P0>(him: P0, pptoffset: *mut super::super::Foundation::POINT) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::Controls::HIMAGELIST>,
{
::windows::core::link ! ( "shell32.dll""system" fn DAD_SetDragImage ( him : super::Controls:: HIMAGELIST , pptoffset : *mut super::super::Foundation:: POINT ) -> super::super::Foundation:: BOOL );
DAD_SetDragImage(him.into(), pptoffset)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn DAD_ShowDragImage<P0>(fshow: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shell32.dll""system" fn DAD_ShowDragImage ( fshow : super::super::Foundation:: BOOL ) -> super::super::Foundation:: BOOL );
DAD_ShowDragImage(fshow.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn DefSubclassProc<P0, P1, P2>(hwnd: P0, umsg: u32, wparam: P1, lparam: P2) -> super::super::Foundation::LRESULT
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::WPARAM>,
P2: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
::windows::core::link ! ( "comctl32.dll""system" fn DefSubclassProc ( hwnd : super::super::Foundation:: HWND , umsg : u32 , wparam : super::super::Foundation:: WPARAM , lparam : super::super::Foundation:: LPARAM ) -> super::super::Foundation:: LRESULT );
DefSubclassProc(hwnd.into(), umsg, wparam.into(), lparam.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn DeleteProfileA<P0, P1, P2>(lpsidstring: P0, lpprofilepath: P1, lpcomputername: P2) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "userenv.dll""system" fn DeleteProfileA ( lpsidstring : :: windows::core::PCSTR , lpprofilepath : :: windows::core::PCSTR , lpcomputername : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
DeleteProfileA(lpsidstring.into().abi(), lpprofilepath.into().abi(), lpcomputername.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn DeleteProfileW<P0, P1, P2>(lpsidstring: P0, lpprofilepath: P1, lpcomputername: P2) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "userenv.dll""system" fn DeleteProfileW ( lpsidstring : :: windows::core::PCWSTR , lpprofilepath : :: windows::core::PCWSTR , lpcomputername : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
DeleteProfileW(lpsidstring.into().abi(), lpprofilepath.into().abi(), lpcomputername.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn DoEnvironmentSubstA(pszsrc: &mut [u8]) -> u32 {
::windows::core::link ! ( "shell32.dll""system" fn DoEnvironmentSubstA ( pszsrc : :: windows::core::PSTR , cchsrc : u32 ) -> u32 );
DoEnvironmentSubstA(::core::mem::transmute(pszsrc.as_ptr()), pszsrc.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn DoEnvironmentSubstW(pszsrc: &mut [u16]) -> u32 {
::windows::core::link ! ( "shell32.dll""system" fn DoEnvironmentSubstW ( pszsrc : :: windows::core::PWSTR , cchsrc : u32 ) -> u32 );
DoEnvironmentSubstW(::core::mem::transmute(pszsrc.as_ptr()), pszsrc.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn DragAcceptFiles<P0, P1>(hwnd: P0, faccept: P1)
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shell32.dll""system" fn DragAcceptFiles ( hwnd : super::super::Foundation:: HWND , faccept : super::super::Foundation:: BOOL ) -> ( ) );
DragAcceptFiles(hwnd.into(), faccept.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn DragFinish<P0>(hdrop: P0)
where
P0: ::std::convert::Into<HDROP>,
{
::windows::core::link ! ( "shell32.dll""system" fn DragFinish ( hdrop : HDROP ) -> ( ) );
DragFinish(hdrop.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn DragQueryFileA<P0>(hdrop: P0, ifile: u32, lpszfile: ::core::option::Option<&mut [u8]>) -> u32
where
P0: ::std::convert::Into<HDROP>,
{
::windows::core::link ! ( "shell32.dll""system" fn DragQueryFileA ( hdrop : HDROP , ifile : u32 , lpszfile : :: windows::core::PSTR , cch : u32 ) -> u32 );
DragQueryFileA(hdrop.into(), ifile, ::core::mem::transmute(lpszfile.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), lpszfile.as_deref().map_or(0, |slice| slice.len() as _))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn DragQueryFileW<P0>(hdrop: P0, ifile: u32, lpszfile: ::core::option::Option<&mut [u16]>) -> u32
where
P0: ::std::convert::Into<HDROP>,
{
::windows::core::link ! ( "shell32.dll""system" fn DragQueryFileW ( hdrop : HDROP , ifile : u32 , lpszfile : :: windows::core::PWSTR , cch : u32 ) -> u32 );
DragQueryFileW(hdrop.into(), ifile, ::core::mem::transmute(lpszfile.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), lpszfile.as_deref().map_or(0, |slice| slice.len() as _))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn DragQueryPoint<P0>(hdrop: P0, ppt: *mut super::super::Foundation::POINT) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<HDROP>,
{
::windows::core::link ! ( "shell32.dll""system" fn DragQueryPoint ( hdrop : HDROP , ppt : *mut super::super::Foundation:: POINT ) -> super::super::Foundation:: BOOL );
DragQueryPoint(hdrop.into(), ppt)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn DriveType(idrive: i32) -> i32 {
::windows::core::link ! ( "shell32.dll""system" fn DriveType ( idrive : i32 ) -> i32 );
DriveType(idrive)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
#[inline]
pub unsafe fn DuplicateIcon<P0, P1>(hinst: P0, hicon: P1) -> super::WindowsAndMessaging::HICON
where
P0: ::std::convert::Into<super::super::Foundation::HINSTANCE>,
P1: ::std::convert::Into<super::WindowsAndMessaging::HICON>,
{
::windows::core::link ! ( "shell32.dll""system" fn DuplicateIcon ( hinst : super::super::Foundation:: HINSTANCE , hicon : super::WindowsAndMessaging:: HICON ) -> super::WindowsAndMessaging:: HICON );
DuplicateIcon(hinst.into(), hicon.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
#[inline]
pub unsafe fn ExtractAssociatedIconA<P0>(hinst: P0, psziconpath: &mut [u8; 128], piicon: *mut u16) -> super::WindowsAndMessaging::HICON
where
P0: ::std::convert::Into<super::super::Foundation::HINSTANCE>,
{
::windows::core::link ! ( "shell32.dll""system" fn ExtractAssociatedIconA ( hinst : super::super::Foundation:: HINSTANCE , psziconpath : :: windows::core::PSTR , piicon : *mut u16 ) -> super::WindowsAndMessaging:: HICON );
ExtractAssociatedIconA(hinst.into(), ::core::mem::transmute(psziconpath.as_ptr()), piicon)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
#[inline]
pub unsafe fn ExtractAssociatedIconExA<P0>(hinst: P0, psziconpath: &mut [u8; 128], piiconindex: *mut u16, piiconid: *mut u16) -> super::WindowsAndMessaging::HICON
where
P0: ::std::convert::Into<super::super::Foundation::HINSTANCE>,
{
::windows::core::link ! ( "shell32.dll""system" fn ExtractAssociatedIconExA ( hinst : super::super::Foundation:: HINSTANCE , psziconpath : :: windows::core::PSTR , piiconindex : *mut u16 , piiconid : *mut u16 ) -> super::WindowsAndMessaging:: HICON );
ExtractAssociatedIconExA(hinst.into(), ::core::mem::transmute(psziconpath.as_ptr()), piiconindex, piiconid)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
#[inline]
pub unsafe fn ExtractAssociatedIconExW<P0>(hinst: P0, psziconpath: &mut [u16; 128], piiconindex: *mut u16, piiconid: *mut u16) -> super::WindowsAndMessaging::HICON
where
P0: ::std::convert::Into<super::super::Foundation::HINSTANCE>,
{
::windows::core::link ! ( "shell32.dll""system" fn ExtractAssociatedIconExW ( hinst : super::super::Foundation:: HINSTANCE , psziconpath : :: windows::core::PWSTR , piiconindex : *mut u16 , piiconid : *mut u16 ) -> super::WindowsAndMessaging:: HICON );
ExtractAssociatedIconExW(hinst.into(), ::core::mem::transmute(psziconpath.as_ptr()), piiconindex, piiconid)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
#[inline]
pub unsafe fn ExtractAssociatedIconW<P0>(hinst: P0, psziconpath: &mut [u16; 128], piicon: *mut u16) -> super::WindowsAndMessaging::HICON
where
P0: ::std::convert::Into<super::super::Foundation::HINSTANCE>,
{
::windows::core::link ! ( "shell32.dll""system" fn ExtractAssociatedIconW ( hinst : super::super::Foundation:: HINSTANCE , psziconpath : :: windows::core::PWSTR , piicon : *mut u16 ) -> super::WindowsAndMessaging:: HICON );
ExtractAssociatedIconW(hinst.into(), ::core::mem::transmute(psziconpath.as_ptr()), piicon)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
#[inline]
pub unsafe fn ExtractIconA<P0, P1>(hinst: P0, pszexefilename: P1, niconindex: u32) -> super::WindowsAndMessaging::HICON
where
P0: ::std::convert::Into<super::super::Foundation::HINSTANCE>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn ExtractIconA ( hinst : super::super::Foundation:: HINSTANCE , pszexefilename : :: windows::core::PCSTR , niconindex : u32 ) -> super::WindowsAndMessaging:: HICON );
ExtractIconA(hinst.into(), pszexefilename.into().abi(), niconindex)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
#[inline]
pub unsafe fn ExtractIconExA<P0>(lpszfile: P0, niconindex: i32, phiconlarge: ::core::option::Option<*mut super::WindowsAndMessaging::HICON>, phiconsmall: ::core::option::Option<*mut super::WindowsAndMessaging::HICON>, nicons: u32) -> u32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn ExtractIconExA ( lpszfile : :: windows::core::PCSTR , niconindex : i32 , phiconlarge : *mut super::WindowsAndMessaging:: HICON , phiconsmall : *mut super::WindowsAndMessaging:: HICON , nicons : u32 ) -> u32 );
ExtractIconExA(lpszfile.into().abi(), niconindex, ::core::mem::transmute(phiconlarge.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(phiconsmall.unwrap_or(::std::ptr::null_mut())), nicons)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
#[inline]
pub unsafe fn ExtractIconExW<P0>(lpszfile: P0, niconindex: i32, phiconlarge: ::core::option::Option<*mut super::WindowsAndMessaging::HICON>, phiconsmall: ::core::option::Option<*mut super::WindowsAndMessaging::HICON>, nicons: u32) -> u32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn ExtractIconExW ( lpszfile : :: windows::core::PCWSTR , niconindex : i32 , phiconlarge : *mut super::WindowsAndMessaging:: HICON , phiconsmall : *mut super::WindowsAndMessaging:: HICON , nicons : u32 ) -> u32 );
ExtractIconExW(lpszfile.into().abi(), niconindex, ::core::mem::transmute(phiconlarge.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(phiconsmall.unwrap_or(::std::ptr::null_mut())), nicons)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
#[inline]
pub unsafe fn ExtractIconW<P0, P1>(hinst: P0, pszexefilename: P1, niconindex: u32) -> super::WindowsAndMessaging::HICON
where
P0: ::std::convert::Into<super::super::Foundation::HINSTANCE>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn ExtractIconW ( hinst : super::super::Foundation:: HINSTANCE , pszexefilename : :: windows::core::PCWSTR , niconindex : u32 ) -> super::WindowsAndMessaging:: HICON );
ExtractIconW(hinst.into(), pszexefilename.into().abi(), niconindex)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn FindExecutableA<P0, P1>(lpfile: P0, lpdirectory: P1, lpresult: &mut [u8; 260]) -> super::super::Foundation::HINSTANCE
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn FindExecutableA ( lpfile : :: windows::core::PCSTR , lpdirectory : :: windows::core::PCSTR , lpresult : :: windows::core::PSTR ) -> super::super::Foundation:: HINSTANCE );
FindExecutableA(lpfile.into().abi(), lpdirectory.into().abi(), ::core::mem::transmute(lpresult.as_ptr()))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn FindExecutableW<P0, P1>(lpfile: P0, lpdirectory: P1, lpresult: &mut [u16; 260]) -> super::super::Foundation::HINSTANCE
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn FindExecutableW ( lpfile : :: windows::core::PCWSTR , lpdirectory : :: windows::core::PCWSTR , lpresult : :: windows::core::PWSTR ) -> super::super::Foundation:: HINSTANCE );
FindExecutableW(lpfile.into().abi(), lpdirectory.into().abi(), ::core::mem::transmute(lpresult.as_ptr()))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn GetAcceptLanguagesA(pszlanguages: ::windows::core::PSTR, pcchlanguages: *mut u32) -> ::windows::core::Result<()> {
::windows::core::link ! ( "shlwapi.dll""system" fn GetAcceptLanguagesA ( pszlanguages : :: windows::core::PSTR , pcchlanguages : *mut u32 ) -> :: windows::core::HRESULT );
GetAcceptLanguagesA(::core::mem::transmute(pszlanguages), pcchlanguages).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn GetAcceptLanguagesW(pszlanguages: ::windows::core::PWSTR, pcchlanguages: *mut u32) -> ::windows::core::Result<()> {
::windows::core::link ! ( "shlwapi.dll""system" fn GetAcceptLanguagesW ( pszlanguages : :: windows::core::PWSTR , pcchlanguages : *mut u32 ) -> :: windows::core::HRESULT );
GetAcceptLanguagesW(::core::mem::transmute(pszlanguages), pcchlanguages).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn GetAllUsersProfileDirectoryA(lpprofiledir: ::windows::core::PSTR, lpcchsize: *mut u32) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "userenv.dll""system" fn GetAllUsersProfileDirectoryA ( lpprofiledir : :: windows::core::PSTR , lpcchsize : *mut u32 ) -> super::super::Foundation:: BOOL );
GetAllUsersProfileDirectoryA(::core::mem::transmute(lpprofiledir), lpcchsize)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn GetAllUsersProfileDirectoryW(lpprofiledir: ::windows::core::PWSTR, lpcchsize: *mut u32) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "userenv.dll""system" fn GetAllUsersProfileDirectoryW ( lpprofiledir : :: windows::core::PWSTR , lpcchsize : *mut u32 ) -> super::super::Foundation:: BOOL );
GetAllUsersProfileDirectoryW(::core::mem::transmute(lpprofiledir), lpcchsize)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn GetCurrentProcessExplicitAppUserModelID() -> ::windows::core::Result<::windows::core::PWSTR> {
::windows::core::link ! ( "shell32.dll""system" fn GetCurrentProcessExplicitAppUserModelID ( appid : *mut :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
GetCurrentProcessExplicitAppUserModelID(result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn GetDefaultUserProfileDirectoryA(lpprofiledir: ::windows::core::PSTR, lpcchsize: *mut u32) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "userenv.dll""system" fn GetDefaultUserProfileDirectoryA ( lpprofiledir : :: windows::core::PSTR , lpcchsize : *mut u32 ) -> super::super::Foundation:: BOOL );
GetDefaultUserProfileDirectoryA(::core::mem::transmute(lpprofiledir), lpcchsize)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn GetDefaultUserProfileDirectoryW(lpprofiledir: ::windows::core::PWSTR, lpcchsize: *mut u32) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "userenv.dll""system" fn GetDefaultUserProfileDirectoryW ( lpprofiledir : :: windows::core::PWSTR , lpcchsize : *mut u32 ) -> super::super::Foundation:: BOOL );
GetDefaultUserProfileDirectoryW(::core::mem::transmute(lpprofiledir), lpcchsize)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn GetDpiForShellUIComponent(param0: SHELL_UI_COMPONENT) -> u32 {
::windows::core::link ! ( "api-ms-win-shcore-scaling-l1-1-2.dll""system" fn GetDpiForShellUIComponent ( param0 : SHELL_UI_COMPONENT ) -> u32 );
GetDpiForShellUIComponent(param0)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn GetFileNameFromBrowse<P0, P1, P2, P3, P4>(hwnd: P0, pszfilepath: &mut [u16], pszworkingdir: P1, pszdefext: P2, pszfilters: P3, psztitle: P4) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P4: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn GetFileNameFromBrowse ( hwnd : super::super::Foundation:: HWND , pszfilepath : :: windows::core::PWSTR , cchfilepath : u32 , pszworkingdir : :: windows::core::PCWSTR , pszdefext : :: windows::core::PCWSTR , pszfilters : :: windows::core::PCWSTR , psztitle : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
GetFileNameFromBrowse(hwnd.into(), ::core::mem::transmute(pszfilepath.as_ptr()), pszfilepath.len() as _, pszworkingdir.into().abi(), pszdefext.into().abi(), pszfilters.into().abi(), psztitle.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
#[inline]
pub unsafe fn GetMenuContextHelpId<P0>(param0: P0) -> u32
where
P0: ::std::convert::Into<super::WindowsAndMessaging::HMENU>,
{
::windows::core::link ! ( "user32.dll""system" fn GetMenuContextHelpId ( param0 : super::WindowsAndMessaging:: HMENU ) -> u32 );
GetMenuContextHelpId(param0.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
#[inline]
pub unsafe fn GetMenuPosFromID<P0>(hmenu: P0, id: u32) -> i32
where
P0: ::std::convert::Into<super::WindowsAndMessaging::HMENU>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn GetMenuPosFromID ( hmenu : super::WindowsAndMessaging:: HMENU , id : u32 ) -> i32 );
GetMenuPosFromID(hmenu.into(), id)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn GetProfileType(dwflags: *mut u32) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "userenv.dll""system" fn GetProfileType ( dwflags : *mut u32 ) -> super::super::Foundation:: BOOL );
GetProfileType(dwflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn GetProfilesDirectoryA(lpprofiledir: ::windows::core::PSTR, lpcchsize: *mut u32) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "userenv.dll""system" fn GetProfilesDirectoryA ( lpprofiledir : :: windows::core::PSTR , lpcchsize : *mut u32 ) -> super::super::Foundation:: BOOL );
GetProfilesDirectoryA(::core::mem::transmute(lpprofiledir), lpcchsize)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn GetProfilesDirectoryW(lpprofiledir: ::windows::core::PWSTR, lpcchsize: *mut u32) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "userenv.dll""system" fn GetProfilesDirectoryW ( lpprofiledir : :: windows::core::PWSTR , lpcchsize : *mut u32 ) -> super::super::Foundation:: BOOL );
GetProfilesDirectoryW(::core::mem::transmute(lpprofiledir), lpcchsize)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn GetScaleFactorForDevice(devicetype: DISPLAY_DEVICE_TYPE) -> Common::DEVICE_SCALE_FACTOR {
::windows::core::link ! ( "api-ms-win-shcore-scaling-l1-1-0.dll""system" fn GetScaleFactorForDevice ( devicetype : DISPLAY_DEVICE_TYPE ) -> Common:: DEVICE_SCALE_FACTOR );
GetScaleFactorForDevice(devicetype)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Graphics_Gdi", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn GetScaleFactorForMonitor<P0>(hmon: P0) -> ::windows::core::Result<Common::DEVICE_SCALE_FACTOR>
where
P0: ::std::convert::Into<super::super::Graphics::Gdi::HMONITOR>,
{
::windows::core::link ! ( "api-ms-win-shcore-scaling-l1-1-1.dll""system" fn GetScaleFactorForMonitor ( hmon : super::super::Graphics::Gdi:: HMONITOR , pscale : *mut Common:: DEVICE_SCALE_FACTOR ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
GetScaleFactorForMonitor(hmon.into(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn GetUserProfileDirectoryA<P0>(htoken: P0, lpprofiledir: ::windows::core::PSTR, lpcchsize: *mut u32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
::windows::core::link ! ( "userenv.dll""system" fn GetUserProfileDirectoryA ( htoken : super::super::Foundation:: HANDLE , lpprofiledir : :: windows::core::PSTR , lpcchsize : *mut u32 ) -> super::super::Foundation:: BOOL );
GetUserProfileDirectoryA(htoken.into(), ::core::mem::transmute(lpprofiledir), lpcchsize)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn GetUserProfileDirectoryW<P0>(htoken: P0, lpprofiledir: ::windows::core::PWSTR, lpcchsize: *mut u32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
::windows::core::link ! ( "userenv.dll""system" fn GetUserProfileDirectoryW ( htoken : super::super::Foundation:: HANDLE , lpprofiledir : :: windows::core::PWSTR , lpcchsize : *mut u32 ) -> super::super::Foundation:: BOOL );
GetUserProfileDirectoryW(htoken.into(), ::core::mem::transmute(lpprofiledir), lpcchsize)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn GetWindowContextHelpId<P0>(param0: P0) -> u32
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
::windows::core::link ! ( "user32.dll""system" fn GetWindowContextHelpId ( param0 : super::super::Foundation:: HWND ) -> u32 );
GetWindowContextHelpId(param0.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn GetWindowSubclass<P0>(hwnd: P0, pfnsubclass: SUBCLASSPROC, uidsubclass: usize, pdwrefdata: ::core::option::Option<*mut usize>) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
::windows::core::link ! ( "comctl32.dll""system" fn GetWindowSubclass ( hwnd : super::super::Foundation:: HWND , pfnsubclass : SUBCLASSPROC , uidsubclass : usize , pdwrefdata : *mut usize ) -> super::super::Foundation:: BOOL );
GetWindowSubclass(hwnd.into(), pfnsubclass, uidsubclass, ::core::mem::transmute(pdwrefdata.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
#[inline]
pub unsafe fn HMONITOR_UserFree(param0: *const u32, param1: *const super::super::Graphics::Gdi::HMONITOR) {
::windows::core::link ! ( "ole32.dll""system" fn HMONITOR_UserFree ( param0 : *const u32 , param1 : *const super::super::Graphics::Gdi:: HMONITOR ) -> ( ) );
HMONITOR_UserFree(param0, param1)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
#[inline]
pub unsafe fn HMONITOR_UserFree64(param0: *const u32, param1: *const super::super::Graphics::Gdi::HMONITOR) {
::windows::core::link ! ( "ole32.dll""system" fn HMONITOR_UserFree64 ( param0 : *const u32 , param1 : *const super::super::Graphics::Gdi:: HMONITOR ) -> ( ) );
HMONITOR_UserFree64(param0, param1)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
#[inline]
pub unsafe fn HMONITOR_UserMarshal(param0: *const u32, param1: *mut u8, param2: *const super::super::Graphics::Gdi::HMONITOR) -> *mut u8 {
::windows::core::link ! ( "ole32.dll""system" fn HMONITOR_UserMarshal ( param0 : *const u32 , param1 : *mut u8 , param2 : *const super::super::Graphics::Gdi:: HMONITOR ) -> *mut u8 );
HMONITOR_UserMarshal(param0, param1, param2)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
#[inline]
pub unsafe fn HMONITOR_UserMarshal64(param0: *const u32, param1: *mut u8, param2: *const super::super::Graphics::Gdi::HMONITOR) -> *mut u8 {
::windows::core::link ! ( "ole32.dll""system" fn HMONITOR_UserMarshal64 ( param0 : *const u32 , param1 : *mut u8 , param2 : *const super::super::Graphics::Gdi:: HMONITOR ) -> *mut u8 );
HMONITOR_UserMarshal64(param0, param1, param2)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
#[inline]
pub unsafe fn HMONITOR_UserSize(param0: *const u32, param1: u32, param2: *const super::super::Graphics::Gdi::HMONITOR) -> u32 {
::windows::core::link ! ( "ole32.dll""system" fn HMONITOR_UserSize ( param0 : *const u32 , param1 : u32 , param2 : *const super::super::Graphics::Gdi:: HMONITOR ) -> u32 );
HMONITOR_UserSize(param0, param1, param2)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
#[inline]
pub unsafe fn HMONITOR_UserSize64(param0: *const u32, param1: u32, param2: *const super::super::Graphics::Gdi::HMONITOR) -> u32 {
::windows::core::link ! ( "ole32.dll""system" fn HMONITOR_UserSize64 ( param0 : *const u32 , param1 : u32 , param2 : *const super::super::Graphics::Gdi:: HMONITOR ) -> u32 );
HMONITOR_UserSize64(param0, param1, param2)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
#[inline]
pub unsafe fn HMONITOR_UserUnmarshal(param0: *const u32, param1: *const u8, param2: *mut super::super::Graphics::Gdi::HMONITOR) -> *mut u8 {
::windows::core::link ! ( "ole32.dll""system" fn HMONITOR_UserUnmarshal ( param0 : *const u32 , param1 : *const u8 , param2 : *mut super::super::Graphics::Gdi:: HMONITOR ) -> *mut u8 );
HMONITOR_UserUnmarshal(param0, param1, param2)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
#[inline]
pub unsafe fn HMONITOR_UserUnmarshal64(param0: *const u32, param1: *const u8, param2: *mut super::super::Graphics::Gdi::HMONITOR) -> *mut u8 {
::windows::core::link ! ( "ole32.dll""system" fn HMONITOR_UserUnmarshal64 ( param0 : *const u32 , param1 : *const u8 , param2 : *mut super::super::Graphics::Gdi:: HMONITOR ) -> *mut u8 );
HMONITOR_UserUnmarshal64(param0, param1, param2)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn HashData(pbdata: &[u8], pbhash: &mut [u8]) -> ::windows::core::Result<()> {
::windows::core::link ! ( "shlwapi.dll""system" fn HashData ( pbdata : *const u8 , cbdata : u32 , pbhash : *mut u8 , cbhash : u32 ) -> :: windows::core::HRESULT );
HashData(::core::mem::transmute(pbdata.as_ptr()), pbdata.len() as _, ::core::mem::transmute(pbhash.as_ptr()), pbhash.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn HlinkClone<P0, P1, T>(pihl: P0, pihlsiteforclone: P1, dwsitedata: u32) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<IHlink>>,
P1: ::std::convert::Into<::windows::core::InParam<IHlinkSite>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkClone ( pihl : * mut::core::ffi::c_void , riid : *const :: windows::core::GUID , pihlsiteforclone : * mut::core::ffi::c_void , dwsitedata : u32 , ppvobj : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
HlinkClone(pihl.into().abi(), &<T as ::windows::core::Interface>::IID, pihlsiteforclone.into().abi(), dwsitedata, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn HlinkCreateBrowseContext<P0, T>(piunkouter: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkCreateBrowseContext ( piunkouter : * mut::core::ffi::c_void , riid : *const :: windows::core::GUID , ppvobj : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
HlinkCreateBrowseContext(piunkouter.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn HlinkCreateExtensionServices<P0, P1, P2, P3, P4, T>(pwzadditionalheaders: P0, phwnd: P1, pszusername: P2, pszpassword: P3, piunkouter: P4) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P4: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkCreateExtensionServices ( pwzadditionalheaders : :: windows::core::PCWSTR , phwnd : super::super::Foundation:: HWND , pszusername : :: windows::core::PCWSTR , pszpassword : :: windows::core::PCWSTR , piunkouter : * mut::core::ffi::c_void , riid : *const :: windows::core::GUID , ppvobj : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
HlinkCreateExtensionServices(pwzadditionalheaders.into().abi(), phwnd.into(), pszusername.into().abi(), pszpassword.into().abi(), piunkouter.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn HlinkCreateFromData<P0, P1, P2, T>(pidataobj: P0, pihlsite: P1, dwsitedata: u32, piunkouter: P2) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
P1: ::std::convert::Into<::windows::core::InParam<IHlinkSite>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkCreateFromData ( pidataobj : * mut::core::ffi::c_void , pihlsite : * mut::core::ffi::c_void , dwsitedata : u32 , piunkouter : * mut::core::ffi::c_void , riid : *const :: windows::core::GUID , ppvobj : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
HlinkCreateFromData(pidataobj.into().abi(), pihlsite.into().abi(), dwsitedata, piunkouter.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn HlinkCreateFromMoniker<P0, P1, P2, P3, P4, T>(pimktrgt: P0, pwzlocation: P1, pwzfriendlyname: P2, pihlsite: P3, dwsitedata: u32, piunkouter: P4) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IMoniker>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<IHlinkSite>>,
P4: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkCreateFromMoniker ( pimktrgt : * mut::core::ffi::c_void , pwzlocation : :: windows::core::PCWSTR , pwzfriendlyname : :: windows::core::PCWSTR , pihlsite : * mut::core::ffi::c_void , dwsitedata : u32 , piunkouter : * mut::core::ffi::c_void , riid : *const :: windows::core::GUID , ppvobj : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
HlinkCreateFromMoniker(pimktrgt.into().abi(), pwzlocation.into().abi(), pwzfriendlyname.into().abi(), pihlsite.into().abi(), dwsitedata, piunkouter.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn HlinkCreateFromString<P0, P1, P2, P3, P4, T>(pwztarget: P0, pwzlocation: P1, pwzfriendlyname: P2, pihlsite: P3, dwsitedata: u32, piunkouter: P4) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<IHlinkSite>>,
P4: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkCreateFromString ( pwztarget : :: windows::core::PCWSTR , pwzlocation : :: windows::core::PCWSTR , pwzfriendlyname : :: windows::core::PCWSTR , pihlsite : * mut::core::ffi::c_void , dwsitedata : u32 , piunkouter : * mut::core::ffi::c_void , riid : *const :: windows::core::GUID , ppvobj : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
HlinkCreateFromString(pwztarget.into().abi(), pwzlocation.into().abi(), pwzfriendlyname.into().abi(), pihlsite.into().abi(), dwsitedata, piunkouter.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn HlinkCreateShortcut<P0, P1, P2>(grfhlshortcutf: u32, pihl: P0, pwzdir: P1, pwzfilename: P2, ppwzshortcutfile: *mut ::windows::core::PWSTR, dwreserved: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IHlink>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkCreateShortcut ( grfhlshortcutf : u32 , pihl : * mut::core::ffi::c_void , pwzdir : :: windows::core::PCWSTR , pwzfilename : :: windows::core::PCWSTR , ppwzshortcutfile : *mut :: windows::core::PWSTR , dwreserved : u32 ) -> :: windows::core::HRESULT );
HlinkCreateShortcut(grfhlshortcutf, pihl.into().abi(), pwzdir.into().abi(), pwzfilename.into().abi(), ppwzshortcutfile, dwreserved).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn HlinkCreateShortcutFromMoniker<P0, P1, P2, P3>(grfhlshortcutf: u32, pimktarget: P0, pwzlocation: P1, pwzdir: P2, pwzfilename: P3, ppwzshortcutfile: *mut ::windows::core::PWSTR, dwreserved: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IMoniker>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkCreateShortcutFromMoniker ( grfhlshortcutf : u32 , pimktarget : * mut::core::ffi::c_void , pwzlocation : :: windows::core::PCWSTR , pwzdir : :: windows::core::PCWSTR , pwzfilename : :: windows::core::PCWSTR , ppwzshortcutfile : *mut :: windows::core::PWSTR , dwreserved : u32 ) -> :: windows::core::HRESULT );
HlinkCreateShortcutFromMoniker(grfhlshortcutf, pimktarget.into().abi(), pwzlocation.into().abi(), pwzdir.into().abi(), pwzfilename.into().abi(), ppwzshortcutfile, dwreserved).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn HlinkCreateShortcutFromString<P0, P1, P2, P3>(grfhlshortcutf: u32, pwztarget: P0, pwzlocation: P1, pwzdir: P2, pwzfilename: P3, ppwzshortcutfile: *mut ::windows::core::PWSTR, dwreserved: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkCreateShortcutFromString ( grfhlshortcutf : u32 , pwztarget : :: windows::core::PCWSTR , pwzlocation : :: windows::core::PCWSTR , pwzdir : :: windows::core::PCWSTR , pwzfilename : :: windows::core::PCWSTR , ppwzshortcutfile : *mut :: windows::core::PWSTR , dwreserved : u32 ) -> :: windows::core::HRESULT );
HlinkCreateShortcutFromString(grfhlshortcutf, pwztarget.into().abi(), pwzlocation.into().abi(), pwzdir.into().abi(), pwzfilename.into().abi(), ppwzshortcutfile, dwreserved).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn HlinkGetSpecialReference(ureference: u32) -> ::windows::core::Result<::windows::core::PWSTR> {
::windows::core::link ! ( "hlink.dll""system" fn HlinkGetSpecialReference ( ureference : u32 , ppwzreference : *mut :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
HlinkGetSpecialReference(ureference, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn HlinkGetValueFromParams<P0, P1>(pwzparams: P0, pwzname: P1) -> ::windows::core::Result<::windows::core::PWSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkGetValueFromParams ( pwzparams : :: windows::core::PCWSTR , pwzname : :: windows::core::PCWSTR , ppwzvalue : *mut :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
HlinkGetValueFromParams(pwzparams.into().abi(), pwzname.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn HlinkIsShortcut<P0>(pwzfilename: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkIsShortcut ( pwzfilename : :: windows::core::PCWSTR ) -> :: windows::core::HRESULT );
HlinkIsShortcut(pwzfilename.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn HlinkNavigate<P0, P1, P2, P3, P4>(pihl: P0, pihlframe: P1, grfhlnf: u32, pbc: P2, pibsc: P3, pihlbc: P4) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IHlink>>,
P1: ::std::convert::Into<::windows::core::InParam<IHlinkFrame>>,
P2: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
P3: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindStatusCallback>>,
P4: ::std::convert::Into<::windows::core::InParam<IHlinkBrowseContext>>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkNavigate ( pihl : * mut::core::ffi::c_void , pihlframe : * mut::core::ffi::c_void , grfhlnf : u32 , pbc : * mut::core::ffi::c_void , pibsc : * mut::core::ffi::c_void , pihlbc : * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
HlinkNavigate(pihl.into().abi(), pihlframe.into().abi(), grfhlnf, pbc.into().abi(), pibsc.into().abi(), pihlbc.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn HlinkNavigateToStringReference<P0, P1, P2, P3, P4, P5, P6>(pwztarget: P0, pwzlocation: P1, pihlsite: P2, dwsitedata: u32, pihlframe: P3, grfhlnf: u32, pibc: P4, pibsc: P5, pihlbc: P6) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<IHlinkSite>>,
P3: ::std::convert::Into<::windows::core::InParam<IHlinkFrame>>,
P4: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
P5: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindStatusCallback>>,
P6: ::std::convert::Into<::windows::core::InParam<IHlinkBrowseContext>>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkNavigateToStringReference ( pwztarget : :: windows::core::PCWSTR , pwzlocation : :: windows::core::PCWSTR , pihlsite : * mut::core::ffi::c_void , dwsitedata : u32 , pihlframe : * mut::core::ffi::c_void , grfhlnf : u32 , pibc : * mut::core::ffi::c_void , pibsc : * mut::core::ffi::c_void , pihlbc : * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
HlinkNavigateToStringReference(pwztarget.into().abi(), pwzlocation.into().abi(), pihlsite.into().abi(), dwsitedata, pihlframe.into().abi(), grfhlnf, pibc.into().abi(), pibsc.into().abi(), pihlbc.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn HlinkOnNavigate<P0, P1, P2, P3, P4>(pihlframe: P0, pihlbc: P1, grfhlnf: u32, pimktarget: P2, pwzlocation: P3, pwzfriendlyname: P4, puhlid: *mut u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IHlinkFrame>>,
P1: ::std::convert::Into<::windows::core::InParam<IHlinkBrowseContext>>,
P2: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IMoniker>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P4: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkOnNavigate ( pihlframe : * mut::core::ffi::c_void , pihlbc : * mut::core::ffi::c_void , grfhlnf : u32 , pimktarget : * mut::core::ffi::c_void , pwzlocation : :: windows::core::PCWSTR , pwzfriendlyname : :: windows::core::PCWSTR , puhlid : *mut u32 ) -> :: windows::core::HRESULT );
HlinkOnNavigate(pihlframe.into().abi(), pihlbc.into().abi(), grfhlnf, pimktarget.into().abi(), pwzlocation.into().abi(), pwzfriendlyname.into().abi(), puhlid).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn HlinkOnRenameDocument<P0, P1, P2>(dwreserved: u32, pihlbc: P0, pimkold: P1, pimknew: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IHlinkBrowseContext>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IMoniker>>,
P2: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IMoniker>>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkOnRenameDocument ( dwreserved : u32 , pihlbc : * mut::core::ffi::c_void , pimkold : * mut::core::ffi::c_void , pimknew : * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
HlinkOnRenameDocument(dwreserved, pihlbc.into().abi(), pimkold.into().abi(), pimknew.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
#[inline]
pub unsafe fn HlinkParseDisplayName<P0, P1, P2>(pibc: P0, pwzdisplayname: P1, fnoforceabs: P2, pccheaten: *mut u32, ppimk: *mut ::core::option::Option<super::super::System::Com::IMoniker>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkParseDisplayName ( pibc : * mut::core::ffi::c_void , pwzdisplayname : :: windows::core::PCWSTR , fnoforceabs : super::super::Foundation:: BOOL , pccheaten : *mut u32 , ppimk : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
HlinkParseDisplayName(pibc.into().abi(), pwzdisplayname.into().abi(), fnoforceabs.into(), pccheaten, ::core::mem::transmute(ppimk)).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn HlinkPreprocessMoniker<P0, P1>(pibc: P0, pimkin: P1) -> ::windows::core::Result<super::super::System::Com::IMoniker>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IMoniker>>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkPreprocessMoniker ( pibc : * mut::core::ffi::c_void , pimkin : * mut::core::ffi::c_void , ppimkout : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
HlinkPreprocessMoniker(pibc.into().abi(), pimkin.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn HlinkQueryCreateFromData<P0>(pidataobj: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkQueryCreateFromData ( pidataobj : * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
HlinkQueryCreateFromData(pidataobj.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn HlinkResolveMonikerForData<P0, P1, P2, P3>(pimkreference: P0, reserved: u32, pibc: P1, cfmtetc: u32, rgfmtetc: *mut super::super::System::Com::FORMATETC, pibsc: P2, pimkbase: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IMoniker>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
P2: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindStatusCallback>>,
P3: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IMoniker>>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkResolveMonikerForData ( pimkreference : * mut::core::ffi::c_void , reserved : u32 , pibc : * mut::core::ffi::c_void , cfmtetc : u32 , rgfmtetc : *mut super::super::System::Com:: FORMATETC , pibsc : * mut::core::ffi::c_void , pimkbase : * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
HlinkResolveMonikerForData(pimkreference.into().abi(), reserved, pibc.into().abi(), cfmtetc, rgfmtetc, pibsc.into().abi(), pimkbase.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn HlinkResolveShortcut<P0, P1, P2>(pwzshortcutfilename: P0, pihlsite: P1, dwsitedata: u32, piunkouter: P2, riid: *const ::windows::core::GUID, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<IHlinkSite>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkResolveShortcut ( pwzshortcutfilename : :: windows::core::PCWSTR , pihlsite : * mut::core::ffi::c_void , dwsitedata : u32 , piunkouter : * mut::core::ffi::c_void , riid : *const :: windows::core::GUID , ppvobj : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
HlinkResolveShortcut(pwzshortcutfilename.into().abi(), pihlsite.into().abi(), dwsitedata, piunkouter.into().abi(), riid, ppvobj).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn HlinkResolveShortcutToMoniker<P0>(pwzshortcutfilename: P0, ppimktarget: *mut ::core::option::Option<super::super::System::Com::IMoniker>, ppwzlocation: *mut ::windows::core::PWSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkResolveShortcutToMoniker ( pwzshortcutfilename : :: windows::core::PCWSTR , ppimktarget : *mut * mut::core::ffi::c_void , ppwzlocation : *mut :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
HlinkResolveShortcutToMoniker(pwzshortcutfilename.into().abi(), ::core::mem::transmute(ppimktarget), ppwzlocation).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn HlinkResolveShortcutToString<P0>(pwzshortcutfilename: P0, ppwztarget: *mut ::windows::core::PWSTR, ppwzlocation: *mut ::windows::core::PWSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkResolveShortcutToString ( pwzshortcutfilename : :: windows::core::PCWSTR , ppwztarget : *mut :: windows::core::PWSTR , ppwzlocation : *mut :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
HlinkResolveShortcutToString(pwzshortcutfilename.into().abi(), ppwztarget, ppwzlocation).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn HlinkResolveStringForData<P0, P1, P2, P3>(pwzreference: P0, reserved: u32, pibc: P1, cfmtetc: u32, rgfmtetc: *mut super::super::System::Com::FORMATETC, pibsc: P2, pimkbase: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
P2: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindStatusCallback>>,
P3: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IMoniker>>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkResolveStringForData ( pwzreference : :: windows::core::PCWSTR , reserved : u32 , pibc : * mut::core::ffi::c_void , cfmtetc : u32 , rgfmtetc : *mut super::super::System::Com:: FORMATETC , pibsc : * mut::core::ffi::c_void , pimkbase : * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
HlinkResolveStringForData(pwzreference.into().abi(), reserved, pibc.into().abi(), cfmtetc, rgfmtetc, pibsc.into().abi(), pimkbase.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn HlinkSetSpecialReference<P0>(ureference: u32, pwzreference: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkSetSpecialReference ( ureference : u32 , pwzreference : :: windows::core::PCWSTR ) -> :: windows::core::HRESULT );
HlinkSetSpecialReference(ureference, pwzreference.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn HlinkTranslateURL<P0>(pwzurl: P0, grfflags: u32) -> ::windows::core::Result<::windows::core::PWSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkTranslateURL ( pwzurl : :: windows::core::PCWSTR , grfflags : u32 , ppwztranslatedurl : *mut :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
HlinkTranslateURL(pwzurl.into().abi(), grfflags, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn HlinkUpdateStackItem<P0, P1, P2, P3, P4>(pihlframe: P0, pihlbc: P1, uhlid: u32, pimktrgt: P2, pwzlocation: P3, pwzfriendlyname: P4) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IHlinkFrame>>,
P1: ::std::convert::Into<::windows::core::InParam<IHlinkBrowseContext>>,
P2: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IMoniker>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P4: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "hlink.dll""system" fn HlinkUpdateStackItem ( pihlframe : * mut::core::ffi::c_void , pihlbc : * mut::core::ffi::c_void , uhlid : u32 , pimktrgt : * mut::core::ffi::c_void , pwzlocation : :: windows::core::PCWSTR , pwzfriendlyname : :: windows::core::PCWSTR ) -> :: windows::core::HRESULT );
HlinkUpdateStackItem(pihlframe.into().abi(), pihlbc.into().abi(), uhlid, pimktrgt.into().abi(), pwzlocation.into().abi(), pwzfriendlyname.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn ILAppendID<P0>(pidl: ::core::option::Option<*const Common::ITEMIDLIST>, pmkid: *const Common::SHITEMID, fappend: P0) -> *mut Common::ITEMIDLIST
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shell32.dll""system" fn ILAppendID ( pidl : *const Common:: ITEMIDLIST , pmkid : *const Common:: SHITEMID , fappend : super::super::Foundation:: BOOL ) -> *mut Common:: ITEMIDLIST );
ILAppendID(::core::mem::transmute(pidl.unwrap_or(::std::ptr::null())), pmkid, fappend.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn ILClone(pidl: *const Common::ITEMIDLIST) -> *mut Common::ITEMIDLIST {
::windows::core::link ! ( "shell32.dll""system" fn ILClone ( pidl : *const Common:: ITEMIDLIST ) -> *mut Common:: ITEMIDLIST );
ILClone(pidl)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn ILCloneFirst(pidl: *const Common::ITEMIDLIST) -> *mut Common::ITEMIDLIST {
::windows::core::link ! ( "shell32.dll""system" fn ILCloneFirst ( pidl : *const Common:: ITEMIDLIST ) -> *mut Common:: ITEMIDLIST );
ILCloneFirst(pidl)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn ILCombine(pidl1: ::core::option::Option<*const Common::ITEMIDLIST>, pidl2: ::core::option::Option<*const Common::ITEMIDLIST>) -> *mut Common::ITEMIDLIST {
::windows::core::link ! ( "shell32.dll""system" fn ILCombine ( pidl1 : *const Common:: ITEMIDLIST , pidl2 : *const Common:: ITEMIDLIST ) -> *mut Common:: ITEMIDLIST );
ILCombine(::core::mem::transmute(pidl1.unwrap_or(::std::ptr::null())), ::core::mem::transmute(pidl2.unwrap_or(::std::ptr::null())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn ILCreateFromPathA<P0>(pszpath: P0) -> *mut Common::ITEMIDLIST
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn ILCreateFromPathA ( pszpath : :: windows::core::PCSTR ) -> *mut Common:: ITEMIDLIST );
ILCreateFromPathA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn ILCreateFromPathW<P0>(pszpath: P0) -> *mut Common::ITEMIDLIST
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn ILCreateFromPathW ( pszpath : :: windows::core::PCWSTR ) -> *mut Common:: ITEMIDLIST );
ILCreateFromPathW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn ILFindChild(pidlparent: *const Common::ITEMIDLIST, pidlchild: *const Common::ITEMIDLIST) -> *mut Common::ITEMIDLIST {
::windows::core::link ! ( "shell32.dll""system" fn ILFindChild ( pidlparent : *const Common:: ITEMIDLIST , pidlchild : *const Common:: ITEMIDLIST ) -> *mut Common:: ITEMIDLIST );
ILFindChild(pidlparent, pidlchild)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn ILFindLastID(pidl: *const Common::ITEMIDLIST) -> *mut Common::ITEMIDLIST {
::windows::core::link ! ( "shell32.dll""system" fn ILFindLastID ( pidl : *const Common:: ITEMIDLIST ) -> *mut Common:: ITEMIDLIST );
ILFindLastID(pidl)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn ILFree(pidl: ::core::option::Option<*const Common::ITEMIDLIST>) {
::windows::core::link ! ( "shell32.dll""system" fn ILFree ( pidl : *const Common:: ITEMIDLIST ) -> ( ) );
ILFree(::core::mem::transmute(pidl.unwrap_or(::std::ptr::null())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn ILGetNext(pidl: ::core::option::Option<*const Common::ITEMIDLIST>) -> *mut Common::ITEMIDLIST {
::windows::core::link ! ( "shell32.dll""system" fn ILGetNext ( pidl : *const Common:: ITEMIDLIST ) -> *mut Common:: ITEMIDLIST );
ILGetNext(::core::mem::transmute(pidl.unwrap_or(::std::ptr::null())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn ILGetSize(pidl: ::core::option::Option<*const Common::ITEMIDLIST>) -> u32 {
::windows::core::link ! ( "shell32.dll""system" fn ILGetSize ( pidl : *const Common:: ITEMIDLIST ) -> u32 );
ILGetSize(::core::mem::transmute(pidl.unwrap_or(::std::ptr::null())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn ILIsEqual(pidl1: *const Common::ITEMIDLIST, pidl2: *const Common::ITEMIDLIST) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn ILIsEqual ( pidl1 : *const Common:: ITEMIDLIST , pidl2 : *const Common:: ITEMIDLIST ) -> super::super::Foundation:: BOOL );
ILIsEqual(pidl1, pidl2)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn ILIsParent<P0>(pidl1: *const Common::ITEMIDLIST, pidl2: *const Common::ITEMIDLIST, fimmediate: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shell32.dll""system" fn ILIsParent ( pidl1 : *const Common:: ITEMIDLIST , pidl2 : *const Common:: ITEMIDLIST , fimmediate : super::super::Foundation:: BOOL ) -> super::super::Foundation:: BOOL );
ILIsParent(pidl1, pidl2, fimmediate.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn ILLoadFromStreamEx<P0>(pstm: P0) -> ::windows::core::Result<*mut Common::ITEMIDLIST>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
::windows::core::link ! ( "shell32.dll""system" fn ILLoadFromStreamEx ( pstm : * mut::core::ffi::c_void , pidl : *mut *mut Common:: ITEMIDLIST ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
ILLoadFromStreamEx(pstm.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn ILRemoveLastID(pidl: ::core::option::Option<*mut Common::ITEMIDLIST>) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn ILRemoveLastID ( pidl : *mut Common:: ITEMIDLIST ) -> super::super::Foundation:: BOOL );
ILRemoveLastID(::core::mem::transmute(pidl.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn ILSaveToStream<P0>(pstm: P0, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
::windows::core::link ! ( "shell32.dll""system" fn ILSaveToStream ( pstm : * mut::core::ffi::c_void , pidl : *const Common:: ITEMIDLIST ) -> :: windows::core::HRESULT );
ILSaveToStream(pstm.into().abi(), pidl).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn IStream_Copy<P0, P1>(pstmfrom: P0, pstmto: P1, cb: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn IStream_Copy ( pstmfrom : * mut::core::ffi::c_void , pstmto : * mut::core::ffi::c_void , cb : u32 ) -> :: windows::core::HRESULT );
IStream_Copy(pstmfrom.into().abi(), pstmto.into().abi(), cb).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn IStream_Read<P0>(pstm: P0, pv: *mut ::core::ffi::c_void, cb: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn IStream_Read ( pstm : * mut::core::ffi::c_void , pv : *mut ::core::ffi::c_void , cb : u32 ) -> :: windows::core::HRESULT );
IStream_Read(pstm.into().abi(), pv, cb).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn IStream_ReadPidl<P0>(pstm: P0) -> ::windows::core::Result<*mut Common::ITEMIDLIST>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn IStream_ReadPidl ( pstm : * mut::core::ffi::c_void , ppidlout : *mut *mut Common:: ITEMIDLIST ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
IStream_ReadPidl(pstm.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn IStream_ReadStr<P0>(pstm: P0) -> ::windows::core::Result<::windows::core::PWSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn IStream_ReadStr ( pstm : * mut::core::ffi::c_void , ppsz : *mut :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
IStream_ReadStr(pstm.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn IStream_Reset<P0>(pstm: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn IStream_Reset ( pstm : * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
IStream_Reset(pstm.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn IStream_Size<P0>(pstm: P0) -> ::windows::core::Result<u64>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn IStream_Size ( pstm : * mut::core::ffi::c_void , pui : *mut u64 ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
IStream_Size(pstm.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn IStream_Write<P0>(pstm: P0, pv: *const ::core::ffi::c_void, cb: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn IStream_Write ( pstm : * mut::core::ffi::c_void , pv : *const ::core::ffi::c_void , cb : u32 ) -> :: windows::core::HRESULT );
IStream_Write(pstm.into().abi(), pv, cb).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn IStream_WritePidl<P0>(pstm: P0, pidlwrite: *const Common::ITEMIDLIST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn IStream_WritePidl ( pstm : * mut::core::ffi::c_void , pidlwrite : *const Common:: ITEMIDLIST ) -> :: windows::core::HRESULT );
IStream_WritePidl(pstm.into().abi(), pidlwrite).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn IStream_WriteStr<P0, P1>(pstm: P0, psz: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn IStream_WriteStr ( pstm : * mut::core::ffi::c_void , psz : :: windows::core::PCWSTR ) -> :: windows::core::HRESULT );
IStream_WriteStr(pstm.into().abi(), psz.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn IUnknown_AtomicRelease(ppunk: ::core::option::Option<*mut *mut ::core::ffi::c_void>) {
::windows::core::link ! ( "shlwapi.dll""system" fn IUnknown_AtomicRelease ( ppunk : *mut *mut ::core::ffi::c_void ) -> ( ) );
IUnknown_AtomicRelease(::core::mem::transmute(ppunk.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn IUnknown_GetSite<P0, T>(punk: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shlwapi.dll""system" fn IUnknown_GetSite ( punk : * mut::core::ffi::c_void , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
IUnknown_GetSite(punk.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn IUnknown_GetWindow<P0>(punk: P0) -> ::windows::core::Result<super::super::Foundation::HWND>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn IUnknown_GetWindow ( punk : * mut::core::ffi::c_void , phwnd : *mut super::super::Foundation:: HWND ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
IUnknown_GetWindow(punk.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn IUnknown_QueryService<P0, T>(punk: P0, guidservice: *const ::windows::core::GUID) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shlwapi.dll""system" fn IUnknown_QueryService ( punk : * mut::core::ffi::c_void , guidservice : *const :: windows::core::GUID , riid : *const :: windows::core::GUID , ppvout : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
IUnknown_QueryService(punk.into().abi(), guidservice, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn IUnknown_Set<P0>(ppunk: *mut ::core::option::Option<::windows::core::IUnknown>, punk: P0)
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn IUnknown_Set ( ppunk : *mut * mut::core::ffi::c_void , punk : * mut::core::ffi::c_void ) -> ( ) );
IUnknown_Set(::core::mem::transmute(ppunk), punk.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn IUnknown_SetSite<P0, P1>(punk: P0, punksite: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn IUnknown_SetSite ( punk : * mut::core::ffi::c_void , punksite : * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
IUnknown_SetSite(punk.into().abi(), punksite.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn ImportPrivacySettings<P0>(pszfilename: P0, pfparseprivacypreferences: *mut super::super::Foundation::BOOL, pfparsepersiterules: *mut super::super::Foundation::BOOL) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shdocvw.dll""system" fn ImportPrivacySettings ( pszfilename : :: windows::core::PCWSTR , pfparseprivacypreferences : *mut super::super::Foundation:: BOOL , pfparsepersiterules : *mut super::super::Foundation:: BOOL ) -> super::super::Foundation:: BOOL );
ImportPrivacySettings(pszfilename.into().abi(), pfparseprivacypreferences, pfparsepersiterules)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn InitNetworkAddressControl() -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn InitNetworkAddressControl ( ) -> super::super::Foundation:: BOOL );
InitNetworkAddressControl()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn IntlStrEqWorkerA<P0, P1, P2>(fcasesens: P0, lpstring1: P1, lpstring2: P2, nchar: i32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn IntlStrEqWorkerA ( fcasesens : super::super::Foundation:: BOOL , lpstring1 : :: windows::core::PCSTR , lpstring2 : :: windows::core::PCSTR , nchar : i32 ) -> super::super::Foundation:: BOOL );
IntlStrEqWorkerA(fcasesens.into(), lpstring1.into().abi(), lpstring2.into().abi(), nchar)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn IntlStrEqWorkerW<P0, P1, P2>(fcasesens: P0, lpstring1: P1, lpstring2: P2, nchar: i32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn IntlStrEqWorkerW ( fcasesens : super::super::Foundation:: BOOL , lpstring1 : :: windows::core::PCWSTR , lpstring2 : :: windows::core::PCWSTR , nchar : i32 ) -> super::super::Foundation:: BOOL );
IntlStrEqWorkerW(fcasesens.into(), lpstring1.into().abi(), lpstring2.into().abi(), nchar)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn IsCharSpaceA<P0>(wch: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::CHAR>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn IsCharSpaceA ( wch : super::super::Foundation:: CHAR ) -> super::super::Foundation:: BOOL );
IsCharSpaceA(wch.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn IsCharSpaceW(wch: u16) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn IsCharSpaceW ( wch : u16 ) -> super::super::Foundation:: BOOL );
IsCharSpaceW(wch)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn IsInternetESCEnabled() -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn IsInternetESCEnabled ( ) -> super::super::Foundation:: BOOL );
IsInternetESCEnabled()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn IsLFNDriveA<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn IsLFNDriveA ( pszpath : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
IsLFNDriveA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn IsLFNDriveW<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn IsLFNDriveW ( pszpath : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
IsLFNDriveW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn IsNetDrive(idrive: i32) -> i32 {
::windows::core::link ! ( "shell32.dll""system" fn IsNetDrive ( idrive : i32 ) -> i32 );
IsNetDrive(idrive)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn IsOS(dwos: OS) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn IsOS ( dwos : OS ) -> super::super::Foundation:: BOOL );
IsOS(dwos)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn IsUserAnAdmin() -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn IsUserAnAdmin ( ) -> super::super::Foundation:: BOOL );
IsUserAnAdmin()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn LoadUserProfileA<P0>(htoken: P0, lpprofileinfo: *mut PROFILEINFOA) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
::windows::core::link ! ( "userenv.dll""system" fn LoadUserProfileA ( htoken : super::super::Foundation:: HANDLE , lpprofileinfo : *mut PROFILEINFOA ) -> super::super::Foundation:: BOOL );
LoadUserProfileA(htoken.into(), lpprofileinfo)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn LoadUserProfileW<P0>(htoken: P0, lpprofileinfo: *mut PROFILEINFOW) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
::windows::core::link ! ( "userenv.dll""system" fn LoadUserProfileW ( htoken : super::super::Foundation:: HANDLE , lpprofileinfo : *mut PROFILEINFOW ) -> super::super::Foundation:: BOOL );
LoadUserProfileW(htoken.into(), lpprofileinfo)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
#[inline]
pub unsafe fn OleSaveToStreamEx<P0, P1, P2>(piunk: P0, pistm: P1, fcleardirty: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
P2: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "hlink.dll""system" fn OleSaveToStreamEx ( piunk : * mut::core::ffi::c_void , pistm : * mut::core::ffi::c_void , fcleardirty : super::super::Foundation:: BOOL ) -> :: windows::core::HRESULT );
OleSaveToStreamEx(piunk.into().abi(), pistm.into().abi(), fcleardirty.into()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn OpenRegStream<P0, P1, P2>(hkey: P0, pszsubkey: P1, pszvalue: P2, grfmode: u32) -> ::core::option::Option<super::super::System::Com::IStream>
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn OpenRegStream ( hkey : super::super::System::Registry:: HKEY , pszsubkey : :: windows::core::PCWSTR , pszvalue : :: windows::core::PCWSTR , grfmode : u32 ) -> ::core::option::Option < super::super::System::Com:: IStream > );
OpenRegStream(hkey.into(), pszsubkey.into().abi(), pszvalue.into().abi(), grfmode)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn ParseURLA<P0>(pcszurl: P0, ppu: *mut PARSEDURLA) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn ParseURLA ( pcszurl : :: windows::core::PCSTR , ppu : *mut PARSEDURLA ) -> :: windows::core::HRESULT );
ParseURLA(pcszurl.into().abi(), ppu).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn ParseURLW<P0>(pcszurl: P0, ppu: *mut PARSEDURLW) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn ParseURLW ( pcszurl : :: windows::core::PCWSTR , ppu : *mut PARSEDURLW ) -> :: windows::core::HRESULT );
ParseURLW(pcszurl.into().abi(), ppu).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathAddBackslashA(pszpath: &mut [u8; 260]) -> ::windows::core::PSTR {
::windows::core::link ! ( "shlwapi.dll""system" fn PathAddBackslashA ( pszpath : :: windows::core::PSTR ) -> :: windows::core::PSTR );
PathAddBackslashA(::core::mem::transmute(pszpath.as_ptr()))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathAddBackslashW(pszpath: &mut [u16; 260]) -> ::windows::core::PWSTR {
::windows::core::link ! ( "shlwapi.dll""system" fn PathAddBackslashW ( pszpath : :: windows::core::PWSTR ) -> :: windows::core::PWSTR );
PathAddBackslashW(::core::mem::transmute(pszpath.as_ptr()))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathAddExtensionA<P0>(pszpath: &mut [u8; 260], pszext: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathAddExtensionA ( pszpath : :: windows::core::PSTR , pszext : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathAddExtensionA(::core::mem::transmute(pszpath.as_ptr()), pszext.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathAddExtensionW<P0>(pszpath: &mut [u16; 260], pszext: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathAddExtensionW ( pszpath : :: windows::core::PWSTR , pszext : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathAddExtensionW(::core::mem::transmute(pszpath.as_ptr()), pszext.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathAllocCanonicalize<P0>(pszpathin: P0, dwflags: PATHCCH_OPTIONS) -> ::windows::core::Result<::windows::core::PWSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathAllocCanonicalize ( pszpathin : :: windows::core::PCWSTR , dwflags : PATHCCH_OPTIONS , ppszpathout : *mut :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
PathAllocCanonicalize(pszpathin.into().abi(), dwflags, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathAllocCombine<P0, P1>(pszpathin: P0, pszmore: P1, dwflags: PATHCCH_OPTIONS) -> ::windows::core::Result<::windows::core::PWSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathAllocCombine ( pszpathin : :: windows::core::PCWSTR , pszmore : :: windows::core::PCWSTR , dwflags : PATHCCH_OPTIONS , ppszpathout : *mut :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
PathAllocCombine(pszpathin.into().abi(), pszmore.into().abi(), dwflags, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathAppendA<P0>(pszpath: &mut [u8; 260], pszmore: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathAppendA ( pszpath : :: windows::core::PSTR , pszmore : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathAppendA(::core::mem::transmute(pszpath.as_ptr()), pszmore.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathAppendW<P0>(pszpath: &mut [u16; 260], pszmore: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathAppendW ( pszpath : :: windows::core::PWSTR , pszmore : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathAppendW(::core::mem::transmute(pszpath.as_ptr()), pszmore.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathBuildRootA(pszroot: &mut [u8; 4], idrive: i32) -> ::windows::core::PSTR {
::windows::core::link ! ( "shlwapi.dll""system" fn PathBuildRootA ( pszroot : :: windows::core::PSTR , idrive : i32 ) -> :: windows::core::PSTR );
PathBuildRootA(::core::mem::transmute(pszroot.as_ptr()), idrive)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathBuildRootW(pszroot: &mut [u16; 4], idrive: i32) -> ::windows::core::PWSTR {
::windows::core::link ! ( "shlwapi.dll""system" fn PathBuildRootW ( pszroot : :: windows::core::PWSTR , idrive : i32 ) -> :: windows::core::PWSTR );
PathBuildRootW(::core::mem::transmute(pszroot.as_ptr()), idrive)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathCanonicalizeA<P0>(pszbuf: &mut [u8; 260], pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathCanonicalizeA ( pszbuf : :: windows::core::PSTR , pszpath : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathCanonicalizeA(::core::mem::transmute(pszbuf.as_ptr()), pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathCanonicalizeW<P0>(pszbuf: &mut [u16; 260], pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathCanonicalizeW ( pszbuf : :: windows::core::PWSTR , pszpath : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathCanonicalizeW(::core::mem::transmute(pszbuf.as_ptr()), pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCchAddBackslash(pszpath: &mut [u16]) -> ::windows::core::Result<()> {
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathCchAddBackslash ( pszpath : :: windows::core::PWSTR , cchpath : usize ) -> :: windows::core::HRESULT );
PathCchAddBackslash(::core::mem::transmute(pszpath.as_ptr()), pszpath.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCchAddBackslashEx(pszpath: &mut [u16], ppszend: ::core::option::Option<*mut ::windows::core::PWSTR>, pcchremaining: ::core::option::Option<*mut usize>) -> ::windows::core::Result<()> {
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathCchAddBackslashEx ( pszpath : :: windows::core::PWSTR , cchpath : usize , ppszend : *mut :: windows::core::PWSTR , pcchremaining : *mut usize ) -> :: windows::core::HRESULT );
PathCchAddBackslashEx(::core::mem::transmute(pszpath.as_ptr()), pszpath.len() as _, ::core::mem::transmute(ppszend.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcchremaining.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCchAddExtension<P0>(pszpath: &mut [u16], pszext: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathCchAddExtension ( pszpath : :: windows::core::PWSTR , cchpath : usize , pszext : :: windows::core::PCWSTR ) -> :: windows::core::HRESULT );
PathCchAddExtension(::core::mem::transmute(pszpath.as_ptr()), pszpath.len() as _, pszext.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCchAppend<P0>(pszpath: &mut [u16], pszmore: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathCchAppend ( pszpath : :: windows::core::PWSTR , cchpath : usize , pszmore : :: windows::core::PCWSTR ) -> :: windows::core::HRESULT );
PathCchAppend(::core::mem::transmute(pszpath.as_ptr()), pszpath.len() as _, pszmore.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCchAppendEx<P0>(pszpath: &mut [u16], pszmore: P0, dwflags: PATHCCH_OPTIONS) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathCchAppendEx ( pszpath : :: windows::core::PWSTR , cchpath : usize , pszmore : :: windows::core::PCWSTR , dwflags : PATHCCH_OPTIONS ) -> :: windows::core::HRESULT );
PathCchAppendEx(::core::mem::transmute(pszpath.as_ptr()), pszpath.len() as _, pszmore.into().abi(), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCchCanonicalize<P0>(pszpathout: &mut [u16], pszpathin: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathCchCanonicalize ( pszpathout : :: windows::core::PWSTR , cchpathout : usize , pszpathin : :: windows::core::PCWSTR ) -> :: windows::core::HRESULT );
PathCchCanonicalize(::core::mem::transmute(pszpathout.as_ptr()), pszpathout.len() as _, pszpathin.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCchCanonicalizeEx<P0>(pszpathout: &mut [u16], pszpathin: P0, dwflags: PATHCCH_OPTIONS) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathCchCanonicalizeEx ( pszpathout : :: windows::core::PWSTR , cchpathout : usize , pszpathin : :: windows::core::PCWSTR , dwflags : PATHCCH_OPTIONS ) -> :: windows::core::HRESULT );
PathCchCanonicalizeEx(::core::mem::transmute(pszpathout.as_ptr()), pszpathout.len() as _, pszpathin.into().abi(), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCchCombine<P0, P1>(pszpathout: &mut [u16], pszpathin: P0, pszmore: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathCchCombine ( pszpathout : :: windows::core::PWSTR , cchpathout : usize , pszpathin : :: windows::core::PCWSTR , pszmore : :: windows::core::PCWSTR ) -> :: windows::core::HRESULT );
PathCchCombine(::core::mem::transmute(pszpathout.as_ptr()), pszpathout.len() as _, pszpathin.into().abi(), pszmore.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCchCombineEx<P0, P1>(pszpathout: &mut [u16], pszpathin: P0, pszmore: P1, dwflags: PATHCCH_OPTIONS) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathCchCombineEx ( pszpathout : :: windows::core::PWSTR , cchpathout : usize , pszpathin : :: windows::core::PCWSTR , pszmore : :: windows::core::PCWSTR , dwflags : PATHCCH_OPTIONS ) -> :: windows::core::HRESULT );
PathCchCombineEx(::core::mem::transmute(pszpathout.as_ptr()), pszpathout.len() as _, pszpathin.into().abi(), pszmore.into().abi(), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCchFindExtension<P0>(pszpath: P0, cchpath: usize) -> ::windows::core::Result<::windows::core::PWSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathCchFindExtension ( pszpath : :: windows::core::PCWSTR , cchpath : usize , ppszext : *mut :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
PathCchFindExtension(pszpath.into().abi(), cchpath, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathCchIsRoot<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathCchIsRoot ( pszpath : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathCchIsRoot(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCchRemoveBackslash(pszpath: &mut [u16]) -> ::windows::core::Result<()> {
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathCchRemoveBackslash ( pszpath : :: windows::core::PWSTR , cchpath : usize ) -> :: windows::core::HRESULT );
PathCchRemoveBackslash(::core::mem::transmute(pszpath.as_ptr()), pszpath.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCchRemoveBackslashEx(pszpath: ::windows::core::PWSTR, cchpath: usize, ppszend: ::core::option::Option<*mut ::windows::core::PWSTR>, pcchremaining: ::core::option::Option<*mut usize>) -> ::windows::core::Result<()> {
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathCchRemoveBackslashEx ( pszpath : :: windows::core::PWSTR , cchpath : usize , ppszend : *mut :: windows::core::PWSTR , pcchremaining : *mut usize ) -> :: windows::core::HRESULT );
PathCchRemoveBackslashEx(::core::mem::transmute(pszpath), cchpath, ::core::mem::transmute(ppszend.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcchremaining.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCchRemoveExtension(pszpath: ::windows::core::PWSTR, cchpath: usize) -> ::windows::core::Result<()> {
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathCchRemoveExtension ( pszpath : :: windows::core::PWSTR , cchpath : usize ) -> :: windows::core::HRESULT );
PathCchRemoveExtension(::core::mem::transmute(pszpath), cchpath).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCchRemoveFileSpec(pszpath: ::windows::core::PWSTR, cchpath: usize) -> ::windows::core::Result<()> {
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathCchRemoveFileSpec ( pszpath : :: windows::core::PWSTR , cchpath : usize ) -> :: windows::core::HRESULT );
PathCchRemoveFileSpec(::core::mem::transmute(pszpath), cchpath).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCchRenameExtension<P0>(pszpath: &mut [u16], pszext: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathCchRenameExtension ( pszpath : :: windows::core::PWSTR , cchpath : usize , pszext : :: windows::core::PCWSTR ) -> :: windows::core::HRESULT );
PathCchRenameExtension(::core::mem::transmute(pszpath.as_ptr()), pszpath.len() as _, pszext.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCchSkipRoot<P0>(pszpath: P0) -> ::windows::core::Result<::windows::core::PWSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathCchSkipRoot ( pszpath : :: windows::core::PCWSTR , ppszrootend : *mut :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
PathCchSkipRoot(pszpath.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCchStripPrefix(pszpath: &mut [u16]) -> ::windows::core::Result<()> {
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathCchStripPrefix ( pszpath : :: windows::core::PWSTR , cchpath : usize ) -> :: windows::core::HRESULT );
PathCchStripPrefix(::core::mem::transmute(pszpath.as_ptr()), pszpath.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCchStripToRoot(pszpath: ::windows::core::PWSTR, cchpath: usize) -> ::windows::core::Result<()> {
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathCchStripToRoot ( pszpath : :: windows::core::PWSTR , cchpath : usize ) -> :: windows::core::HRESULT );
PathCchStripToRoot(::core::mem::transmute(pszpath), cchpath).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCleanupSpec<P0>(pszdir: P0, pszspec: ::windows::core::PWSTR) -> PCS_RET
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn PathCleanupSpec ( pszdir : :: windows::core::PCWSTR , pszspec : :: windows::core::PWSTR ) -> PCS_RET );
PathCleanupSpec(pszdir.into().abi(), ::core::mem::transmute(pszspec))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCombineA<P0, P1>(pszdest: &mut [u8; 260], pszdir: P0, pszfile: P1) -> ::windows::core::PSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathCombineA ( pszdest : :: windows::core::PSTR , pszdir : :: windows::core::PCSTR , pszfile : :: windows::core::PCSTR ) -> :: windows::core::PSTR );
PathCombineA(::core::mem::transmute(pszdest.as_ptr()), pszdir.into().abi(), pszfile.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCombineW<P0, P1>(pszdest: &mut [u16; 260], pszdir: P0, pszfile: P1) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathCombineW ( pszdest : :: windows::core::PWSTR , pszdir : :: windows::core::PCWSTR , pszfile : :: windows::core::PCWSTR ) -> :: windows::core::PWSTR );
PathCombineW(::core::mem::transmute(pszdest.as_ptr()), pszdir.into().abi(), pszfile.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCommonPrefixA<P0, P1>(pszfile1: P0, pszfile2: P1, achpath: ::core::option::Option<&mut [u8; 260]>) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathCommonPrefixA ( pszfile1 : :: windows::core::PCSTR , pszfile2 : :: windows::core::PCSTR , achpath : :: windows::core::PSTR ) -> i32 );
PathCommonPrefixA(pszfile1.into().abi(), pszfile2.into().abi(), ::core::mem::transmute(achpath.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCommonPrefixW<P0, P1>(pszfile1: P0, pszfile2: P1, achpath: ::core::option::Option<&mut [u16; 260]>) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathCommonPrefixW ( pszfile1 : :: windows::core::PCWSTR , pszfile2 : :: windows::core::PCWSTR , achpath : :: windows::core::PWSTR ) -> i32 );
PathCommonPrefixW(pszfile1.into().abi(), pszfile2.into().abi(), ::core::mem::transmute(achpath.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
#[inline]
pub unsafe fn PathCompactPathA<P0>(hdc: P0, pszpath: &mut [u8; 260], dx: u32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Graphics::Gdi::HDC>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathCompactPathA ( hdc : super::super::Graphics::Gdi:: HDC , pszpath : :: windows::core::PSTR , dx : u32 ) -> super::super::Foundation:: BOOL );
PathCompactPathA(hdc.into(), ::core::mem::transmute(pszpath.as_ptr()), dx)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathCompactPathExA<P0>(pszout: &mut [u8], pszsrc: P0, dwflags: u32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathCompactPathExA ( pszout : :: windows::core::PSTR , pszsrc : :: windows::core::PCSTR , cchmax : u32 , dwflags : u32 ) -> super::super::Foundation:: BOOL );
PathCompactPathExA(::core::mem::transmute(pszout.as_ptr()), pszsrc.into().abi(), pszout.len() as _, dwflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathCompactPathExW<P0>(pszout: &mut [u16], pszsrc: P0, dwflags: u32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathCompactPathExW ( pszout : :: windows::core::PWSTR , pszsrc : :: windows::core::PCWSTR , cchmax : u32 , dwflags : u32 ) -> super::super::Foundation:: BOOL );
PathCompactPathExW(::core::mem::transmute(pszout.as_ptr()), pszsrc.into().abi(), pszout.len() as _, dwflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
#[inline]
pub unsafe fn PathCompactPathW<P0>(hdc: P0, pszpath: &mut [u16; 260], dx: u32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Graphics::Gdi::HDC>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathCompactPathW ( hdc : super::super::Graphics::Gdi:: HDC , pszpath : :: windows::core::PWSTR , dx : u32 ) -> super::super::Foundation:: BOOL );
PathCompactPathW(hdc.into(), ::core::mem::transmute(pszpath.as_ptr()), dx)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCreateFromUrlA<P0>(pszurl: P0, pszpath: ::windows::core::PSTR, pcchpath: *mut u32, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathCreateFromUrlA ( pszurl : :: windows::core::PCSTR , pszpath : :: windows::core::PSTR , pcchpath : *mut u32 , dwflags : u32 ) -> :: windows::core::HRESULT );
PathCreateFromUrlA(pszurl.into().abi(), ::core::mem::transmute(pszpath), pcchpath, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCreateFromUrlAlloc<P0>(pszin: P0, ppszout: *mut ::windows::core::PWSTR, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathCreateFromUrlAlloc ( pszin : :: windows::core::PCWSTR , ppszout : *mut :: windows::core::PWSTR , dwflags : u32 ) -> :: windows::core::HRESULT );
PathCreateFromUrlAlloc(pszin.into().abi(), ppszout, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathCreateFromUrlW<P0>(pszurl: P0, pszpath: ::windows::core::PWSTR, pcchpath: *mut u32, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathCreateFromUrlW ( pszurl : :: windows::core::PCWSTR , pszpath : :: windows::core::PWSTR , pcchpath : *mut u32 , dwflags : u32 ) -> :: windows::core::HRESULT );
PathCreateFromUrlW(pszurl.into().abi(), ::core::mem::transmute(pszpath), pcchpath, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathFileExistsA<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathFileExistsA ( pszpath : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathFileExistsA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathFileExistsW<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathFileExistsW ( pszpath : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathFileExistsW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathFindExtensionA<P0>(pszpath: P0) -> ::windows::core::PSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathFindExtensionA ( pszpath : :: windows::core::PCSTR ) -> :: windows::core::PSTR );
PathFindExtensionA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathFindExtensionW<P0>(pszpath: P0) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathFindExtensionW ( pszpath : :: windows::core::PCWSTR ) -> :: windows::core::PWSTR );
PathFindExtensionW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathFindFileNameA<P0>(pszpath: P0) -> ::windows::core::PSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathFindFileNameA ( pszpath : :: windows::core::PCSTR ) -> :: windows::core::PSTR );
PathFindFileNameA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathFindFileNameW<P0>(pszpath: P0) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathFindFileNameW ( pszpath : :: windows::core::PCWSTR ) -> :: windows::core::PWSTR );
PathFindFileNameW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathFindNextComponentA<P0>(pszpath: P0) -> ::windows::core::PSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathFindNextComponentA ( pszpath : :: windows::core::PCSTR ) -> :: windows::core::PSTR );
PathFindNextComponentA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathFindNextComponentW<P0>(pszpath: P0) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathFindNextComponentW ( pszpath : :: windows::core::PCWSTR ) -> :: windows::core::PWSTR );
PathFindNextComponentW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathFindOnPathA(pszpath: &mut [u8; 260], ppszotherdirs: ::core::option::Option<*const *const i8>) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn PathFindOnPathA ( pszpath : :: windows::core::PSTR , ppszotherdirs : *const *const i8 ) -> super::super::Foundation:: BOOL );
PathFindOnPathA(::core::mem::transmute(pszpath.as_ptr()), ::core::mem::transmute(ppszotherdirs.unwrap_or(::std::ptr::null())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathFindOnPathW(pszpath: &mut [u16; 260], ppszotherdirs: ::core::option::Option<*const *const u16>) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn PathFindOnPathW ( pszpath : :: windows::core::PWSTR , ppszotherdirs : *const *const u16 ) -> super::super::Foundation:: BOOL );
PathFindOnPathW(::core::mem::transmute(pszpath.as_ptr()), ::core::mem::transmute(ppszotherdirs.unwrap_or(::std::ptr::null())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathFindSuffixArrayA<P0>(pszpath: P0, apszsuffix: &[::windows::core::PCSTR]) -> ::windows::core::PSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathFindSuffixArrayA ( pszpath : :: windows::core::PCSTR , apszsuffix : *const :: windows::core::PCSTR , iarraysize : i32 ) -> :: windows::core::PSTR );
PathFindSuffixArrayA(pszpath.into().abi(), ::core::mem::transmute(apszsuffix.as_ptr()), apszsuffix.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathFindSuffixArrayW<P0>(pszpath: P0, apszsuffix: &[::windows::core::PCWSTR]) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathFindSuffixArrayW ( pszpath : :: windows::core::PCWSTR , apszsuffix : *const :: windows::core::PCWSTR , iarraysize : i32 ) -> :: windows::core::PWSTR );
PathFindSuffixArrayW(pszpath.into().abi(), ::core::mem::transmute(apszsuffix.as_ptr()), apszsuffix.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathGetArgsA<P0>(pszpath: P0) -> ::windows::core::PSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathGetArgsA ( pszpath : :: windows::core::PCSTR ) -> :: windows::core::PSTR );
PathGetArgsA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathGetArgsW<P0>(pszpath: P0) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathGetArgsW ( pszpath : :: windows::core::PCWSTR ) -> :: windows::core::PWSTR );
PathGetArgsW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathGetCharTypeA(ch: u8) -> u32 {
::windows::core::link ! ( "shlwapi.dll""system" fn PathGetCharTypeA ( ch : u8 ) -> u32 );
PathGetCharTypeA(ch)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathGetCharTypeW(ch: u16) -> u32 {
::windows::core::link ! ( "shlwapi.dll""system" fn PathGetCharTypeW ( ch : u16 ) -> u32 );
PathGetCharTypeW(ch)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathGetDriveNumberA<P0>(pszpath: P0) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathGetDriveNumberA ( pszpath : :: windows::core::PCSTR ) -> i32 );
PathGetDriveNumberA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathGetDriveNumberW<P0>(pszpath: P0) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathGetDriveNumberW ( pszpath : :: windows::core::PCWSTR ) -> i32 );
PathGetDriveNumberW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathGetShortPath(pszlongpath: &mut [u16; 260]) {
::windows::core::link ! ( "shell32.dll""system" fn PathGetShortPath ( pszlongpath : :: windows::core::PWSTR ) -> ( ) );
PathGetShortPath(::core::mem::transmute(pszlongpath.as_ptr()))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsContentTypeA<P0, P1>(pszpath: P0, pszcontenttype: P1) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsContentTypeA ( pszpath : :: windows::core::PCSTR , pszcontenttype : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathIsContentTypeA(pszpath.into().abi(), pszcontenttype.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsContentTypeW<P0, P1>(pszpath: P0, pszcontenttype: P1) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsContentTypeW ( pszpath : :: windows::core::PCWSTR , pszcontenttype : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathIsContentTypeW(pszpath.into().abi(), pszcontenttype.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsDirectoryA<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsDirectoryA ( pszpath : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathIsDirectoryA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsDirectoryEmptyA<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsDirectoryEmptyA ( pszpath : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathIsDirectoryEmptyA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsDirectoryEmptyW<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsDirectoryEmptyW ( pszpath : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathIsDirectoryEmptyW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsDirectoryW<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsDirectoryW ( pszpath : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathIsDirectoryW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsExe<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn PathIsExe ( pszpath : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathIsExe(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsFileSpecA<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsFileSpecA ( pszpath : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathIsFileSpecA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsFileSpecW<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsFileSpecW ( pszpath : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathIsFileSpecW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsLFNFileSpecA<P0>(pszname: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsLFNFileSpecA ( pszname : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathIsLFNFileSpecA(pszname.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsLFNFileSpecW<P0>(pszname: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsLFNFileSpecW ( pszname : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathIsLFNFileSpecW(pszname.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsNetworkPathA<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsNetworkPathA ( pszpath : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathIsNetworkPathA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsNetworkPathW<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsNetworkPathW ( pszpath : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathIsNetworkPathW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsPrefixA<P0, P1>(pszprefix: P0, pszpath: P1) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsPrefixA ( pszprefix : :: windows::core::PCSTR , pszpath : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathIsPrefixA(pszprefix.into().abi(), pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsPrefixW<P0, P1>(pszprefix: P0, pszpath: P1) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsPrefixW ( pszprefix : :: windows::core::PCWSTR , pszpath : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathIsPrefixW(pszprefix.into().abi(), pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsRelativeA<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsRelativeA ( pszpath : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathIsRelativeA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsRelativeW<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsRelativeW ( pszpath : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathIsRelativeW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsRootA<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsRootA ( pszpath : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathIsRootA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsRootW<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsRootW ( pszpath : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathIsRootW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsSameRootA<P0, P1>(pszpath1: P0, pszpath2: P1) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsSameRootA ( pszpath1 : :: windows::core::PCSTR , pszpath2 : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathIsSameRootA(pszpath1.into().abi(), pszpath2.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsSameRootW<P0, P1>(pszpath1: P0, pszpath2: P1) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsSameRootW ( pszpath1 : :: windows::core::PCWSTR , pszpath2 : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathIsSameRootW(pszpath1.into().abi(), pszpath2.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsSlowA<P0>(pszfile: P0, dwattr: u32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn PathIsSlowA ( pszfile : :: windows::core::PCSTR , dwattr : u32 ) -> super::super::Foundation:: BOOL );
PathIsSlowA(pszfile.into().abi(), dwattr)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsSlowW<P0>(pszfile: P0, dwattr: u32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn PathIsSlowW ( pszfile : :: windows::core::PCWSTR , dwattr : u32 ) -> super::super::Foundation:: BOOL );
PathIsSlowW(pszfile.into().abi(), dwattr)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsSystemFolderA<P0>(pszpath: P0, dwattrb: u32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsSystemFolderA ( pszpath : :: windows::core::PCSTR , dwattrb : u32 ) -> super::super::Foundation:: BOOL );
PathIsSystemFolderA(pszpath.into().abi(), dwattrb)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsSystemFolderW<P0>(pszpath: P0, dwattrb: u32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsSystemFolderW ( pszpath : :: windows::core::PCWSTR , dwattrb : u32 ) -> super::super::Foundation:: BOOL );
PathIsSystemFolderW(pszpath.into().abi(), dwattrb)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsUNCA<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsUNCA ( pszpath : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathIsUNCA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsUNCEx<P0>(pszpath: P0, ppszserver: ::core::option::Option<*mut ::windows::core::PWSTR>) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "api-ms-win-core-path-l1-1-0.dll""system" fn PathIsUNCEx ( pszpath : :: windows::core::PCWSTR , ppszserver : *mut :: windows::core::PWSTR ) -> super::super::Foundation:: BOOL );
PathIsUNCEx(pszpath.into().abi(), ::core::mem::transmute(ppszserver.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsUNCServerA<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsUNCServerA ( pszpath : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathIsUNCServerA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsUNCServerShareA<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsUNCServerShareA ( pszpath : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathIsUNCServerShareA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsUNCServerShareW<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsUNCServerShareW ( pszpath : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathIsUNCServerShareW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsUNCServerW<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsUNCServerW ( pszpath : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathIsUNCServerW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsUNCW<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsUNCW ( pszpath : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathIsUNCW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsURLA<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsURLA ( pszpath : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathIsURLA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathIsURLW<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathIsURLW ( pszpath : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathIsURLW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathMakePrettyA(pszpath: ::windows::core::PSTR) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn PathMakePrettyA ( pszpath : :: windows::core::PSTR ) -> super::super::Foundation:: BOOL );
PathMakePrettyA(::core::mem::transmute(pszpath))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathMakePrettyW(pszpath: ::windows::core::PWSTR) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn PathMakePrettyW ( pszpath : :: windows::core::PWSTR ) -> super::super::Foundation:: BOOL );
PathMakePrettyW(::core::mem::transmute(pszpath))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathMakeSystemFolderA<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathMakeSystemFolderA ( pszpath : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathMakeSystemFolderA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathMakeSystemFolderW<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathMakeSystemFolderW ( pszpath : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathMakeSystemFolderW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathMakeUniqueName<P0, P1, P2>(pszuniquename: &mut [u16], psztemplate: P0, pszlongplate: P1, pszdir: P2) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn PathMakeUniqueName ( pszuniquename : :: windows::core::PWSTR , cchmax : u32 , psztemplate : :: windows::core::PCWSTR , pszlongplate : :: windows::core::PCWSTR , pszdir : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathMakeUniqueName(::core::mem::transmute(pszuniquename.as_ptr()), pszuniquename.len() as _, psztemplate.into().abi(), pszlongplate.into().abi(), pszdir.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathMatchSpecA<P0, P1>(pszfile: P0, pszspec: P1) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathMatchSpecA ( pszfile : :: windows::core::PCSTR , pszspec : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathMatchSpecA(pszfile.into().abi(), pszspec.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathMatchSpecExA<P0, P1>(pszfile: P0, pszspec: P1, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathMatchSpecExA ( pszfile : :: windows::core::PCSTR , pszspec : :: windows::core::PCSTR , dwflags : u32 ) -> :: windows::core::HRESULT );
PathMatchSpecExA(pszfile.into().abi(), pszspec.into().abi(), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathMatchSpecExW<P0, P1>(pszfile: P0, pszspec: P1, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathMatchSpecExW ( pszfile : :: windows::core::PCWSTR , pszspec : :: windows::core::PCWSTR , dwflags : u32 ) -> :: windows::core::HRESULT );
PathMatchSpecExW(pszfile.into().abi(), pszspec.into().abi(), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathMatchSpecW<P0, P1>(pszfile: P0, pszspec: P1) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathMatchSpecW ( pszfile : :: windows::core::PCWSTR , pszspec : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathMatchSpecW(pszfile.into().abi(), pszspec.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathParseIconLocationA(psziconfile: ::windows::core::PSTR) -> i32 {
::windows::core::link ! ( "shlwapi.dll""system" fn PathParseIconLocationA ( psziconfile : :: windows::core::PSTR ) -> i32 );
PathParseIconLocationA(::core::mem::transmute(psziconfile))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathParseIconLocationW(psziconfile: ::windows::core::PWSTR) -> i32 {
::windows::core::link ! ( "shlwapi.dll""system" fn PathParseIconLocationW ( psziconfile : :: windows::core::PWSTR ) -> i32 );
PathParseIconLocationW(::core::mem::transmute(psziconfile))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathQualify(psz: ::windows::core::PWSTR) {
::windows::core::link ! ( "shell32.dll""system" fn PathQualify ( psz : :: windows::core::PWSTR ) -> ( ) );
PathQualify(::core::mem::transmute(psz))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathQuoteSpacesA(lpsz: &mut [u8; 260]) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn PathQuoteSpacesA ( lpsz : :: windows::core::PSTR ) -> super::super::Foundation:: BOOL );
PathQuoteSpacesA(::core::mem::transmute(lpsz.as_ptr()))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathQuoteSpacesW(lpsz: &mut [u16; 260]) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn PathQuoteSpacesW ( lpsz : :: windows::core::PWSTR ) -> super::super::Foundation:: BOOL );
PathQuoteSpacesW(::core::mem::transmute(lpsz.as_ptr()))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathRelativePathToA<P0, P1>(pszpath: &mut [u8; 260], pszfrom: P0, dwattrfrom: u32, pszto: P1, dwattrto: u32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathRelativePathToA ( pszpath : :: windows::core::PSTR , pszfrom : :: windows::core::PCSTR , dwattrfrom : u32 , pszto : :: windows::core::PCSTR , dwattrto : u32 ) -> super::super::Foundation:: BOOL );
PathRelativePathToA(::core::mem::transmute(pszpath.as_ptr()), pszfrom.into().abi(), dwattrfrom, pszto.into().abi(), dwattrto)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathRelativePathToW<P0, P1>(pszpath: &mut [u16; 260], pszfrom: P0, dwattrfrom: u32, pszto: P1, dwattrto: u32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathRelativePathToW ( pszpath : :: windows::core::PWSTR , pszfrom : :: windows::core::PCWSTR , dwattrfrom : u32 , pszto : :: windows::core::PCWSTR , dwattrto : u32 ) -> super::super::Foundation:: BOOL );
PathRelativePathToW(::core::mem::transmute(pszpath.as_ptr()), pszfrom.into().abi(), dwattrfrom, pszto.into().abi(), dwattrto)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathRemoveArgsA(pszpath: ::windows::core::PSTR) {
::windows::core::link ! ( "shlwapi.dll""system" fn PathRemoveArgsA ( pszpath : :: windows::core::PSTR ) -> ( ) );
PathRemoveArgsA(::core::mem::transmute(pszpath))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathRemoveArgsW(pszpath: ::windows::core::PWSTR) {
::windows::core::link ! ( "shlwapi.dll""system" fn PathRemoveArgsW ( pszpath : :: windows::core::PWSTR ) -> ( ) );
PathRemoveArgsW(::core::mem::transmute(pszpath))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathRemoveBackslashA(pszpath: ::windows::core::PSTR) -> ::windows::core::PSTR {
::windows::core::link ! ( "shlwapi.dll""system" fn PathRemoveBackslashA ( pszpath : :: windows::core::PSTR ) -> :: windows::core::PSTR );
PathRemoveBackslashA(::core::mem::transmute(pszpath))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathRemoveBackslashW(pszpath: ::windows::core::PWSTR) -> ::windows::core::PWSTR {
::windows::core::link ! ( "shlwapi.dll""system" fn PathRemoveBackslashW ( pszpath : :: windows::core::PWSTR ) -> :: windows::core::PWSTR );
PathRemoveBackslashW(::core::mem::transmute(pszpath))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathRemoveBlanksA(pszpath: ::windows::core::PSTR) {
::windows::core::link ! ( "shlwapi.dll""system" fn PathRemoveBlanksA ( pszpath : :: windows::core::PSTR ) -> ( ) );
PathRemoveBlanksA(::core::mem::transmute(pszpath))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathRemoveBlanksW(pszpath: ::windows::core::PWSTR) {
::windows::core::link ! ( "shlwapi.dll""system" fn PathRemoveBlanksW ( pszpath : :: windows::core::PWSTR ) -> ( ) );
PathRemoveBlanksW(::core::mem::transmute(pszpath))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathRemoveExtensionA(pszpath: ::windows::core::PSTR) {
::windows::core::link ! ( "shlwapi.dll""system" fn PathRemoveExtensionA ( pszpath : :: windows::core::PSTR ) -> ( ) );
PathRemoveExtensionA(::core::mem::transmute(pszpath))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathRemoveExtensionW(pszpath: ::windows::core::PWSTR) {
::windows::core::link ! ( "shlwapi.dll""system" fn PathRemoveExtensionW ( pszpath : :: windows::core::PWSTR ) -> ( ) );
PathRemoveExtensionW(::core::mem::transmute(pszpath))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathRemoveFileSpecA(pszpath: ::windows::core::PSTR) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn PathRemoveFileSpecA ( pszpath : :: windows::core::PSTR ) -> super::super::Foundation:: BOOL );
PathRemoveFileSpecA(::core::mem::transmute(pszpath))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathRemoveFileSpecW(pszpath: ::windows::core::PWSTR) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn PathRemoveFileSpecW ( pszpath : :: windows::core::PWSTR ) -> super::super::Foundation:: BOOL );
PathRemoveFileSpecW(::core::mem::transmute(pszpath))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathRenameExtensionA<P0>(pszpath: &mut [u8; 260], pszext: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathRenameExtensionA ( pszpath : :: windows::core::PSTR , pszext : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathRenameExtensionA(::core::mem::transmute(pszpath.as_ptr()), pszext.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathRenameExtensionW<P0>(pszpath: &mut [u16; 260], pszext: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathRenameExtensionW ( pszpath : :: windows::core::PWSTR , pszext : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathRenameExtensionW(::core::mem::transmute(pszpath.as_ptr()), pszext.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathResolve(pszpath: &mut [u16; 260], dirs: ::core::option::Option<*const *const u16>, fflags: PRF_FLAGS) -> i32 {
::windows::core::link ! ( "shell32.dll""system" fn PathResolve ( pszpath : :: windows::core::PWSTR , dirs : *const *const u16 , fflags : PRF_FLAGS ) -> i32 );
PathResolve(::core::mem::transmute(pszpath.as_ptr()), ::core::mem::transmute(dirs.unwrap_or(::std::ptr::null())), fflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathSearchAndQualifyA<P0>(pszpath: P0, pszbuf: &mut [u8]) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathSearchAndQualifyA ( pszpath : :: windows::core::PCSTR , pszbuf : :: windows::core::PSTR , cchbuf : u32 ) -> super::super::Foundation:: BOOL );
PathSearchAndQualifyA(pszpath.into().abi(), ::core::mem::transmute(pszbuf.as_ptr()), pszbuf.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathSearchAndQualifyW<P0>(pszpath: P0, pszbuf: &mut [u16]) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathSearchAndQualifyW ( pszpath : :: windows::core::PCWSTR , pszbuf : :: windows::core::PWSTR , cchbuf : u32 ) -> super::super::Foundation:: BOOL );
PathSearchAndQualifyW(pszpath.into().abi(), ::core::mem::transmute(pszbuf.as_ptr()), pszbuf.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathSetDlgItemPathA<P0, P1>(hdlg: P0, id: i32, pszpath: P1)
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathSetDlgItemPathA ( hdlg : super::super::Foundation:: HWND , id : i32 , pszpath : :: windows::core::PCSTR ) -> ( ) );
PathSetDlgItemPathA(hdlg.into(), id, pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathSetDlgItemPathW<P0, P1>(hdlg: P0, id: i32, pszpath: P1)
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathSetDlgItemPathW ( hdlg : super::super::Foundation:: HWND , id : i32 , pszpath : :: windows::core::PCWSTR ) -> ( ) );
PathSetDlgItemPathW(hdlg.into(), id, pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathSkipRootA<P0>(pszpath: P0) -> ::windows::core::PSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathSkipRootA ( pszpath : :: windows::core::PCSTR ) -> :: windows::core::PSTR );
PathSkipRootA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathSkipRootW<P0>(pszpath: P0) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathSkipRootW ( pszpath : :: windows::core::PCWSTR ) -> :: windows::core::PWSTR );
PathSkipRootW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathStripPathA(pszpath: ::windows::core::PSTR) {
::windows::core::link ! ( "shlwapi.dll""system" fn PathStripPathA ( pszpath : :: windows::core::PSTR ) -> ( ) );
PathStripPathA(::core::mem::transmute(pszpath))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathStripPathW(pszpath: ::windows::core::PWSTR) {
::windows::core::link ! ( "shlwapi.dll""system" fn PathStripPathW ( pszpath : :: windows::core::PWSTR ) -> ( ) );
PathStripPathW(::core::mem::transmute(pszpath))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathStripToRootA(pszpath: ::windows::core::PSTR) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn PathStripToRootA ( pszpath : :: windows::core::PSTR ) -> super::super::Foundation:: BOOL );
PathStripToRootA(::core::mem::transmute(pszpath))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathStripToRootW(pszpath: ::windows::core::PWSTR) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn PathStripToRootW ( pszpath : :: windows::core::PWSTR ) -> super::super::Foundation:: BOOL );
PathStripToRootW(::core::mem::transmute(pszpath))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathUnExpandEnvStringsA<P0>(pszpath: P0, pszbuf: &mut [u8]) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathUnExpandEnvStringsA ( pszpath : :: windows::core::PCSTR , pszbuf : :: windows::core::PSTR , cchbuf : u32 ) -> super::super::Foundation:: BOOL );
PathUnExpandEnvStringsA(pszpath.into().abi(), ::core::mem::transmute(pszbuf.as_ptr()), pszbuf.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathUnExpandEnvStringsW<P0>(pszpath: P0, pszbuf: &mut [u16]) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathUnExpandEnvStringsW ( pszpath : :: windows::core::PCWSTR , pszbuf : :: windows::core::PWSTR , cchbuf : u32 ) -> super::super::Foundation:: BOOL );
PathUnExpandEnvStringsW(pszpath.into().abi(), ::core::mem::transmute(pszbuf.as_ptr()), pszbuf.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathUndecorateA(pszpath: ::windows::core::PSTR) {
::windows::core::link ! ( "shlwapi.dll""system" fn PathUndecorateA ( pszpath : :: windows::core::PSTR ) -> ( ) );
PathUndecorateA(::core::mem::transmute(pszpath))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn PathUndecorateW(pszpath: ::windows::core::PWSTR) {
::windows::core::link ! ( "shlwapi.dll""system" fn PathUndecorateW ( pszpath : :: windows::core::PWSTR ) -> ( ) );
PathUndecorateW(::core::mem::transmute(pszpath))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathUnmakeSystemFolderA<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathUnmakeSystemFolderA ( pszpath : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
PathUnmakeSystemFolderA(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathUnmakeSystemFolderW<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn PathUnmakeSystemFolderW ( pszpath : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathUnmakeSystemFolderW(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathUnquoteSpacesA(lpsz: ::windows::core::PSTR) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn PathUnquoteSpacesA ( lpsz : :: windows::core::PSTR ) -> super::super::Foundation:: BOOL );
PathUnquoteSpacesA(::core::mem::transmute(lpsz))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathUnquoteSpacesW(lpsz: ::windows::core::PWSTR) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn PathUnquoteSpacesW ( lpsz : :: windows::core::PWSTR ) -> super::super::Foundation:: BOOL );
PathUnquoteSpacesW(::core::mem::transmute(lpsz))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PathYetAnotherMakeUniqueName<P0, P1, P2>(pszuniquename: &mut [u16; 260], pszpath: P0, pszshort: P1, pszfilespec: P2) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn PathYetAnotherMakeUniqueName ( pszuniquename : :: windows::core::PWSTR , pszpath : :: windows::core::PCWSTR , pszshort : :: windows::core::PCWSTR , pszfilespec : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
PathYetAnotherMakeUniqueName(::core::mem::transmute(pszuniquename.as_ptr()), pszpath.into().abi(), pszshort.into().abi(), pszfilespec.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn PickIconDlg<P0>(hwnd: P0, psziconpath: &mut [u16], piiconindex: ::core::option::Option<*mut i32>) -> i32
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
::windows::core::link ! ( "shell32.dll""system" fn PickIconDlg ( hwnd : super::super::Foundation:: HWND , psziconpath : :: windows::core::PWSTR , cchiconpath : u32 , piiconindex : *mut i32 ) -> i32 );
PickIconDlg(hwnd.into(), ::core::mem::transmute(psziconpath.as_ptr()), psziconpath.len() as _, ::core::mem::transmute(piiconindex.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn QISearch<T>(that: *mut ::core::ffi::c_void, pqit: *const QITAB) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shlwapi.dll""system" fn QISearch ( that : *mut ::core::ffi::c_void , pqit : *const QITAB , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
QISearch(that, pqit, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn ReadCabinetState(pcs: *mut CABINETSTATE, clength: i32) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn ReadCabinetState ( pcs : *mut CABINETSTATE , clength : i32 ) -> super::super::Foundation:: BOOL );
ReadCabinetState(pcs, clength)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn RealDriveType<P0>(idrive: i32, foktohitnet: P0) -> i32
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shell32.dll""system" fn RealDriveType ( idrive : i32 , foktohitnet : super::super::Foundation:: BOOL ) -> i32 );
RealDriveType(idrive, foktohitnet.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn RegisterAppConstrainedChangeNotification(routine: PAPPCONSTRAIN_CHANGE_ROUTINE, context: ::core::option::Option<*const ::core::ffi::c_void>, registration: *mut *mut _APPCONSTRAIN_REGISTRATION) -> u32 {
::windows::core::link ! ( "api-ms-win-core-psm-appnotify-l1-1-1.dll""system" fn RegisterAppConstrainedChangeNotification ( routine : PAPPCONSTRAIN_CHANGE_ROUTINE , context : *const ::core::ffi::c_void , registration : *mut *mut _APPCONSTRAIN_REGISTRATION ) -> u32 );
RegisterAppConstrainedChangeNotification(routine, ::core::mem::transmute(context.unwrap_or(::std::ptr::null())), registration)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn RegisterAppStateChangeNotification(routine: PAPPSTATE_CHANGE_ROUTINE, context: ::core::option::Option<*const ::core::ffi::c_void>, registration: *mut *mut _APPSTATE_REGISTRATION) -> u32 {
::windows::core::link ! ( "api-ms-win-core-psm-appnotify-l1-1-0.dll""system" fn RegisterAppStateChangeNotification ( routine : PAPPSTATE_CHANGE_ROUTINE , context : *const ::core::ffi::c_void , registration : *mut *mut _APPSTATE_REGISTRATION ) -> u32 );
RegisterAppStateChangeNotification(routine, ::core::mem::transmute(context.unwrap_or(::std::ptr::null())), registration)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn RegisterScaleChangeEvent<P0>(hevent: P0) -> ::windows::core::Result<usize>
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
::windows::core::link ! ( "api-ms-win-shcore-scaling-l1-1-1.dll""system" fn RegisterScaleChangeEvent ( hevent : super::super::Foundation:: HANDLE , pdwcookie : *mut usize ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
RegisterScaleChangeEvent(hevent.into(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn RegisterScaleChangeNotifications<P0>(displaydevice: DISPLAY_DEVICE_TYPE, hwndnotify: P0, umsgnotify: u32) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
::windows::core::link ! ( "api-ms-win-shcore-scaling-l1-1-0.dll""system" fn RegisterScaleChangeNotifications ( displaydevice : DISPLAY_DEVICE_TYPE , hwndnotify : super::super::Foundation:: HWND , umsgnotify : u32 , pdwcookie : *mut u32 ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
RegisterScaleChangeNotifications(displaydevice, hwndnotify.into(), umsgnotify, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn RemoveWindowSubclass<P0>(hwnd: P0, pfnsubclass: SUBCLASSPROC, uidsubclass: usize) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
::windows::core::link ! ( "comctl32.dll""system" fn RemoveWindowSubclass ( hwnd : super::super::Foundation:: HWND , pfnsubclass : SUBCLASSPROC , uidsubclass : usize ) -> super::super::Foundation:: BOOL );
RemoveWindowSubclass(hwnd.into(), pfnsubclass, uidsubclass)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn RestartDialog<P0, P1>(hwnd: P0, pszprompt: P1, dwreturn: u32) -> i32
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn RestartDialog ( hwnd : super::super::Foundation:: HWND , pszprompt : :: windows::core::PCWSTR , dwreturn : u32 ) -> i32 );
RestartDialog(hwnd.into(), pszprompt.into().abi(), dwreturn)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn RestartDialogEx<P0, P1>(hwnd: P0, pszprompt: P1, dwreturn: u32, dwreasoncode: u32) -> i32
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn RestartDialogEx ( hwnd : super::super::Foundation:: HWND , pszprompt : :: windows::core::PCWSTR , dwreturn : u32 , dwreasoncode : u32 ) -> i32 );
RestartDialogEx(hwnd.into(), pszprompt.into().abi(), dwreturn, dwreasoncode)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn RevokeScaleChangeNotifications(displaydevice: DISPLAY_DEVICE_TYPE, dwcookie: u32) -> ::windows::core::Result<()> {
::windows::core::link ! ( "api-ms-win-shcore-scaling-l1-1-0.dll""system" fn RevokeScaleChangeNotifications ( displaydevice : DISPLAY_DEVICE_TYPE , dwcookie : u32 ) -> :: windows::core::HRESULT );
RevokeScaleChangeNotifications(displaydevice, dwcookie).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Controls\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
#[inline]
pub unsafe fn SHAddFromPropSheetExtArray<P0, P1>(hpsxa: P0, lpfnaddpage: super::Controls::LPFNSVADDPROPSHEETPAGE, lparam: P1) -> u32
where
P0: ::std::convert::Into<HPSXA>,
P1: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHAddFromPropSheetExtArray ( hpsxa : HPSXA , lpfnaddpage : super::Controls:: LPFNSVADDPROPSHEETPAGE , lparam : super::super::Foundation:: LPARAM ) -> u32 );
SHAddFromPropSheetExtArray(hpsxa.into(), lpfnaddpage, lparam.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHAddToRecentDocs(uflags: u32, pv: ::core::option::Option<*const ::core::ffi::c_void>) {
::windows::core::link ! ( "shell32.dll""system" fn SHAddToRecentDocs ( uflags : u32 , pv : *const ::core::ffi::c_void ) -> ( ) );
SHAddToRecentDocs(uflags, ::core::mem::transmute(pv.unwrap_or(::std::ptr::null())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHAlloc(cb: usize) -> *mut ::core::ffi::c_void {
::windows::core::link ! ( "shell32.dll""system" fn SHAlloc ( cb : usize ) -> *mut ::core::ffi::c_void );
SHAlloc(cb)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHAllocShared(pvdata: ::core::option::Option<*const ::core::ffi::c_void>, dwsize: u32, dwprocessid: u32) -> super::super::Foundation::HANDLE {
::windows::core::link ! ( "shlwapi.dll""system" fn SHAllocShared ( pvdata : *const ::core::ffi::c_void , dwsize : u32 , dwprocessid : u32 ) -> super::super::Foundation:: HANDLE );
SHAllocShared(::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null())), dwsize, dwprocessid)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHAnsiToAnsi<P0>(pszsrc: P0, pszdst: &mut [u8]) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHAnsiToAnsi ( pszsrc : :: windows::core::PCSTR , pszdst : :: windows::core::PSTR , cchbuf : i32 ) -> i32 );
SHAnsiToAnsi(pszsrc.into().abi(), ::core::mem::transmute(pszdst.as_ptr()), pszdst.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHAnsiToUnicode<P0>(pszsrc: P0, pwszdst: &mut [u16]) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHAnsiToUnicode ( pszsrc : :: windows::core::PCSTR , pwszdst : :: windows::core::PWSTR , cwchbuf : i32 ) -> i32 );
SHAnsiToUnicode(pszsrc.into().abi(), ::core::mem::transmute(pwszdst.as_ptr()), pwszdst.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHAppBarMessage(dwmessage: u32, pdata: *mut APPBARDATA) -> usize {
::windows::core::link ! ( "shell32.dll""system" fn SHAppBarMessage ( dwmessage : u32 , pdata : *mut APPBARDATA ) -> usize );
SHAppBarMessage(dwmessage, pdata)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHAssocEnumHandlers<P0>(pszextra: P0, affilter: ASSOC_FILTER) -> ::windows::core::Result<IEnumAssocHandlers>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHAssocEnumHandlers ( pszextra : :: windows::core::PCWSTR , affilter : ASSOC_FILTER , ppenumhandler : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHAssocEnumHandlers(pszextra.into().abi(), affilter, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHAssocEnumHandlersForProtocolByApplication<P0, T>(protocol: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHAssocEnumHandlersForProtocolByApplication ( protocol : :: windows::core::PCWSTR , riid : *const :: windows::core::GUID , enumhandlers : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHAssocEnumHandlersForProtocolByApplication(protocol.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHAutoComplete<P0>(hwndedit: P0, dwflags: SHELL_AUTOCOMPLETE_FLAGS) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHAutoComplete ( hwndedit : super::super::Foundation:: HWND , dwflags : SHELL_AUTOCOMPLETE_FLAGS ) -> :: windows::core::HRESULT );
SHAutoComplete(hwndedit.into(), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn SHBindToFolderIDListParent<P0, T>(psfroot: P0, pidl: *const Common::ITEMIDLIST, ppidllast: ::core::option::Option<*mut *mut Common::ITEMIDLIST>) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHBindToFolderIDListParent ( psfroot : * mut::core::ffi::c_void , pidl : *const Common:: ITEMIDLIST , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void , ppidllast : *mut *mut Common:: ITEMIDLIST ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHBindToFolderIDListParent(psfroot.into().abi(), pidl, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr(), ::core::mem::transmute(ppidllast.unwrap_or(::std::ptr::null_mut()))).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn SHBindToFolderIDListParentEx<P0, P1, T>(psfroot: P0, pidl: *const Common::ITEMIDLIST, ppbc: P1, ppidllast: ::core::option::Option<*mut *mut Common::ITEMIDLIST>) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHBindToFolderIDListParentEx ( psfroot : * mut::core::ffi::c_void , pidl : *const Common:: ITEMIDLIST , ppbc : * mut::core::ffi::c_void , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void , ppidllast : *mut *mut Common:: ITEMIDLIST ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHBindToFolderIDListParentEx(psfroot.into().abi(), pidl, ppbc.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr(), ::core::mem::transmute(ppidllast.unwrap_or(::std::ptr::null_mut()))).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn SHBindToObject<P0, P1, T>(psf: P0, pidl: *const Common::ITEMIDLIST, pbc: P1) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHBindToObject ( psf : * mut::core::ffi::c_void , pidl : *const Common:: ITEMIDLIST , pbc : * mut::core::ffi::c_void , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHBindToObject(psf.into().abi(), pidl, pbc.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn SHBindToParent<T>(pidl: *const Common::ITEMIDLIST, ppidllast: ::core::option::Option<*mut *mut Common::ITEMIDLIST>) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHBindToParent ( pidl : *const Common:: ITEMIDLIST , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void , ppidllast : *mut *mut Common:: ITEMIDLIST ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHBindToParent(pidl, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr(), ::core::mem::transmute(ppidllast.unwrap_or(::std::ptr::null_mut()))).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn SHBrowseForFolderA(lpbi: *const BROWSEINFOA) -> *mut Common::ITEMIDLIST {
::windows::core::link ! ( "shell32.dll""system" fn SHBrowseForFolderA ( lpbi : *const BROWSEINFOA ) -> *mut Common:: ITEMIDLIST );
SHBrowseForFolderA(lpbi)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn SHBrowseForFolderW(lpbi: *const BROWSEINFOW) -> *mut Common::ITEMIDLIST {
::windows::core::link ! ( "shell32.dll""system" fn SHBrowseForFolderW ( lpbi : *const BROWSEINFOW ) -> *mut Common:: ITEMIDLIST );
SHBrowseForFolderW(lpbi)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHCLSIDFromString<P0>(psz: P0) -> ::windows::core::Result<::windows::core::GUID>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCLSIDFromString ( psz : :: windows::core::PCWSTR , pclsid : *mut :: windows::core::GUID ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCLSIDFromString(psz.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn SHChangeNotification_Lock<P0>(hchange: P0, dwprocid: u32, pppidl: ::core::option::Option<*mut *mut *mut Common::ITEMIDLIST>, plevent: ::core::option::Option<*mut i32>) -> ShFindChangeNotificationHandle
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHChangeNotification_Lock ( hchange : super::super::Foundation:: HANDLE , dwprocid : u32 , pppidl : *mut *mut *mut Common:: ITEMIDLIST , plevent : *mut i32 ) -> ShFindChangeNotificationHandle );
SHChangeNotification_Lock(hchange.into(), dwprocid, ::core::mem::transmute(pppidl.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(plevent.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHChangeNotification_Unlock<P0>(hlock: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHChangeNotification_Unlock ( hlock : super::super::Foundation:: HANDLE ) -> super::super::Foundation:: BOOL );
SHChangeNotification_Unlock(hlock.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHChangeNotify(weventid: SHCNE_ID, uflags: SHCNF_FLAGS, dwitem1: ::core::option::Option<*const ::core::ffi::c_void>, dwitem2: ::core::option::Option<*const ::core::ffi::c_void>) {
::windows::core::link ! ( "shell32.dll""system" fn SHChangeNotify ( weventid : SHCNE_ID , uflags : SHCNF_FLAGS , dwitem1 : *const ::core::ffi::c_void , dwitem2 : *const ::core::ffi::c_void ) -> ( ) );
SHChangeNotify(weventid, uflags, ::core::mem::transmute(dwitem1.unwrap_or(::std::ptr::null())), ::core::mem::transmute(dwitem2.unwrap_or(::std::ptr::null())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHChangeNotifyDeregister(ulid: u32) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn SHChangeNotifyDeregister ( ulid : u32 ) -> super::super::Foundation:: BOOL );
SHChangeNotifyDeregister(ulid)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn SHChangeNotifyRegister<P0>(hwnd: P0, fsources: SHCNRF_SOURCE, fevents: i32, wmsg: u32, centries: i32, pshcne: *const SHChangeNotifyEntry) -> u32
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHChangeNotifyRegister ( hwnd : super::super::Foundation:: HWND , fsources : SHCNRF_SOURCE , fevents : i32 , wmsg : u32 , centries : i32 , pshcne : *const SHChangeNotifyEntry ) -> u32 );
SHChangeNotifyRegister(hwnd.into(), fsources, fevents, wmsg, centries, pshcne)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHChangeNotifyRegisterThread(status: SCNRT_STATUS) {
::windows::core::link ! ( "shell32.dll""system" fn SHChangeNotifyRegisterThread ( status : SCNRT_STATUS ) -> ( ) );
SHChangeNotifyRegisterThread(status)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn SHCloneSpecialIDList<P0, P1>(hwnd: P0, csidl: i32, fcreate: P1) -> *mut Common::ITEMIDLIST
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCloneSpecialIDList ( hwnd : super::super::Foundation:: HWND , csidl : i32 , fcreate : super::super::Foundation:: BOOL ) -> *mut Common:: ITEMIDLIST );
SHCloneSpecialIDList(hwnd.into(), csidl, fcreate.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHCoCreateInstance<P0, P1, T>(pszclsid: P0, pclsid: ::core::option::Option<*const ::windows::core::GUID>, punkouter: P1) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCoCreateInstance ( pszclsid : :: windows::core::PCWSTR , pclsid : *const :: windows::core::GUID , punkouter : * mut::core::ffi::c_void , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCoCreateInstance(pszclsid.into().abi(), ::core::mem::transmute(pclsid.unwrap_or(::std::ptr::null())), punkouter.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHCopyKeyA<P0, P1, P2>(hkeysrc: P0, pszsrcsubkey: P1, hkeydest: P2, freserved: u32) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<super::super::System::Registry::HKEY>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHCopyKeyA ( hkeysrc : super::super::System::Registry:: HKEY , pszsrcsubkey : :: windows::core::PCSTR , hkeydest : super::super::System::Registry:: HKEY , freserved : u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHCopyKeyA(hkeysrc.into(), pszsrcsubkey.into().abi(), hkeydest.into(), freserved)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHCopyKeyW<P0, P1, P2>(hkeysrc: P0, pszsrcsubkey: P1, hkeydest: P2, freserved: u32) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<super::super::System::Registry::HKEY>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHCopyKeyW ( hkeysrc : super::super::System::Registry:: HKEY , pszsrcsubkey : :: windows::core::PCWSTR , hkeydest : super::super::System::Registry:: HKEY , freserved : u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHCopyKeyW(hkeysrc.into(), pszsrcsubkey.into().abi(), hkeydest.into(), freserved)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHCreateAssociationRegistration<T>() -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCreateAssociationRegistration ( riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateAssociationRegistration(&<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn SHCreateDataObject<P0, T>(pidlfolder: ::core::option::Option<*const Common::ITEMIDLIST>, apidl: ::core::option::Option<&[*const Common::ITEMIDLIST]>, pdtinner: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCreateDataObject ( pidlfolder : *const Common:: ITEMIDLIST , cidl : u32 , apidl : *const *const Common:: ITEMIDLIST , pdtinner : * mut::core::ffi::c_void , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateDataObject(::core::mem::transmute(pidlfolder.unwrap_or(::std::ptr::null())), apidl.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(apidl.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pdtinner.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn SHCreateDefaultContextMenu<T>(pdcm: *const DEFCONTEXTMENU) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCreateDefaultContextMenu ( pdcm : *const DEFCONTEXTMENU , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateDefaultContextMenu(pdcm, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHCreateDefaultExtractIcon<T>() -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCreateDefaultExtractIcon ( riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateDefaultExtractIcon(&<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHCreateDefaultPropertiesOp<P0>(psi: P0) -> ::windows::core::Result<IFileOperation>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCreateDefaultPropertiesOp ( psi : * mut::core::ffi::c_void , ppfileop : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateDefaultPropertiesOp(psi.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHCreateDirectory<P0, P1>(hwnd: P0, pszpath: P1) -> i32
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCreateDirectory ( hwnd : super::super::Foundation:: HWND , pszpath : :: windows::core::PCWSTR ) -> i32 );
SHCreateDirectory(hwnd.into(), pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_Security\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))]
#[inline]
pub unsafe fn SHCreateDirectoryExA<P0, P1>(hwnd: P0, pszpath: P1, psa: ::core::option::Option<*const super::super::Security::SECURITY_ATTRIBUTES>) -> i32
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCreateDirectoryExA ( hwnd : super::super::Foundation:: HWND , pszpath : :: windows::core::PCSTR , psa : *const super::super::Security:: SECURITY_ATTRIBUTES ) -> i32 );
SHCreateDirectoryExA(hwnd.into(), pszpath.into().abi(), ::core::mem::transmute(psa.unwrap_or(::std::ptr::null())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_Security\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))]
#[inline]
pub unsafe fn SHCreateDirectoryExW<P0, P1>(hwnd: P0, pszpath: P1, psa: ::core::option::Option<*const super::super::Security::SECURITY_ATTRIBUTES>) -> i32
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCreateDirectoryExW ( hwnd : super::super::Foundation:: HWND , pszpath : :: windows::core::PCWSTR , psa : *const super::super::Security:: SECURITY_ATTRIBUTES ) -> i32 );
SHCreateDirectoryExW(hwnd.into(), pszpath.into().abi(), ::core::mem::transmute(psa.unwrap_or(::std::ptr::null())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHCreateFileExtractIconW<P0, T>(pszfile: P0, dwfileattributes: u32) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCreateFileExtractIconW ( pszfile : :: windows::core::PCWSTR , dwfileattributes : u32 , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateFileExtractIconW(pszfile.into().abi(), dwfileattributes, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn SHCreateItemFromIDList<T>(pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCreateItemFromIDList ( pidl : *const Common:: ITEMIDLIST , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateItemFromIDList(pidl, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn SHCreateItemFromParsingName<P0, P1, T>(pszpath: P0, pbc: P1) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCreateItemFromParsingName ( pszpath : :: windows::core::PCWSTR , pbc : * mut::core::ffi::c_void , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateItemFromParsingName(pszpath.into().abi(), pbc.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn SHCreateItemFromRelativeName<P0, P1, P2, T>(psiparent: P0, pszname: P1, pbc: P2) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCreateItemFromRelativeName ( psiparent : * mut::core::ffi::c_void , pszname : :: windows::core::PCWSTR , pbc : * mut::core::ffi::c_void , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateItemFromRelativeName(psiparent.into().abi(), pszname.into().abi(), pbc.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHCreateItemInKnownFolder<P0, T>(kfid: *const ::windows::core::GUID, dwkfflags: u32, pszitem: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCreateItemInKnownFolder ( kfid : *const :: windows::core::GUID , dwkfflags : u32 , pszitem : :: windows::core::PCWSTR , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateItemInKnownFolder(kfid, dwkfflags, pszitem.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn SHCreateItemWithParent<P0, T>(pidlparent: ::core::option::Option<*const Common::ITEMIDLIST>, psfparent: P0, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCreateItemWithParent ( pidlparent : *const Common:: ITEMIDLIST , psfparent : * mut::core::ffi::c_void , pidl : *const Common:: ITEMIDLIST , riid : *const :: windows::core::GUID , ppvitem : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateItemWithParent(::core::mem::transmute(pidlparent.unwrap_or(::std::ptr::null())), psfparent.into().abi(), pidl, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn SHCreateMemStream(pinit: ::core::option::Option<&[u8]>) -> ::core::option::Option<super::super::System::Com::IStream> {
::windows::core::link ! ( "shlwapi.dll""system" fn SHCreateMemStream ( pinit : *const u8 , cbinit : u32 ) -> ::core::option::Option < super::super::System::Com:: IStream > );
SHCreateMemStream(::core::mem::transmute(pinit.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pinit.as_deref().map_or(0, |slice| slice.len() as _))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_Security\"`, `\"Win32_System_Threading\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security", feature = "Win32_System_Threading"))]
#[inline]
pub unsafe fn SHCreateProcessAsUserW(pscpi: *mut SHCREATEPROCESSINFOW) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn SHCreateProcessAsUserW ( pscpi : *mut SHCREATEPROCESSINFOW ) -> super::super::Foundation:: BOOL );
SHCreateProcessAsUserW(pscpi)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Registry\"`*"]
#[cfg(feature = "Win32_System_Registry")]
#[inline]
pub unsafe fn SHCreatePropSheetExtArray<P0, P1>(hkey: P0, pszsubkey: P1, max_iface: u32) -> HPSXA
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCreatePropSheetExtArray ( hkey : super::super::System::Registry:: HKEY , pszsubkey : :: windows::core::PCWSTR , max_iface : u32 ) -> HPSXA );
SHCreatePropSheetExtArray(hkey.into(), pszsubkey.into().abi(), max_iface)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn SHCreateQueryCancelAutoPlayMoniker() -> ::windows::core::Result<super::super::System::Com::IMoniker> {
::windows::core::link ! ( "shell32.dll""system" fn SHCreateQueryCancelAutoPlayMoniker ( ppmoniker : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateQueryCancelAutoPlayMoniker(result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
#[inline]
pub unsafe fn SHCreateShellFolderView(pcsfv: *const SFV_CREATE) -> ::windows::core::Result<IShellView> {
::windows::core::link ! ( "shell32.dll""system" fn SHCreateShellFolderView ( pcsfv : *const SFV_CREATE , ppsv : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateShellFolderView(pcsfv, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn SHCreateShellFolderViewEx(pcsfv: *const CSFV) -> ::windows::core::Result<IShellView> {
::windows::core::link ! ( "shell32.dll""system" fn SHCreateShellFolderViewEx ( pcsfv : *const CSFV , ppsv : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateShellFolderViewEx(pcsfv, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn SHCreateShellItem<P0>(pidlparent: ::core::option::Option<*const Common::ITEMIDLIST>, psfparent: P0, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<IShellItem>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCreateShellItem ( pidlparent : *const Common:: ITEMIDLIST , psfparent : * mut::core::ffi::c_void , pidl : *const Common:: ITEMIDLIST , ppsi : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateShellItem(::core::mem::transmute(pidlparent.unwrap_or(::std::ptr::null())), psfparent.into().abi(), pidl, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn SHCreateShellItemArray<P0>(pidlparent: ::core::option::Option<*const Common::ITEMIDLIST>, psf: P0, ppidl: ::core::option::Option<&[*const Common::ITEMIDLIST]>) -> ::windows::core::Result<IShellItemArray>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCreateShellItemArray ( pidlparent : *const Common:: ITEMIDLIST , psf : * mut::core::ffi::c_void , cidl : u32 , ppidl : *const *const Common:: ITEMIDLIST , ppsiitemarray : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateShellItemArray(::core::mem::transmute(pidlparent.unwrap_or(::std::ptr::null())), psf.into().abi(), ppidl.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(ppidl.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn SHCreateShellItemArrayFromDataObject<P0, T>(pdo: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCreateShellItemArrayFromDataObject ( pdo : * mut::core::ffi::c_void , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateShellItemArrayFromDataObject(pdo.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn SHCreateShellItemArrayFromIDLists(rgpidl: &[*const Common::ITEMIDLIST]) -> ::windows::core::Result<IShellItemArray> {
::windows::core::link ! ( "shell32.dll""system" fn SHCreateShellItemArrayFromIDLists ( cidl : u32 , rgpidl : *const *const Common:: ITEMIDLIST , ppsiitemarray : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateShellItemArrayFromIDLists(rgpidl.len() as _, ::core::mem::transmute(rgpidl.as_ptr()), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHCreateShellItemArrayFromShellItem<P0, T>(psi: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHCreateShellItemArrayFromShellItem ( psi : * mut::core::ffi::c_void , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateShellItemArrayFromShellItem(psi.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
#[inline]
pub unsafe fn SHCreateShellPalette<P0>(hdc: P0) -> super::super::Graphics::Gdi::HPALETTE
where
P0: ::std::convert::Into<super::super::Graphics::Gdi::HDC>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHCreateShellPalette ( hdc : super::super::Graphics::Gdi:: HDC ) -> super::super::Graphics::Gdi:: HPALETTE );
SHCreateShellPalette(hdc.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn SHCreateStdEnumFmtEtc(afmt: &[super::super::System::Com::FORMATETC]) -> ::windows::core::Result<super::super::System::Com::IEnumFORMATETC> {
::windows::core::link ! ( "shell32.dll""system" fn SHCreateStdEnumFmtEtc ( cfmt : u32 , afmt : *const super::super::System::Com:: FORMATETC , ppenumformatetc : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateStdEnumFmtEtc(afmt.len() as _, ::core::mem::transmute(afmt.as_ptr()), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn SHCreateStreamOnFileA<P0>(pszfile: P0, grfmode: u32) -> ::windows::core::Result<super::super::System::Com::IStream>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHCreateStreamOnFileA ( pszfile : :: windows::core::PCSTR , grfmode : u32 , ppstm : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateStreamOnFileA(pszfile.into().abi(), grfmode, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
#[inline]
pub unsafe fn SHCreateStreamOnFileEx<P0, P1, P2>(pszfile: P0, grfmode: u32, dwattributes: u32, fcreate: P1, pstmtemplate: P2) -> ::windows::core::Result<super::super::System::Com::IStream>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
P2: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHCreateStreamOnFileEx ( pszfile : :: windows::core::PCWSTR , grfmode : u32 , dwattributes : u32 , fcreate : super::super::Foundation:: BOOL , pstmtemplate : * mut::core::ffi::c_void , ppstm : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateStreamOnFileEx(pszfile.into().abi(), grfmode, dwattributes, fcreate.into(), pstmtemplate.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn SHCreateStreamOnFileW<P0>(pszfile: P0, grfmode: u32) -> ::windows::core::Result<super::super::System::Com::IStream>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHCreateStreamOnFileW ( pszfile : :: windows::core::PCWSTR , grfmode : u32 , ppstm : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHCreateStreamOnFileW(pszfile.into().abi(), grfmode, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Threading\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Threading"))]
#[inline]
pub unsafe fn SHCreateThread(pfnthreadproc: super::super::System::Threading::LPTHREAD_START_ROUTINE, pdata: ::core::option::Option<*const ::core::ffi::c_void>, flags: u32, pfncallback: super::super::System::Threading::LPTHREAD_START_ROUTINE) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn SHCreateThread ( pfnthreadproc : super::super::System::Threading:: LPTHREAD_START_ROUTINE , pdata : *const ::core::ffi::c_void , flags : u32 , pfncallback : super::super::System::Threading:: LPTHREAD_START_ROUTINE ) -> super::super::Foundation:: BOOL );
SHCreateThread(pfnthreadproc, ::core::mem::transmute(pdata.unwrap_or(::std::ptr::null())), flags, pfncallback)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHCreateThreadRef(pcref: *mut i32, ppunk: *mut ::core::option::Option<::windows::core::IUnknown>) -> ::windows::core::Result<()> {
::windows::core::link ! ( "shlwapi.dll""system" fn SHCreateThreadRef ( pcref : *mut i32 , ppunk : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
SHCreateThreadRef(pcref, ::core::mem::transmute(ppunk)).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Threading\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Threading"))]
#[inline]
pub unsafe fn SHCreateThreadWithHandle(pfnthreadproc: super::super::System::Threading::LPTHREAD_START_ROUTINE, pdata: ::core::option::Option<*const ::core::ffi::c_void>, flags: u32, pfncallback: super::super::System::Threading::LPTHREAD_START_ROUTINE, phandle: ::core::option::Option<*mut super::super::Foundation::HANDLE>) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn SHCreateThreadWithHandle ( pfnthreadproc : super::super::System::Threading:: LPTHREAD_START_ROUTINE , pdata : *const ::core::ffi::c_void , flags : u32 , pfncallback : super::super::System::Threading:: LPTHREAD_START_ROUTINE , phandle : *mut super::super::Foundation:: HANDLE ) -> super::super::Foundation:: BOOL );
SHCreateThreadWithHandle(pfnthreadproc, ::core::mem::transmute(pdata.unwrap_or(::std::ptr::null())), flags, pfncallback, ::core::mem::transmute(phandle.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
#[inline]
pub unsafe fn SHDefExtractIconA<P0>(psziconfile: P0, iindex: i32, uflags: u32, phiconlarge: ::core::option::Option<*mut super::WindowsAndMessaging::HICON>, phiconsmall: ::core::option::Option<*mut super::WindowsAndMessaging::HICON>, niconsize: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHDefExtractIconA ( psziconfile : :: windows::core::PCSTR , iindex : i32 , uflags : u32 , phiconlarge : *mut super::WindowsAndMessaging:: HICON , phiconsmall : *mut super::WindowsAndMessaging:: HICON , niconsize : u32 ) -> :: windows::core::HRESULT );
SHDefExtractIconA(psziconfile.into().abi(), iindex, uflags, ::core::mem::transmute(phiconlarge.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(phiconsmall.unwrap_or(::std::ptr::null_mut())), niconsize).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
#[inline]
pub unsafe fn SHDefExtractIconW<P0>(psziconfile: P0, iindex: i32, uflags: u32, phiconlarge: ::core::option::Option<*mut super::WindowsAndMessaging::HICON>, phiconsmall: ::core::option::Option<*mut super::WindowsAndMessaging::HICON>, niconsize: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHDefExtractIconW ( psziconfile : :: windows::core::PCWSTR , iindex : i32 , uflags : u32 , phiconlarge : *mut super::WindowsAndMessaging:: HICON , phiconsmall : *mut super::WindowsAndMessaging:: HICON , niconsize : u32 ) -> :: windows::core::HRESULT );
SHDefExtractIconW(psziconfile.into().abi(), iindex, uflags, ::core::mem::transmute(phiconlarge.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(phiconsmall.unwrap_or(::std::ptr::null_mut())), niconsize).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHDeleteEmptyKeyA<P0, P1>(hkey: P0, pszsubkey: P1) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHDeleteEmptyKeyA ( hkey : super::super::System::Registry:: HKEY , pszsubkey : :: windows::core::PCSTR ) -> super::super::Foundation:: WIN32_ERROR );
SHDeleteEmptyKeyA(hkey.into(), pszsubkey.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHDeleteEmptyKeyW<P0, P1>(hkey: P0, pszsubkey: P1) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHDeleteEmptyKeyW ( hkey : super::super::System::Registry:: HKEY , pszsubkey : :: windows::core::PCWSTR ) -> super::super::Foundation:: WIN32_ERROR );
SHDeleteEmptyKeyW(hkey.into(), pszsubkey.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHDeleteKeyA<P0, P1>(hkey: P0, pszsubkey: P1) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHDeleteKeyA ( hkey : super::super::System::Registry:: HKEY , pszsubkey : :: windows::core::PCSTR ) -> super::super::Foundation:: WIN32_ERROR );
SHDeleteKeyA(hkey.into(), pszsubkey.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHDeleteKeyW<P0, P1>(hkey: P0, pszsubkey: P1) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHDeleteKeyW ( hkey : super::super::System::Registry:: HKEY , pszsubkey : :: windows::core::PCWSTR ) -> super::super::Foundation:: WIN32_ERROR );
SHDeleteKeyW(hkey.into(), pszsubkey.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHDeleteValueA<P0, P1, P2>(hkey: P0, pszsubkey: P1, pszvalue: P2) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHDeleteValueA ( hkey : super::super::System::Registry:: HKEY , pszsubkey : :: windows::core::PCSTR , pszvalue : :: windows::core::PCSTR ) -> super::super::Foundation:: WIN32_ERROR );
SHDeleteValueA(hkey.into(), pszsubkey.into().abi(), pszvalue.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHDeleteValueW<P0, P1, P2>(hkey: P0, pszsubkey: P1, pszvalue: P2) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHDeleteValueW ( hkey : super::super::System::Registry:: HKEY , pszsubkey : :: windows::core::PCWSTR , pszvalue : :: windows::core::PCWSTR ) -> super::super::Foundation:: WIN32_ERROR );
SHDeleteValueW(hkey.into(), pszsubkey.into().abi(), pszvalue.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHDestroyPropSheetExtArray<P0>(hpsxa: P0)
where
P0: ::std::convert::Into<HPSXA>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHDestroyPropSheetExtArray ( hpsxa : HPSXA ) -> ( ) );
SHDestroyPropSheetExtArray(hpsxa.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
#[inline]
pub unsafe fn SHDoDragDrop<P0, P1, P2>(hwnd: P0, pdata: P1, pdsrc: P2, dweffect: super::super::System::Ole::DROPEFFECT) -> ::windows::core::Result<super::super::System::Ole::DROPEFFECT>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
P2: ::std::convert::Into<::windows::core::InParam<super::super::System::Ole::IDropSource>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHDoDragDrop ( hwnd : super::super::Foundation:: HWND , pdata : * mut::core::ffi::c_void , pdsrc : * mut::core::ffi::c_void , dweffect : super::super::System::Ole:: DROPEFFECT , pdweffect : *mut super::super::System::Ole:: DROPEFFECT ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHDoDragDrop(hwnd.into(), pdata.into().abi(), pdsrc.into().abi(), dweffect, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHEmptyRecycleBinA<P0, P1>(hwnd: P0, pszrootpath: P1, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHEmptyRecycleBinA ( hwnd : super::super::Foundation:: HWND , pszrootpath : :: windows::core::PCSTR , dwflags : u32 ) -> :: windows::core::HRESULT );
SHEmptyRecycleBinA(hwnd.into(), pszrootpath.into().abi(), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHEmptyRecycleBinW<P0, P1>(hwnd: P0, pszrootpath: P1, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHEmptyRecycleBinW ( hwnd : super::super::Foundation:: HWND , pszrootpath : :: windows::core::PCWSTR , dwflags : u32 ) -> :: windows::core::HRESULT );
SHEmptyRecycleBinW(hwnd.into(), pszrootpath.into().abi(), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHEnumKeyExA<P0>(hkey: P0, dwindex: u32, pszname: ::windows::core::PSTR, pcchname: *mut u32) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHEnumKeyExA ( hkey : super::super::System::Registry:: HKEY , dwindex : u32 , pszname : :: windows::core::PSTR , pcchname : *mut u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHEnumKeyExA(hkey.into(), dwindex, ::core::mem::transmute(pszname), pcchname)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHEnumKeyExW<P0>(hkey: P0, dwindex: u32, pszname: ::windows::core::PWSTR, pcchname: *mut u32) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHEnumKeyExW ( hkey : super::super::System::Registry:: HKEY , dwindex : u32 , pszname : :: windows::core::PWSTR , pcchname : *mut u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHEnumKeyExW(hkey.into(), dwindex, ::core::mem::transmute(pszname), pcchname)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHEnumValueA<P0>(hkey: P0, dwindex: u32, pszvaluename: ::windows::core::PSTR, pcchvaluename: ::core::option::Option<*mut u32>, pdwtype: ::core::option::Option<*mut u32>, pvdata: ::core::option::Option<*mut ::core::ffi::c_void>, pcbdata: ::core::option::Option<*mut u32>) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHEnumValueA ( hkey : super::super::System::Registry:: HKEY , dwindex : u32 , pszvaluename : :: windows::core::PSTR , pcchvaluename : *mut u32 , pdwtype : *mut u32 , pvdata : *mut ::core::ffi::c_void , pcbdata : *mut u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHEnumValueA(hkey.into(), dwindex, ::core::mem::transmute(pszvaluename), ::core::mem::transmute(pcchvaluename.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pdwtype.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcbdata.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHEnumValueW<P0>(hkey: P0, dwindex: u32, pszvaluename: ::windows::core::PWSTR, pcchvaluename: ::core::option::Option<*mut u32>, pdwtype: ::core::option::Option<*mut u32>, pvdata: ::core::option::Option<*mut ::core::ffi::c_void>, pcbdata: ::core::option::Option<*mut u32>) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHEnumValueW ( hkey : super::super::System::Registry:: HKEY , dwindex : u32 , pszvaluename : :: windows::core::PWSTR , pcchvaluename : *mut u32 , pdwtype : *mut u32 , pvdata : *mut ::core::ffi::c_void , pcbdata : *mut u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHEnumValueW(hkey.into(), dwindex, ::core::mem::transmute(pszvaluename), ::core::mem::transmute(pcchvaluename.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pdwtype.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcbdata.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Registry\"`*"]
#[cfg(feature = "Win32_System_Registry")]
#[inline]
pub unsafe fn SHEnumerateUnreadMailAccountsW<P0>(hkeyuser: P0, dwindex: u32, pszmailaddress: &mut [u16]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHEnumerateUnreadMailAccountsW ( hkeyuser : super::super::System::Registry:: HKEY , dwindex : u32 , pszmailaddress : :: windows::core::PWSTR , cchmailaddress : i32 ) -> :: windows::core::HRESULT );
SHEnumerateUnreadMailAccountsW(hkeyuser.into(), dwindex, ::core::mem::transmute(pszmailaddress.as_ptr()), pszmailaddress.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHEvaluateSystemCommandTemplate<P0>(pszcmdtemplate: P0, ppszapplication: *mut ::windows::core::PWSTR, ppszcommandline: ::core::option::Option<*mut ::windows::core::PWSTR>, ppszparameters: ::core::option::Option<*mut ::windows::core::PWSTR>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHEvaluateSystemCommandTemplate ( pszcmdtemplate : :: windows::core::PCWSTR , ppszapplication : *mut :: windows::core::PWSTR , ppszcommandline : *mut :: windows::core::PWSTR , ppszparameters : *mut :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
SHEvaluateSystemCommandTemplate(pszcmdtemplate.into().abi(), ppszapplication, ::core::mem::transmute(ppszcommandline.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(ppszparameters.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHFileOperationA(lpfileop: *mut SHFILEOPSTRUCTA) -> i32 {
::windows::core::link ! ( "shell32.dll""system" fn SHFileOperationA ( lpfileop : *mut SHFILEOPSTRUCTA ) -> i32 );
SHFileOperationA(lpfileop)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHFileOperationW(lpfileop: *mut SHFILEOPSTRUCTW) -> i32 {
::windows::core::link ! ( "shell32.dll""system" fn SHFileOperationW ( lpfileop : *mut SHFILEOPSTRUCTW ) -> i32 );
SHFileOperationW(lpfileop)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn SHFindFiles(pidlfolder: ::core::option::Option<*const Common::ITEMIDLIST>, pidlsavefile: ::core::option::Option<*const Common::ITEMIDLIST>) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn SHFindFiles ( pidlfolder : *const Common:: ITEMIDLIST , pidlsavefile : *const Common:: ITEMIDLIST ) -> super::super::Foundation:: BOOL );
SHFindFiles(::core::mem::transmute(pidlfolder.unwrap_or(::std::ptr::null())), ::core::mem::transmute(pidlsavefile.unwrap_or(::std::ptr::null())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
#[inline]
pub unsafe fn SHFind_InitMenuPopup<P0, P1>(hmenu: P0, hwndowner: P1, idcmdfirst: u32, idcmdlast: u32) -> ::core::option::Option<IContextMenu>
where
P0: ::std::convert::Into<super::WindowsAndMessaging::HMENU>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHFind_InitMenuPopup ( hmenu : super::WindowsAndMessaging:: HMENU , hwndowner : super::super::Foundation:: HWND , idcmdfirst : u32 , idcmdlast : u32 ) -> ::core::option::Option < IContextMenu > );
SHFind_InitMenuPopup(hmenu.into(), hwndowner.into(), idcmdfirst, idcmdlast)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHFlushSFCache() {
::windows::core::link ! ( "shell32.dll""system" fn SHFlushSFCache ( ) -> ( ) );
SHFlushSFCache()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHFormatDateTimeA(pft: *const super::super::Foundation::FILETIME, pdwflags: ::core::option::Option<*mut u32>, pszbuf: &mut [u8]) -> i32 {
::windows::core::link ! ( "shlwapi.dll""system" fn SHFormatDateTimeA ( pft : *const super::super::Foundation:: FILETIME , pdwflags : *mut u32 , pszbuf : :: windows::core::PSTR , cchbuf : u32 ) -> i32 );
SHFormatDateTimeA(pft, ::core::mem::transmute(pdwflags.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pszbuf.as_ptr()), pszbuf.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHFormatDateTimeW(pft: *const super::super::Foundation::FILETIME, pdwflags: ::core::option::Option<*mut u32>, pszbuf: &mut [u16]) -> i32 {
::windows::core::link ! ( "shlwapi.dll""system" fn SHFormatDateTimeW ( pft : *const super::super::Foundation:: FILETIME , pdwflags : *mut u32 , pszbuf : :: windows::core::PWSTR , cchbuf : u32 ) -> i32 );
SHFormatDateTimeW(pft, ::core::mem::transmute(pdwflags.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pszbuf.as_ptr()), pszbuf.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHFormatDrive<P0>(hwnd: P0, drive: u32, fmtid: SHFMT_ID, options: SHFMT_OPT) -> u32
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHFormatDrive ( hwnd : super::super::Foundation:: HWND , drive : u32 , fmtid : SHFMT_ID , options : SHFMT_OPT ) -> u32 );
SHFormatDrive(hwnd.into(), drive, fmtid, options)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHFree(pv: ::core::option::Option<*const ::core::ffi::c_void>) {
::windows::core::link ! ( "shell32.dll""system" fn SHFree ( pv : *const ::core::ffi::c_void ) -> ( ) );
SHFree(::core::mem::transmute(pv.unwrap_or(::std::ptr::null())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHFreeNameMappings<P0>(hnamemappings: P0)
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHFreeNameMappings ( hnamemappings : super::super::Foundation:: HANDLE ) -> ( ) );
SHFreeNameMappings(hnamemappings.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHFreeShared<P0>(hdata: P0, dwprocessid: u32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHFreeShared ( hdata : super::super::Foundation:: HANDLE , dwprocessid : u32 ) -> super::super::Foundation:: BOOL );
SHFreeShared(hdata.into(), dwprocessid)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn SHGetAttributesFromDataObject<P0>(pdo: P0, dwattributemask: u32, pdwattributes: ::core::option::Option<*mut u32>, pcitems: ::core::option::Option<*mut u32>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetAttributesFromDataObject ( pdo : * mut::core::ffi::c_void , dwattributemask : u32 , pdwattributes : *mut u32 , pcitems : *mut u32 ) -> :: windows::core::HRESULT );
SHGetAttributesFromDataObject(pdo.into().abi(), dwattributemask, ::core::mem::transmute(pdwattributes.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcitems.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn SHGetDataFromIDListA<P0>(psf: P0, pidl: *const Common::ITEMIDLIST, nformat: SHGDFIL_FORMAT, pv: *mut ::core::ffi::c_void, cb: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetDataFromIDListA ( psf : * mut::core::ffi::c_void , pidl : *const Common:: ITEMIDLIST , nformat : SHGDFIL_FORMAT , pv : *mut ::core::ffi::c_void , cb : i32 ) -> :: windows::core::HRESULT );
SHGetDataFromIDListA(psf.into().abi(), pidl, nformat, pv, cb).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn SHGetDataFromIDListW<P0>(psf: P0, pidl: *const Common::ITEMIDLIST, nformat: SHGDFIL_FORMAT, pv: *mut ::core::ffi::c_void, cb: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetDataFromIDListW ( psf : * mut::core::ffi::c_void , pidl : *const Common:: ITEMIDLIST , nformat : SHGDFIL_FORMAT , pv : *mut ::core::ffi::c_void , cb : i32 ) -> :: windows::core::HRESULT );
SHGetDataFromIDListW(psf.into().abi(), pidl, nformat, pv, cb).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHGetDesktopFolder() -> ::windows::core::Result<IShellFolder> {
::windows::core::link ! ( "shell32.dll""system" fn SHGetDesktopFolder ( ppshf : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHGetDesktopFolder(result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHGetDiskFreeSpaceExA<P0>(pszdirectoryname: P0, pulfreebytesavailabletocaller: ::core::option::Option<*mut u64>, pultotalnumberofbytes: ::core::option::Option<*mut u64>, pultotalnumberoffreebytes: ::core::option::Option<*mut u64>) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetDiskFreeSpaceExA ( pszdirectoryname : :: windows::core::PCSTR , pulfreebytesavailabletocaller : *mut u64 , pultotalnumberofbytes : *mut u64 , pultotalnumberoffreebytes : *mut u64 ) -> super::super::Foundation:: BOOL );
SHGetDiskFreeSpaceExA(pszdirectoryname.into().abi(), ::core::mem::transmute(pulfreebytesavailabletocaller.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pultotalnumberofbytes.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pultotalnumberoffreebytes.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHGetDiskFreeSpaceExW<P0>(pszdirectoryname: P0, pulfreebytesavailabletocaller: ::core::option::Option<*mut u64>, pultotalnumberofbytes: ::core::option::Option<*mut u64>, pultotalnumberoffreebytes: ::core::option::Option<*mut u64>) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetDiskFreeSpaceExW ( pszdirectoryname : :: windows::core::PCWSTR , pulfreebytesavailabletocaller : *mut u64 , pultotalnumberofbytes : *mut u64 , pultotalnumberoffreebytes : *mut u64 ) -> super::super::Foundation:: BOOL );
SHGetDiskFreeSpaceExW(pszdirectoryname.into().abi(), ::core::mem::transmute(pulfreebytesavailabletocaller.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pultotalnumberofbytes.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pultotalnumberoffreebytes.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHGetDriveMedia<P0>(pszdrive: P0) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetDriveMedia ( pszdrive : :: windows::core::PCWSTR , pdwmediacontent : *mut u32 ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHGetDriveMedia(pszdrive.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_Storage_FileSystem\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_FileSystem", feature = "Win32_UI_WindowsAndMessaging"))]
#[inline]
pub unsafe fn SHGetFileInfoA<P0>(pszpath: P0, dwfileattributes: super::super::Storage::FileSystem::FILE_FLAGS_AND_ATTRIBUTES, psfi: ::core::option::Option<*mut SHFILEINFOA>, cbfileinfo: u32, uflags: SHGFI_FLAGS) -> usize
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetFileInfoA ( pszpath : :: windows::core::PCSTR , dwfileattributes : super::super::Storage::FileSystem:: FILE_FLAGS_AND_ATTRIBUTES , psfi : *mut SHFILEINFOA , cbfileinfo : u32 , uflags : SHGFI_FLAGS ) -> usize );
SHGetFileInfoA(pszpath.into().abi(), dwfileattributes, ::core::mem::transmute(psfi.unwrap_or(::std::ptr::null_mut())), cbfileinfo, uflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Storage_FileSystem\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Storage_FileSystem", feature = "Win32_UI_WindowsAndMessaging"))]
#[inline]
pub unsafe fn SHGetFileInfoW<P0>(pszpath: P0, dwfileattributes: super::super::Storage::FileSystem::FILE_FLAGS_AND_ATTRIBUTES, psfi: ::core::option::Option<*mut SHFILEINFOW>, cbfileinfo: u32, uflags: SHGFI_FLAGS) -> usize
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetFileInfoW ( pszpath : :: windows::core::PCWSTR , dwfileattributes : super::super::Storage::FileSystem:: FILE_FLAGS_AND_ATTRIBUTES , psfi : *mut SHFILEINFOW , cbfileinfo : u32 , uflags : SHGFI_FLAGS ) -> usize );
SHGetFileInfoW(pszpath.into().abi(), dwfileattributes, ::core::mem::transmute(psfi.unwrap_or(::std::ptr::null_mut())), cbfileinfo, uflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn SHGetFolderLocation<P0, P1>(hwnd: P0, csidl: i32, htoken: P1, dwflags: u32) -> ::windows::core::Result<*mut Common::ITEMIDLIST>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetFolderLocation ( hwnd : super::super::Foundation:: HWND , csidl : i32 , htoken : super::super::Foundation:: HANDLE , dwflags : u32 , ppidl : *mut *mut Common:: ITEMIDLIST ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHGetFolderLocation(hwnd.into(), csidl, htoken.into(), dwflags, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHGetFolderPathA<P0, P1>(hwnd: P0, csidl: i32, htoken: P1, dwflags: u32, pszpath: &mut [u8; 260]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetFolderPathA ( hwnd : super::super::Foundation:: HWND , csidl : i32 , htoken : super::super::Foundation:: HANDLE , dwflags : u32 , pszpath : :: windows::core::PSTR ) -> :: windows::core::HRESULT );
SHGetFolderPathA(hwnd.into(), csidl, htoken.into(), dwflags, ::core::mem::transmute(pszpath.as_ptr())).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHGetFolderPathAndSubDirA<P0, P1, P2>(hwnd: P0, csidl: i32, htoken: P1, dwflags: u32, pszsubdir: P2, pszpath: &mut [u8; 260]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::HANDLE>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetFolderPathAndSubDirA ( hwnd : super::super::Foundation:: HWND , csidl : i32 , htoken : super::super::Foundation:: HANDLE , dwflags : u32 , pszsubdir : :: windows::core::PCSTR , pszpath : :: windows::core::PSTR ) -> :: windows::core::HRESULT );
SHGetFolderPathAndSubDirA(hwnd.into(), csidl, htoken.into(), dwflags, pszsubdir.into().abi(), ::core::mem::transmute(pszpath.as_ptr())).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHGetFolderPathAndSubDirW<P0, P1, P2>(hwnd: P0, csidl: i32, htoken: P1, dwflags: u32, pszsubdir: P2, pszpath: &mut [u16; 260]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::HANDLE>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetFolderPathAndSubDirW ( hwnd : super::super::Foundation:: HWND , csidl : i32 , htoken : super::super::Foundation:: HANDLE , dwflags : u32 , pszsubdir : :: windows::core::PCWSTR , pszpath : :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
SHGetFolderPathAndSubDirW(hwnd.into(), csidl, htoken.into(), dwflags, pszsubdir.into().abi(), ::core::mem::transmute(pszpath.as_ptr())).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHGetFolderPathW<P0, P1>(hwnd: P0, csidl: i32, htoken: P1, dwflags: u32, pszpath: &mut [u16; 260]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetFolderPathW ( hwnd : super::super::Foundation:: HWND , csidl : i32 , htoken : super::super::Foundation:: HANDLE , dwflags : u32 , pszpath : :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
SHGetFolderPathW(hwnd.into(), csidl, htoken.into(), dwflags, ::core::mem::transmute(pszpath.as_ptr())).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn SHGetIDListFromObject<P0>(punk: P0) -> ::windows::core::Result<*mut Common::ITEMIDLIST>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetIDListFromObject ( punk : * mut::core::ffi::c_void , ppidl : *mut *mut Common:: ITEMIDLIST ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHGetIDListFromObject(punk.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHGetIconOverlayIndexA<P0>(psziconpath: P0, iiconindex: i32) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetIconOverlayIndexA ( psziconpath : :: windows::core::PCSTR , iiconindex : i32 ) -> i32 );
SHGetIconOverlayIndexA(psziconpath.into().abi(), iiconindex)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHGetIconOverlayIndexW<P0>(psziconpath: P0, iiconindex: i32) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetIconOverlayIndexW ( psziconpath : :: windows::core::PCWSTR , iiconindex : i32 ) -> i32 );
SHGetIconOverlayIndexW(psziconpath.into().abi(), iiconindex)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHGetImageList<T>(iimagelist: i32) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetImageList ( iimagelist : i32 , riid : *const :: windows::core::GUID , ppvobj : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHGetImageList(iimagelist, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHGetInstanceExplorer() -> ::windows::core::Result<::windows::core::IUnknown> {
::windows::core::link ! ( "shell32.dll""system" fn SHGetInstanceExplorer ( ppunk : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHGetInstanceExplorer(result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHGetInverseCMAP(pbmap: &mut [u8]) -> ::windows::core::Result<()> {
::windows::core::link ! ( "shlwapi.dll""system" fn SHGetInverseCMAP ( pbmap : *mut u8 , cbmap : u32 ) -> :: windows::core::HRESULT );
SHGetInverseCMAP(::core::mem::transmute(pbmap.as_ptr()), pbmap.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn SHGetItemFromDataObject<P0, T>(pdtobj: P0, dwflags: DATAOBJ_GET_ITEM_FLAGS) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetItemFromDataObject ( pdtobj : * mut::core::ffi::c_void , dwflags : DATAOBJ_GET_ITEM_FLAGS , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHGetItemFromDataObject(pdtobj.into().abi(), dwflags, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHGetItemFromObject<P0, T>(punk: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetItemFromObject ( punk : * mut::core::ffi::c_void , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHGetItemFromObject(punk.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn SHGetKnownFolderIDList<P0>(rfid: *const ::windows::core::GUID, dwflags: u32, htoken: P0) -> ::windows::core::Result<*mut Common::ITEMIDLIST>
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetKnownFolderIDList ( rfid : *const :: windows::core::GUID , dwflags : u32 , htoken : super::super::Foundation:: HANDLE , ppidl : *mut *mut Common:: ITEMIDLIST ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHGetKnownFolderIDList(rfid, dwflags, htoken.into(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHGetKnownFolderItem<P0, T>(rfid: *const ::windows::core::GUID, flags: KNOWN_FOLDER_FLAG, htoken: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetKnownFolderItem ( rfid : *const :: windows::core::GUID , flags : KNOWN_FOLDER_FLAG , htoken : super::super::Foundation:: HANDLE , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHGetKnownFolderItem(rfid, flags, htoken.into(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHGetKnownFolderPath<P0>(rfid: *const ::windows::core::GUID, dwflags: KNOWN_FOLDER_FLAG, htoken: P0) -> ::windows::core::Result<::windows::core::PWSTR>
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetKnownFolderPath ( rfid : *const :: windows::core::GUID , dwflags : KNOWN_FOLDER_FLAG , htoken : super::super::Foundation:: HANDLE , ppszpath : *mut :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHGetKnownFolderPath(rfid, dwflags, htoken.into(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHGetLocalizedName<P0>(pszpath: P0, pszresmodule: &mut [u16], pidsres: *mut i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetLocalizedName ( pszpath : :: windows::core::PCWSTR , pszresmodule : :: windows::core::PWSTR , cch : u32 , pidsres : *mut i32 ) -> :: windows::core::HRESULT );
SHGetLocalizedName(pszpath.into().abi(), ::core::mem::transmute(pszresmodule.as_ptr()), pszresmodule.len() as _, pidsres).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn SHGetMalloc() -> ::windows::core::Result<super::super::System::Com::IMalloc> {
::windows::core::link ! ( "shell32.dll""system" fn SHGetMalloc ( ppmalloc : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHGetMalloc(result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn SHGetNameFromIDList(pidl: *const Common::ITEMIDLIST, sigdnname: SIGDN) -> ::windows::core::Result<::windows::core::PWSTR> {
::windows::core::link ! ( "shell32.dll""system" fn SHGetNameFromIDList ( pidl : *const Common:: ITEMIDLIST , sigdnname : SIGDN , ppszname : *mut :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHGetNameFromIDList(pidl, sigdnname, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHGetNewLinkInfoA<P0, P1>(pszlinkto: P0, pszdir: P1, pszname: &mut [u8; 260], pfmustcopy: *mut super::super::Foundation::BOOL, uflags: u32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetNewLinkInfoA ( pszlinkto : :: windows::core::PCSTR , pszdir : :: windows::core::PCSTR , pszname : :: windows::core::PSTR , pfmustcopy : *mut super::super::Foundation:: BOOL , uflags : u32 ) -> super::super::Foundation:: BOOL );
SHGetNewLinkInfoA(pszlinkto.into().abi(), pszdir.into().abi(), ::core::mem::transmute(pszname.as_ptr()), pfmustcopy, uflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHGetNewLinkInfoW<P0, P1>(pszlinkto: P0, pszdir: P1, pszname: &mut [u16; 260], pfmustcopy: *mut super::super::Foundation::BOOL, uflags: u32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetNewLinkInfoW ( pszlinkto : :: windows::core::PCWSTR , pszdir : :: windows::core::PCWSTR , pszname : :: windows::core::PWSTR , pfmustcopy : *mut super::super::Foundation:: BOOL , uflags : u32 ) -> super::super::Foundation:: BOOL );
SHGetNewLinkInfoW(pszlinkto.into().abi(), pszdir.into().abi(), ::core::mem::transmute(pszname.as_ptr()), pfmustcopy, uflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn SHGetPathFromIDListA(pidl: *const Common::ITEMIDLIST, pszpath: &mut [u8; 260]) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn SHGetPathFromIDListA ( pidl : *const Common:: ITEMIDLIST , pszpath : :: windows::core::PSTR ) -> super::super::Foundation:: BOOL );
SHGetPathFromIDListA(pidl, ::core::mem::transmute(pszpath.as_ptr()))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn SHGetPathFromIDListEx(pidl: *const Common::ITEMIDLIST, pszpath: &mut [u16], uopts: GPFIDL_FLAGS) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn SHGetPathFromIDListEx ( pidl : *const Common:: ITEMIDLIST , pszpath : :: windows::core::PWSTR , cchpath : u32 , uopts : GPFIDL_FLAGS ) -> super::super::Foundation:: BOOL );
SHGetPathFromIDListEx(pidl, ::core::mem::transmute(pszpath.as_ptr()), pszpath.len() as _, uopts)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn SHGetPathFromIDListW(pidl: *const Common::ITEMIDLIST, pszpath: &mut [u16; 260]) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn SHGetPathFromIDListW ( pidl : *const Common:: ITEMIDLIST , pszpath : :: windows::core::PWSTR ) -> super::super::Foundation:: BOOL );
SHGetPathFromIDListW(pidl, ::core::mem::transmute(pszpath.as_ptr()))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn SHGetRealIDL<P0>(psf: P0, pidlsimple: *const Common::ITEMIDLIST) -> ::windows::core::Result<*mut Common::ITEMIDLIST>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetRealIDL ( psf : * mut::core::ffi::c_void , pidlsimple : *const Common:: ITEMIDLIST , ppidlreal : *mut *mut Common:: ITEMIDLIST ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHGetRealIDL(psf.into().abi(), pidlsimple, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHGetSetFolderCustomSettings<P0>(pfcs: *mut SHFOLDERCUSTOMSETTINGS, pszpath: P0, dwreadwrite: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetSetFolderCustomSettings ( pfcs : *mut SHFOLDERCUSTOMSETTINGS , pszpath : :: windows::core::PCWSTR , dwreadwrite : u32 ) -> :: windows::core::HRESULT );
SHGetSetFolderCustomSettings(pfcs, pszpath.into().abi(), dwreadwrite).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHGetSetSettings<P0>(lpss: ::core::option::Option<*mut SHELLSTATEA>, dwmask: SSF_MASK, bset: P0)
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetSetSettings ( lpss : *mut SHELLSTATEA , dwmask : SSF_MASK , bset : super::super::Foundation:: BOOL ) -> ( ) );
SHGetSetSettings(::core::mem::transmute(lpss.unwrap_or(::std::ptr::null_mut())), dwmask, bset.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHGetSettings(psfs: *mut SHELLFLAGSTATE, dwmask: u32) {
::windows::core::link ! ( "shell32.dll""system" fn SHGetSettings ( psfs : *mut SHELLFLAGSTATE , dwmask : u32 ) -> ( ) );
SHGetSettings(psfs, dwmask)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn SHGetSpecialFolderLocation<P0>(hwnd: P0, csidl: i32) -> ::windows::core::Result<*mut Common::ITEMIDLIST>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetSpecialFolderLocation ( hwnd : super::super::Foundation:: HWND , csidl : i32 , ppidl : *mut *mut Common:: ITEMIDLIST ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHGetSpecialFolderLocation(hwnd.into(), csidl, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHGetSpecialFolderPathA<P0, P1>(hwnd: P0, pszpath: &mut [u8; 260], csidl: i32, fcreate: P1) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetSpecialFolderPathA ( hwnd : super::super::Foundation:: HWND , pszpath : :: windows::core::PSTR , csidl : i32 , fcreate : super::super::Foundation:: BOOL ) -> super::super::Foundation:: BOOL );
SHGetSpecialFolderPathA(hwnd.into(), ::core::mem::transmute(pszpath.as_ptr()), csidl, fcreate.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHGetSpecialFolderPathW<P0, P1>(hwnd: P0, pszpath: &mut [u16; 260], csidl: i32, fcreate: P1) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetSpecialFolderPathW ( hwnd : super::super::Foundation:: HWND , pszpath : :: windows::core::PWSTR , csidl : i32 , fcreate : super::super::Foundation:: BOOL ) -> super::super::Foundation:: BOOL );
SHGetSpecialFolderPathW(hwnd.into(), ::core::mem::transmute(pszpath.as_ptr()), csidl, fcreate.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
#[inline]
pub unsafe fn SHGetStockIconInfo(siid: SHSTOCKICONID, uflags: SHGSI_FLAGS, psii: *mut SHSTOCKICONINFO) -> ::windows::core::Result<()> {
::windows::core::link ! ( "shell32.dll""system" fn SHGetStockIconInfo ( siid : SHSTOCKICONID , uflags : SHGSI_FLAGS , psii : *mut SHSTOCKICONINFO ) -> :: windows::core::HRESULT );
SHGetStockIconInfo(siid, uflags, psii).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_UI_Shell_PropertiesSystem"))]
#[inline]
pub unsafe fn SHGetTemporaryPropertyForItem<P0>(psi: P0, propkey: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<super::super::System::Com::StructuredStorage::PROPVARIANT>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetTemporaryPropertyForItem ( psi : * mut::core::ffi::c_void , propkey : *const PropertiesSystem:: PROPERTYKEY , ppropvar : *mut super::super::System::Com::StructuredStorage:: PROPVARIANT ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHGetTemporaryPropertyForItem(psi.into().abi(), propkey, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHGetThreadRef() -> ::windows::core::Result<::windows::core::IUnknown> {
::windows::core::link ! ( "shlwapi.dll""system" fn SHGetThreadRef ( ppunk : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHGetThreadRef(result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHGetUnreadMailCountW<P0, P1>(hkeyuser: P0, pszmailaddress: P1, pdwcount: ::core::option::Option<*mut u32>, pfiletime: ::core::option::Option<*mut super::super::Foundation::FILETIME>, pszshellexecutecommand: ::core::option::Option<&mut [u16]>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHGetUnreadMailCountW ( hkeyuser : super::super::System::Registry:: HKEY , pszmailaddress : :: windows::core::PCWSTR , pdwcount : *mut u32 , pfiletime : *mut super::super::Foundation:: FILETIME , pszshellexecutecommand : :: windows::core::PWSTR , cchshellexecutecommand : i32 ) -> :: windows::core::HRESULT );
SHGetUnreadMailCountW(hkeyuser.into(), pszmailaddress.into().abi(), ::core::mem::transmute(pdwcount.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pfiletime.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pszshellexecutecommand.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pszshellexecutecommand.as_deref().map_or(0, |slice| slice.len() as _)).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHGetValueA<P0, P1, P2>(hkey: P0, pszsubkey: P1, pszvalue: P2, pdwtype: ::core::option::Option<*mut u32>, pvdata: ::core::option::Option<*mut ::core::ffi::c_void>, pcbdata: ::core::option::Option<*mut u32>) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHGetValueA ( hkey : super::super::System::Registry:: HKEY , pszsubkey : :: windows::core::PCSTR , pszvalue : :: windows::core::PCSTR , pdwtype : *mut u32 , pvdata : *mut ::core::ffi::c_void , pcbdata : *mut u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHGetValueA(hkey.into(), pszsubkey.into().abi(), pszvalue.into().abi(), ::core::mem::transmute(pdwtype.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcbdata.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHGetValueW<P0, P1, P2>(hkey: P0, pszsubkey: P1, pszvalue: P2, pdwtype: ::core::option::Option<*mut u32>, pvdata: ::core::option::Option<*mut ::core::ffi::c_void>, pcbdata: ::core::option::Option<*mut u32>) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHGetValueW ( hkey : super::super::System::Registry:: HKEY , pszsubkey : :: windows::core::PCWSTR , pszvalue : :: windows::core::PCWSTR , pdwtype : *mut u32 , pvdata : *mut ::core::ffi::c_void , pcbdata : *mut u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHGetValueW(hkey.into(), pszsubkey.into().abi(), pszvalue.into().abi(), ::core::mem::transmute(pdwtype.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcbdata.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn SHGetViewStatePropertyBag<P0, T>(pidl: ::core::option::Option<*const Common::ITEMIDLIST>, pszbagname: P0, dwflags: u32) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHGetViewStatePropertyBag ( pidl : *const Common:: ITEMIDLIST , pszbagname : :: windows::core::PCWSTR , dwflags : u32 , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHGetViewStatePropertyBag(::core::mem::transmute(pidl.unwrap_or(::std::ptr::null())), pszbagname.into().abi(), dwflags, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHGlobalCounterDecrement(id: SHGLOBALCOUNTER) -> i32 {
::windows::core::link ! ( "shlwapi.dll""system" fn SHGlobalCounterDecrement ( id : SHGLOBALCOUNTER ) -> i32 );
SHGlobalCounterDecrement(id)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHGlobalCounterGetValue(id: SHGLOBALCOUNTER) -> i32 {
::windows::core::link ! ( "shlwapi.dll""system" fn SHGlobalCounterGetValue ( id : SHGLOBALCOUNTER ) -> i32 );
SHGlobalCounterGetValue(id)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHGlobalCounterIncrement(id: SHGLOBALCOUNTER) -> i32 {
::windows::core::link ! ( "shlwapi.dll""system" fn SHGlobalCounterIncrement ( id : SHGLOBALCOUNTER ) -> i32 );
SHGlobalCounterIncrement(id)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn SHHandleUpdateImage(pidlextra: *const Common::ITEMIDLIST) -> i32 {
::windows::core::link ! ( "shell32.dll""system" fn SHHandleUpdateImage ( pidlextra : *const Common:: ITEMIDLIST ) -> i32 );
SHHandleUpdateImage(pidlextra)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn SHILCreateFromPath<P0>(pszpath: P0, ppidl: *mut *mut Common::ITEMIDLIST, rgfinout: ::core::option::Option<*mut u32>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHILCreateFromPath ( pszpath : :: windows::core::PCWSTR , ppidl : *mut *mut Common:: ITEMIDLIST , rgfinout : *mut u32 ) -> :: windows::core::HRESULT );
SHILCreateFromPath(pszpath.into().abi(), ppidl, ::core::mem::transmute(rgfinout.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHInvokePrinterCommandA<P0, P1, P2, P3>(hwnd: P0, uaction: u32, lpbuf1: P1, lpbuf2: P2, fmodal: P3) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P3: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHInvokePrinterCommandA ( hwnd : super::super::Foundation:: HWND , uaction : u32 , lpbuf1 : :: windows::core::PCSTR , lpbuf2 : :: windows::core::PCSTR , fmodal : super::super::Foundation:: BOOL ) -> super::super::Foundation:: BOOL );
SHInvokePrinterCommandA(hwnd.into(), uaction, lpbuf1.into().abi(), lpbuf2.into().abi(), fmodal.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHInvokePrinterCommandW<P0, P1, P2, P3>(hwnd: P0, uaction: u32, lpbuf1: P1, lpbuf2: P2, fmodal: P3) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHInvokePrinterCommandW ( hwnd : super::super::Foundation:: HWND , uaction : u32 , lpbuf1 : :: windows::core::PCWSTR , lpbuf2 : :: windows::core::PCWSTR , fmodal : super::super::Foundation:: BOOL ) -> super::super::Foundation:: BOOL );
SHInvokePrinterCommandW(hwnd.into(), uaction, lpbuf1.into().abi(), lpbuf2.into().abi(), fmodal.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHIsFileAvailableOffline<P0>(pwszpath: P0, pdwstatus: ::core::option::Option<*mut u32>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHIsFileAvailableOffline ( pwszpath : :: windows::core::PCWSTR , pdwstatus : *mut u32 ) -> :: windows::core::HRESULT );
SHIsFileAvailableOffline(pwszpath.into().abi(), ::core::mem::transmute(pdwstatus.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHIsLowMemoryMachine(dwtype: u32) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn SHIsLowMemoryMachine ( dwtype : u32 ) -> super::super::Foundation:: BOOL );
SHIsLowMemoryMachine(dwtype)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHLimitInputEdit<P0, P1>(hwndedit: P0, psf: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHLimitInputEdit ( hwndedit : super::super::Foundation:: HWND , psf : * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
SHLimitInputEdit(hwndedit.into(), psf.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHLoadInProc(rclsid: *const ::windows::core::GUID) -> ::windows::core::Result<()> {
::windows::core::link ! ( "shell32.dll""system" fn SHLoadInProc ( rclsid : *const :: windows::core::GUID ) -> :: windows::core::HRESULT );
SHLoadInProc(rclsid).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHLoadIndirectString<P0>(pszsource: P0, pszoutbuf: &mut [u16], ppvreserved: ::core::option::Option<*mut *mut ::core::ffi::c_void>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHLoadIndirectString ( pszsource : :: windows::core::PCWSTR , pszoutbuf : :: windows::core::PWSTR , cchoutbuf : u32 , ppvreserved : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
SHLoadIndirectString(pszsource.into().abi(), ::core::mem::transmute(pszoutbuf.as_ptr()), pszoutbuf.len() as _, ::core::mem::transmute(ppvreserved.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHLoadNonloadedIconOverlayIdentifiers() -> ::windows::core::Result<()> {
::windows::core::link ! ( "shell32.dll""system" fn SHLoadNonloadedIconOverlayIdentifiers ( ) -> :: windows::core::HRESULT );
SHLoadNonloadedIconOverlayIdentifiers().ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHLockShared<P0>(hdata: P0, dwprocessid: u32) -> *mut ::core::ffi::c_void
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHLockShared ( hdata : super::super::Foundation:: HANDLE , dwprocessid : u32 ) -> *mut ::core::ffi::c_void );
SHLockShared(hdata.into(), dwprocessid)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn SHMapPIDLToSystemImageListIndex<P0>(pshf: P0, pidl: *const Common::ITEMIDLIST, piindexsel: ::core::option::Option<*mut i32>) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHMapPIDLToSystemImageListIndex ( pshf : * mut::core::ffi::c_void , pidl : *const Common:: ITEMIDLIST , piindexsel : *mut i32 ) -> i32 );
SHMapPIDLToSystemImageListIndex(pshf.into().abi(), pidl, ::core::mem::transmute(piindexsel.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHMessageBoxCheckA<P0, P1, P2, P3>(hwnd: P0, psztext: P1, pszcaption: P2, utype: u32, idefault: i32, pszregval: P3) -> i32
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHMessageBoxCheckA ( hwnd : super::super::Foundation:: HWND , psztext : :: windows::core::PCSTR , pszcaption : :: windows::core::PCSTR , utype : u32 , idefault : i32 , pszregval : :: windows::core::PCSTR ) -> i32 );
SHMessageBoxCheckA(hwnd.into(), psztext.into().abi(), pszcaption.into().abi(), utype, idefault, pszregval.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHMessageBoxCheckW<P0, P1, P2, P3>(hwnd: P0, psztext: P1, pszcaption: P2, utype: u32, idefault: i32, pszregval: P3) -> i32
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHMessageBoxCheckW ( hwnd : super::super::Foundation:: HWND , psztext : :: windows::core::PCWSTR , pszcaption : :: windows::core::PCWSTR , utype : u32 , idefault : i32 , pszregval : :: windows::core::PCWSTR ) -> i32 );
SHMessageBoxCheckW(hwnd.into(), psztext.into().abi(), pszcaption.into().abi(), utype, idefault, pszregval.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[inline]
pub unsafe fn SHMultiFileProperties<P0>(pdtobj: P0, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHMultiFileProperties ( pdtobj : * mut::core::ffi::c_void , dwflags : u32 ) -> :: windows::core::HRESULT );
SHMultiFileProperties(pdtobj.into().abi(), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHObjectProperties<P0, P1, P2>(hwnd: P0, shopobjecttype: SHOP_TYPE, pszobjectname: P1, pszpropertypage: P2) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHObjectProperties ( hwnd : super::super::Foundation:: HWND , shopobjecttype : SHOP_TYPE , pszobjectname : :: windows::core::PCWSTR , pszpropertypage : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
SHObjectProperties(hwnd.into(), shopobjecttype, pszobjectname.into().abi(), pszpropertypage.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn SHOpenFolderAndSelectItems(pidlfolder: *const Common::ITEMIDLIST, apidl: ::core::option::Option<&[*const Common::ITEMIDLIST]>, dwflags: u32) -> ::windows::core::Result<()> {
::windows::core::link ! ( "shell32.dll""system" fn SHOpenFolderAndSelectItems ( pidlfolder : *const Common:: ITEMIDLIST , cidl : u32 , apidl : *const *const Common:: ITEMIDLIST , dwflags : u32 ) -> :: windows::core::HRESULT );
SHOpenFolderAndSelectItems(pidlfolder, apidl.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(apidl.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHOpenPropSheetW<P0, P1, P2, P3>(pszcaption: P0, ahkeys: ::core::option::Option<&[super::super::System::Registry::HKEY]>, pclsiddefault: ::core::option::Option<*const ::windows::core::GUID>, pdtobj: P1, psb: P2, pstartpage: P3) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
P2: ::std::convert::Into<::windows::core::InParam<IShellBrowser>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHOpenPropSheetW ( pszcaption : :: windows::core::PCWSTR , ahkeys : *const super::super::System::Registry:: HKEY , ckeys : u32 , pclsiddefault : *const :: windows::core::GUID , pdtobj : * mut::core::ffi::c_void , psb : * mut::core::ffi::c_void , pstartpage : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
SHOpenPropSheetW(pszcaption.into().abi(), ::core::mem::transmute(ahkeys.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), ahkeys.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pclsiddefault.unwrap_or(::std::ptr::null())), pdtobj.into().abi(), psb.into().abi(), pstartpage.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHOpenRegStream2A<P0, P1, P2>(hkey: P0, pszsubkey: P1, pszvalue: P2, grfmode: u32) -> ::core::option::Option<super::super::System::Com::IStream>
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHOpenRegStream2A ( hkey : super::super::System::Registry:: HKEY , pszsubkey : :: windows::core::PCSTR , pszvalue : :: windows::core::PCSTR , grfmode : u32 ) -> ::core::option::Option < super::super::System::Com:: IStream > );
SHOpenRegStream2A(hkey.into(), pszsubkey.into().abi(), pszvalue.into().abi(), grfmode)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHOpenRegStream2W<P0, P1, P2>(hkey: P0, pszsubkey: P1, pszvalue: P2, grfmode: u32) -> ::core::option::Option<super::super::System::Com::IStream>
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHOpenRegStream2W ( hkey : super::super::System::Registry:: HKEY , pszsubkey : :: windows::core::PCWSTR , pszvalue : :: windows::core::PCWSTR , grfmode : u32 ) -> ::core::option::Option < super::super::System::Com:: IStream > );
SHOpenRegStream2W(hkey.into(), pszsubkey.into().abi(), pszvalue.into().abi(), grfmode)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHOpenRegStreamA<P0, P1, P2>(hkey: P0, pszsubkey: P1, pszvalue: P2, grfmode: u32) -> ::core::option::Option<super::super::System::Com::IStream>
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHOpenRegStreamA ( hkey : super::super::System::Registry:: HKEY , pszsubkey : :: windows::core::PCSTR , pszvalue : :: windows::core::PCSTR , grfmode : u32 ) -> ::core::option::Option < super::super::System::Com:: IStream > );
SHOpenRegStreamA(hkey.into(), pszsubkey.into().abi(), pszvalue.into().abi(), grfmode)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHOpenRegStreamW<P0, P1, P2>(hkey: P0, pszsubkey: P1, pszvalue: P2, grfmode: u32) -> ::core::option::Option<super::super::System::Com::IStream>
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHOpenRegStreamW ( hkey : super::super::System::Registry:: HKEY , pszsubkey : :: windows::core::PCWSTR , pszvalue : :: windows::core::PCWSTR , grfmode : u32 ) -> ::core::option::Option < super::super::System::Com:: IStream > );
SHOpenRegStreamW(hkey.into(), pszsubkey.into().abi(), pszvalue.into().abi(), grfmode)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHOpenWithDialog<P0>(hwndparent: P0, poainfo: *const OPENASINFO) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHOpenWithDialog ( hwndparent : super::super::Foundation:: HWND , poainfo : *const OPENASINFO ) -> :: windows::core::HRESULT );
SHOpenWithDialog(hwndparent.into(), poainfo).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn SHParseDisplayName<P0, P1>(pszname: P0, pbc: P1, ppidl: *mut *mut Common::ITEMIDLIST, sfgaoin: u32, psfgaoout: ::core::option::Option<*mut u32>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHParseDisplayName ( pszname : :: windows::core::PCWSTR , pbc : * mut::core::ffi::c_void , ppidl : *mut *mut Common:: ITEMIDLIST , sfgaoin : u32 , psfgaoout : *mut u32 ) -> :: windows::core::HRESULT );
SHParseDisplayName(pszname.into().abi(), pbc.into().abi(), ppidl, sfgaoin, ::core::mem::transmute(psfgaoout.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHPathPrepareForWriteA<P0, P1, P2>(hwnd: P0, punkenablemodless: P1, pszpath: P2, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHPathPrepareForWriteA ( hwnd : super::super::Foundation:: HWND , punkenablemodless : * mut::core::ffi::c_void , pszpath : :: windows::core::PCSTR , dwflags : u32 ) -> :: windows::core::HRESULT );
SHPathPrepareForWriteA(hwnd.into(), punkenablemodless.into().abi(), pszpath.into().abi(), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHPathPrepareForWriteW<P0, P1, P2>(hwnd: P0, punkenablemodless: P1, pszpath: P2, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHPathPrepareForWriteW ( hwnd : super::super::Foundation:: HWND , punkenablemodless : * mut::core::ffi::c_void , pszpath : :: windows::core::PCWSTR , dwflags : u32 ) -> :: windows::core::HRESULT );
SHPathPrepareForWriteW(hwnd.into(), punkenablemodless.into().abi(), pszpath.into().abi(), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHQueryInfoKeyA<P0>(hkey: P0, pcsubkeys: ::core::option::Option<*mut u32>, pcchmaxsubkeylen: ::core::option::Option<*mut u32>, pcvalues: ::core::option::Option<*mut u32>, pcchmaxvaluenamelen: ::core::option::Option<*mut u32>) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHQueryInfoKeyA ( hkey : super::super::System::Registry:: HKEY , pcsubkeys : *mut u32 , pcchmaxsubkeylen : *mut u32 , pcvalues : *mut u32 , pcchmaxvaluenamelen : *mut u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHQueryInfoKeyA(hkey.into(), ::core::mem::transmute(pcsubkeys.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcchmaxsubkeylen.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcvalues.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcchmaxvaluenamelen.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHQueryInfoKeyW<P0>(hkey: P0, pcsubkeys: ::core::option::Option<*mut u32>, pcchmaxsubkeylen: ::core::option::Option<*mut u32>, pcvalues: ::core::option::Option<*mut u32>, pcchmaxvaluenamelen: ::core::option::Option<*mut u32>) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHQueryInfoKeyW ( hkey : super::super::System::Registry:: HKEY , pcsubkeys : *mut u32 , pcchmaxsubkeylen : *mut u32 , pcvalues : *mut u32 , pcchmaxvaluenamelen : *mut u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHQueryInfoKeyW(hkey.into(), ::core::mem::transmute(pcsubkeys.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcchmaxsubkeylen.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcvalues.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcchmaxvaluenamelen.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHQueryRecycleBinA<P0>(pszrootpath: P0, pshqueryrbinfo: *mut SHQUERYRBINFO) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHQueryRecycleBinA ( pszrootpath : :: windows::core::PCSTR , pshqueryrbinfo : *mut SHQUERYRBINFO ) -> :: windows::core::HRESULT );
SHQueryRecycleBinA(pszrootpath.into().abi(), pshqueryrbinfo).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHQueryRecycleBinW<P0>(pszrootpath: P0, pshqueryrbinfo: *mut SHQUERYRBINFO) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHQueryRecycleBinW ( pszrootpath : :: windows::core::PCWSTR , pshqueryrbinfo : *mut SHQUERYRBINFO ) -> :: windows::core::HRESULT );
SHQueryRecycleBinW(pszrootpath.into().abi(), pshqueryrbinfo).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHQueryUserNotificationState() -> ::windows::core::Result<QUERY_USER_NOTIFICATION_STATE> {
::windows::core::link ! ( "shell32.dll""system" fn SHQueryUserNotificationState ( pquns : *mut QUERY_USER_NOTIFICATION_STATE ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHQueryUserNotificationState(result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHQueryValueExA<P0, P1>(hkey: P0, pszvalue: P1, pdwreserved: ::core::option::Option<*mut u32>, pdwtype: ::core::option::Option<*mut u32>, pvdata: ::core::option::Option<*mut ::core::ffi::c_void>, pcbdata: ::core::option::Option<*mut u32>) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHQueryValueExA ( hkey : super::super::System::Registry:: HKEY , pszvalue : :: windows::core::PCSTR , pdwreserved : *mut u32 , pdwtype : *mut u32 , pvdata : *mut ::core::ffi::c_void , pcbdata : *mut u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHQueryValueExA(hkey.into(), pszvalue.into().abi(), ::core::mem::transmute(pdwreserved.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pdwtype.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcbdata.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHQueryValueExW<P0, P1>(hkey: P0, pszvalue: P1, pdwreserved: ::core::option::Option<*mut u32>, pdwtype: ::core::option::Option<*mut u32>, pvdata: ::core::option::Option<*mut ::core::ffi::c_void>, pcbdata: ::core::option::Option<*mut u32>) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHQueryValueExW ( hkey : super::super::System::Registry:: HKEY , pszvalue : :: windows::core::PCWSTR , pdwreserved : *mut u32 , pdwtype : *mut u32 , pvdata : *mut ::core::ffi::c_void , pcbdata : *mut u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHQueryValueExW(hkey.into(), pszvalue.into().abi(), ::core::mem::transmute(pdwreserved.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pdwtype.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcbdata.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegCloseUSKey(huskey: isize) -> super::super::Foundation::WIN32_ERROR {
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegCloseUSKey ( huskey : isize ) -> super::super::Foundation:: WIN32_ERROR );
SHRegCloseUSKey(huskey)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegCreateUSKeyA<P0>(pszpath: P0, samdesired: u32, hrelativeuskey: isize, phnewuskey: *mut isize, dwflags: u32) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegCreateUSKeyA ( pszpath : :: windows::core::PCSTR , samdesired : u32 , hrelativeuskey : isize , phnewuskey : *mut isize , dwflags : u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHRegCreateUSKeyA(pszpath.into().abi(), samdesired, hrelativeuskey, phnewuskey, dwflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegCreateUSKeyW<P0>(pwzpath: P0, samdesired: u32, hrelativeuskey: isize, phnewuskey: *mut isize, dwflags: u32) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegCreateUSKeyW ( pwzpath : :: windows::core::PCWSTR , samdesired : u32 , hrelativeuskey : isize , phnewuskey : *mut isize , dwflags : u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHRegCreateUSKeyW(pwzpath.into().abi(), samdesired, hrelativeuskey, phnewuskey, dwflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegDeleteEmptyUSKeyA<P0>(huskey: isize, pszsubkey: P0, delregflags: SHREGDEL_FLAGS) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegDeleteEmptyUSKeyA ( huskey : isize , pszsubkey : :: windows::core::PCSTR , delregflags : SHREGDEL_FLAGS ) -> super::super::Foundation:: WIN32_ERROR );
SHRegDeleteEmptyUSKeyA(huskey, pszsubkey.into().abi(), delregflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegDeleteEmptyUSKeyW<P0>(huskey: isize, pwzsubkey: P0, delregflags: SHREGDEL_FLAGS) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegDeleteEmptyUSKeyW ( huskey : isize , pwzsubkey : :: windows::core::PCWSTR , delregflags : SHREGDEL_FLAGS ) -> super::super::Foundation:: WIN32_ERROR );
SHRegDeleteEmptyUSKeyW(huskey, pwzsubkey.into().abi(), delregflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegDeleteUSValueA<P0>(huskey: isize, pszvalue: P0, delregflags: SHREGDEL_FLAGS) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegDeleteUSValueA ( huskey : isize , pszvalue : :: windows::core::PCSTR , delregflags : SHREGDEL_FLAGS ) -> super::super::Foundation:: WIN32_ERROR );
SHRegDeleteUSValueA(huskey, pszvalue.into().abi(), delregflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegDeleteUSValueW<P0>(huskey: isize, pwzvalue: P0, delregflags: SHREGDEL_FLAGS) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegDeleteUSValueW ( huskey : isize , pwzvalue : :: windows::core::PCWSTR , delregflags : SHREGDEL_FLAGS ) -> super::super::Foundation:: WIN32_ERROR );
SHRegDeleteUSValueW(huskey, pwzvalue.into().abi(), delregflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Registry\"`*"]
#[cfg(feature = "Win32_System_Registry")]
#[inline]
pub unsafe fn SHRegDuplicateHKey<P0>(hkey: P0) -> super::super::System::Registry::HKEY
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegDuplicateHKey ( hkey : super::super::System::Registry:: HKEY ) -> super::super::System::Registry:: HKEY );
SHRegDuplicateHKey(hkey.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegEnumUSKeyA(huskey: isize, dwindex: u32, pszname: ::windows::core::PSTR, pcchname: *mut u32, enumregflags: SHREGENUM_FLAGS) -> super::super::Foundation::WIN32_ERROR {
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegEnumUSKeyA ( huskey : isize , dwindex : u32 , pszname : :: windows::core::PSTR , pcchname : *mut u32 , enumregflags : SHREGENUM_FLAGS ) -> super::super::Foundation:: WIN32_ERROR );
SHRegEnumUSKeyA(huskey, dwindex, ::core::mem::transmute(pszname), pcchname, enumregflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegEnumUSKeyW(huskey: isize, dwindex: u32, pwzname: ::windows::core::PWSTR, pcchname: *mut u32, enumregflags: SHREGENUM_FLAGS) -> super::super::Foundation::WIN32_ERROR {
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegEnumUSKeyW ( huskey : isize , dwindex : u32 , pwzname : :: windows::core::PWSTR , pcchname : *mut u32 , enumregflags : SHREGENUM_FLAGS ) -> super::super::Foundation:: WIN32_ERROR );
SHRegEnumUSKeyW(huskey, dwindex, ::core::mem::transmute(pwzname), pcchname, enumregflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegEnumUSValueA(huskey: isize, dwindex: u32, pszvaluename: ::windows::core::PSTR, pcchvaluename: *mut u32, pdwtype: ::core::option::Option<*mut u32>, pvdata: ::core::option::Option<*mut ::core::ffi::c_void>, pcbdata: ::core::option::Option<*mut u32>, enumregflags: SHREGENUM_FLAGS) -> super::super::Foundation::WIN32_ERROR {
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegEnumUSValueA ( huskey : isize , dwindex : u32 , pszvaluename : :: windows::core::PSTR , pcchvaluename : *mut u32 , pdwtype : *mut u32 , pvdata : *mut ::core::ffi::c_void , pcbdata : *mut u32 , enumregflags : SHREGENUM_FLAGS ) -> super::super::Foundation:: WIN32_ERROR );
SHRegEnumUSValueA(huskey, dwindex, ::core::mem::transmute(pszvaluename), pcchvaluename, ::core::mem::transmute(pdwtype.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcbdata.unwrap_or(::std::ptr::null_mut())), enumregflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegEnumUSValueW(huskey: isize, dwindex: u32, pszvaluename: ::windows::core::PWSTR, pcchvaluename: *mut u32, pdwtype: ::core::option::Option<*mut u32>, pvdata: ::core::option::Option<*mut ::core::ffi::c_void>, pcbdata: ::core::option::Option<*mut u32>, enumregflags: SHREGENUM_FLAGS) -> super::super::Foundation::WIN32_ERROR {
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegEnumUSValueW ( huskey : isize , dwindex : u32 , pszvaluename : :: windows::core::PWSTR , pcchvaluename : *mut u32 , pdwtype : *mut u32 , pvdata : *mut ::core::ffi::c_void , pcbdata : *mut u32 , enumregflags : SHREGENUM_FLAGS ) -> super::super::Foundation:: WIN32_ERROR );
SHRegEnumUSValueW(huskey, dwindex, ::core::mem::transmute(pszvaluename), pcchvaluename, ::core::mem::transmute(pdwtype.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcbdata.unwrap_or(::std::ptr::null_mut())), enumregflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegGetBoolUSValueA<P0, P1, P2, P3>(pszsubkey: P0, pszvalue: P1, fignorehkcu: P2, fdefault: P3) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<super::super::Foundation::BOOL>,
P3: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegGetBoolUSValueA ( pszsubkey : :: windows::core::PCSTR , pszvalue : :: windows::core::PCSTR , fignorehkcu : super::super::Foundation:: BOOL , fdefault : super::super::Foundation:: BOOL ) -> super::super::Foundation:: BOOL );
SHRegGetBoolUSValueA(pszsubkey.into().abi(), pszvalue.into().abi(), fignorehkcu.into(), fdefault.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegGetBoolUSValueW<P0, P1, P2, P3>(pszsubkey: P0, pszvalue: P1, fignorehkcu: P2, fdefault: P3) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<super::super::Foundation::BOOL>,
P3: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegGetBoolUSValueW ( pszsubkey : :: windows::core::PCWSTR , pszvalue : :: windows::core::PCWSTR , fignorehkcu : super::super::Foundation:: BOOL , fdefault : super::super::Foundation:: BOOL ) -> super::super::Foundation:: BOOL );
SHRegGetBoolUSValueW(pszsubkey.into().abi(), pszvalue.into().abi(), fignorehkcu.into(), fdefault.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHRegGetIntW<P0, P1>(hk: P0, pwzkey: P1, idefault: i32) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegGetIntW ( hk : super::super::System::Registry:: HKEY , pwzkey : :: windows::core::PCWSTR , idefault : i32 ) -> super::super::Foundation:: WIN32_ERROR );
SHRegGetIntW(hk.into(), pwzkey.into().abi(), idefault)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHRegGetPathA<P0, P1, P2>(hkey: P0, pcszsubkey: P1, pcszvalue: P2, pszpath: &mut [u8; 260], dwflags: u32) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegGetPathA ( hkey : super::super::System::Registry:: HKEY , pcszsubkey : :: windows::core::PCSTR , pcszvalue : :: windows::core::PCSTR , pszpath : :: windows::core::PSTR , dwflags : u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHRegGetPathA(hkey.into(), pcszsubkey.into().abi(), pcszvalue.into().abi(), ::core::mem::transmute(pszpath.as_ptr()), dwflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHRegGetPathW<P0, P1, P2>(hkey: P0, pcszsubkey: P1, pcszvalue: P2, pszpath: &mut [u16; 260], dwflags: u32) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegGetPathW ( hkey : super::super::System::Registry:: HKEY , pcszsubkey : :: windows::core::PCWSTR , pcszvalue : :: windows::core::PCWSTR , pszpath : :: windows::core::PWSTR , dwflags : u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHRegGetPathW(hkey.into(), pcszsubkey.into().abi(), pcszvalue.into().abi(), ::core::mem::transmute(pszpath.as_ptr()), dwflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegGetUSValueA<P0, P1, P2>(pszsubkey: P0, pszvalue: P1, pdwtype: ::core::option::Option<*mut u32>, pvdata: ::core::option::Option<*mut ::core::ffi::c_void>, pcbdata: ::core::option::Option<*mut u32>, fignorehkcu: P2, pvdefaultdata: ::core::option::Option<*const ::core::ffi::c_void>, dwdefaultdatasize: u32) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegGetUSValueA ( pszsubkey : :: windows::core::PCSTR , pszvalue : :: windows::core::PCSTR , pdwtype : *mut u32 , pvdata : *mut ::core::ffi::c_void , pcbdata : *mut u32 , fignorehkcu : super::super::Foundation:: BOOL , pvdefaultdata : *const ::core::ffi::c_void , dwdefaultdatasize : u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHRegGetUSValueA(pszsubkey.into().abi(), pszvalue.into().abi(), ::core::mem::transmute(pdwtype.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcbdata.unwrap_or(::std::ptr::null_mut())), fignorehkcu.into(), ::core::mem::transmute(pvdefaultdata.unwrap_or(::std::ptr::null())), dwdefaultdatasize)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegGetUSValueW<P0, P1, P2>(pszsubkey: P0, pszvalue: P1, pdwtype: ::core::option::Option<*mut u32>, pvdata: ::core::option::Option<*mut ::core::ffi::c_void>, pcbdata: ::core::option::Option<*mut u32>, fignorehkcu: P2, pvdefaultdata: ::core::option::Option<*const ::core::ffi::c_void>, dwdefaultdatasize: u32) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegGetUSValueW ( pszsubkey : :: windows::core::PCWSTR , pszvalue : :: windows::core::PCWSTR , pdwtype : *mut u32 , pvdata : *mut ::core::ffi::c_void , pcbdata : *mut u32 , fignorehkcu : super::super::Foundation:: BOOL , pvdefaultdata : *const ::core::ffi::c_void , dwdefaultdatasize : u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHRegGetUSValueW(pszsubkey.into().abi(), pszvalue.into().abi(), ::core::mem::transmute(pdwtype.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcbdata.unwrap_or(::std::ptr::null_mut())), fignorehkcu.into(), ::core::mem::transmute(pvdefaultdata.unwrap_or(::std::ptr::null())), dwdefaultdatasize)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHRegGetValueA<P0, P1, P2>(hkey: P0, pszsubkey: P1, pszvalue: P2, srrfflags: i32, pdwtype: ::core::option::Option<*mut u32>, pvdata: ::core::option::Option<*mut ::core::ffi::c_void>, pcbdata: ::core::option::Option<*mut u32>) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegGetValueA ( hkey : super::super::System::Registry:: HKEY , pszsubkey : :: windows::core::PCSTR , pszvalue : :: windows::core::PCSTR , srrfflags : i32 , pdwtype : *mut u32 , pvdata : *mut ::core::ffi::c_void , pcbdata : *mut u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHRegGetValueA(hkey.into(), pszsubkey.into().abi(), pszvalue.into().abi(), srrfflags, ::core::mem::transmute(pdwtype.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcbdata.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegGetValueFromHKCUHKLM<P0, P1>(pwszkey: P0, pwszvalue: P1, srrfflags: i32, pdwtype: ::core::option::Option<*mut u32>, pvdata: ::core::option::Option<*mut ::core::ffi::c_void>, pcbdata: ::core::option::Option<*mut u32>) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegGetValueFromHKCUHKLM ( pwszkey : :: windows::core::PCWSTR , pwszvalue : :: windows::core::PCWSTR , srrfflags : i32 , pdwtype : *mut u32 , pvdata : *mut ::core::ffi::c_void , pcbdata : *mut u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHRegGetValueFromHKCUHKLM(pwszkey.into().abi(), pwszvalue.into().abi(), srrfflags, ::core::mem::transmute(pdwtype.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcbdata.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHRegGetValueW<P0, P1, P2>(hkey: P0, pszsubkey: P1, pszvalue: P2, srrfflags: i32, pdwtype: ::core::option::Option<*mut u32>, pvdata: ::core::option::Option<*mut ::core::ffi::c_void>, pcbdata: ::core::option::Option<*mut u32>) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegGetValueW ( hkey : super::super::System::Registry:: HKEY , pszsubkey : :: windows::core::PCWSTR , pszvalue : :: windows::core::PCWSTR , srrfflags : i32 , pdwtype : *mut u32 , pvdata : *mut ::core::ffi::c_void , pcbdata : *mut u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHRegGetValueW(hkey.into(), pszsubkey.into().abi(), pszvalue.into().abi(), srrfflags, ::core::mem::transmute(pdwtype.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcbdata.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegOpenUSKeyA<P0, P1>(pszpath: P0, samdesired: u32, hrelativeuskey: isize, phnewuskey: *mut isize, fignorehkcu: P1) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegOpenUSKeyA ( pszpath : :: windows::core::PCSTR , samdesired : u32 , hrelativeuskey : isize , phnewuskey : *mut isize , fignorehkcu : super::super::Foundation:: BOOL ) -> super::super::Foundation:: WIN32_ERROR );
SHRegOpenUSKeyA(pszpath.into().abi(), samdesired, hrelativeuskey, phnewuskey, fignorehkcu.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegOpenUSKeyW<P0, P1>(pwzpath: P0, samdesired: u32, hrelativeuskey: isize, phnewuskey: *mut isize, fignorehkcu: P1) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegOpenUSKeyW ( pwzpath : :: windows::core::PCWSTR , samdesired : u32 , hrelativeuskey : isize , phnewuskey : *mut isize , fignorehkcu : super::super::Foundation:: BOOL ) -> super::super::Foundation:: WIN32_ERROR );
SHRegOpenUSKeyW(pwzpath.into().abi(), samdesired, hrelativeuskey, phnewuskey, fignorehkcu.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegQueryInfoUSKeyA(huskey: isize, pcsubkeys: ::core::option::Option<*mut u32>, pcchmaxsubkeylen: ::core::option::Option<*mut u32>, pcvalues: ::core::option::Option<*mut u32>, pcchmaxvaluenamelen: ::core::option::Option<*mut u32>, enumregflags: SHREGENUM_FLAGS) -> super::super::Foundation::WIN32_ERROR {
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegQueryInfoUSKeyA ( huskey : isize , pcsubkeys : *mut u32 , pcchmaxsubkeylen : *mut u32 , pcvalues : *mut u32 , pcchmaxvaluenamelen : *mut u32 , enumregflags : SHREGENUM_FLAGS ) -> super::super::Foundation:: WIN32_ERROR );
SHRegQueryInfoUSKeyA(huskey, ::core::mem::transmute(pcsubkeys.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcchmaxsubkeylen.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcvalues.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcchmaxvaluenamelen.unwrap_or(::std::ptr::null_mut())), enumregflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegQueryInfoUSKeyW(huskey: isize, pcsubkeys: ::core::option::Option<*mut u32>, pcchmaxsubkeylen: ::core::option::Option<*mut u32>, pcvalues: ::core::option::Option<*mut u32>, pcchmaxvaluenamelen: ::core::option::Option<*mut u32>, enumregflags: SHREGENUM_FLAGS) -> super::super::Foundation::WIN32_ERROR {
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegQueryInfoUSKeyW ( huskey : isize , pcsubkeys : *mut u32 , pcchmaxsubkeylen : *mut u32 , pcvalues : *mut u32 , pcchmaxvaluenamelen : *mut u32 , enumregflags : SHREGENUM_FLAGS ) -> super::super::Foundation:: WIN32_ERROR );
SHRegQueryInfoUSKeyW(huskey, ::core::mem::transmute(pcsubkeys.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcchmaxsubkeylen.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcvalues.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcchmaxvaluenamelen.unwrap_or(::std::ptr::null_mut())), enumregflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegQueryUSValueA<P0, P1>(huskey: isize, pszvalue: P0, pdwtype: ::core::option::Option<*mut u32>, pvdata: ::core::option::Option<*mut ::core::ffi::c_void>, pcbdata: ::core::option::Option<*mut u32>, fignorehkcu: P1, pvdefaultdata: ::core::option::Option<*const ::core::ffi::c_void>, dwdefaultdatasize: u32) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegQueryUSValueA ( huskey : isize , pszvalue : :: windows::core::PCSTR , pdwtype : *mut u32 , pvdata : *mut ::core::ffi::c_void , pcbdata : *mut u32 , fignorehkcu : super::super::Foundation:: BOOL , pvdefaultdata : *const ::core::ffi::c_void , dwdefaultdatasize : u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHRegQueryUSValueA(huskey, pszvalue.into().abi(), ::core::mem::transmute(pdwtype.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcbdata.unwrap_or(::std::ptr::null_mut())), fignorehkcu.into(), ::core::mem::transmute(pvdefaultdata.unwrap_or(::std::ptr::null())), dwdefaultdatasize)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegQueryUSValueW<P0, P1>(huskey: isize, pszvalue: P0, pdwtype: ::core::option::Option<*mut u32>, pvdata: ::core::option::Option<*mut ::core::ffi::c_void>, pcbdata: ::core::option::Option<*mut u32>, fignorehkcu: P1, pvdefaultdata: ::core::option::Option<*const ::core::ffi::c_void>, dwdefaultdatasize: u32) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegQueryUSValueW ( huskey : isize , pszvalue : :: windows::core::PCWSTR , pdwtype : *mut u32 , pvdata : *mut ::core::ffi::c_void , pcbdata : *mut u32 , fignorehkcu : super::super::Foundation:: BOOL , pvdefaultdata : *const ::core::ffi::c_void , dwdefaultdatasize : u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHRegQueryUSValueW(huskey, pszvalue.into().abi(), ::core::mem::transmute(pdwtype.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcbdata.unwrap_or(::std::ptr::null_mut())), fignorehkcu.into(), ::core::mem::transmute(pvdefaultdata.unwrap_or(::std::ptr::null())), dwdefaultdatasize)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHRegSetPathA<P0, P1, P2, P3>(hkey: P0, pcszsubkey: P1, pcszvalue: P2, pcszpath: P3, dwflags: u32) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegSetPathA ( hkey : super::super::System::Registry:: HKEY , pcszsubkey : :: windows::core::PCSTR , pcszvalue : :: windows::core::PCSTR , pcszpath : :: windows::core::PCSTR , dwflags : u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHRegSetPathA(hkey.into(), pcszsubkey.into().abi(), pcszvalue.into().abi(), pcszpath.into().abi(), dwflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn SHRegSetPathW<P0, P1, P2, P3>(hkey: P0, pcszsubkey: P1, pcszvalue: P2, pcszpath: P3, dwflags: u32) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegSetPathW ( hkey : super::super::System::Registry:: HKEY , pcszsubkey : :: windows::core::PCWSTR , pcszvalue : :: windows::core::PCWSTR , pcszpath : :: windows::core::PCWSTR , dwflags : u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHRegSetPathW(hkey.into(), pcszsubkey.into().abi(), pcszvalue.into().abi(), pcszpath.into().abi(), dwflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegSetUSValueA<P0, P1>(pszsubkey: P0, pszvalue: P1, dwtype: u32, pvdata: ::core::option::Option<*const ::core::ffi::c_void>, cbdata: u32, dwflags: u32) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegSetUSValueA ( pszsubkey : :: windows::core::PCSTR , pszvalue : :: windows::core::PCSTR , dwtype : u32 , pvdata : *const ::core::ffi::c_void , cbdata : u32 , dwflags : u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHRegSetUSValueA(pszsubkey.into().abi(), pszvalue.into().abi(), dwtype, ::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null())), cbdata, dwflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegSetUSValueW<P0, P1>(pwzsubkey: P0, pwzvalue: P1, dwtype: u32, pvdata: ::core::option::Option<*const ::core::ffi::c_void>, cbdata: u32, dwflags: u32) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegSetUSValueW ( pwzsubkey : :: windows::core::PCWSTR , pwzvalue : :: windows::core::PCWSTR , dwtype : u32 , pvdata : *const ::core::ffi::c_void , cbdata : u32 , dwflags : u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHRegSetUSValueW(pwzsubkey.into().abi(), pwzvalue.into().abi(), dwtype, ::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null())), cbdata, dwflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegWriteUSValueA<P0>(huskey: isize, pszvalue: P0, dwtype: u32, pvdata: *const ::core::ffi::c_void, cbdata: u32, dwflags: u32) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegWriteUSValueA ( huskey : isize , pszvalue : :: windows::core::PCSTR , dwtype : u32 , pvdata : *const ::core::ffi::c_void , cbdata : u32 , dwflags : u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHRegWriteUSValueA(huskey, pszvalue.into().abi(), dwtype, pvdata, cbdata, dwflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHRegWriteUSValueW<P0>(huskey: isize, pwzvalue: P0, dwtype: u32, pvdata: *const ::core::ffi::c_void, cbdata: u32, dwflags: u32) -> super::super::Foundation::WIN32_ERROR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHRegWriteUSValueW ( huskey : isize , pwzvalue : :: windows::core::PCWSTR , dwtype : u32 , pvdata : *const ::core::ffi::c_void , cbdata : u32 , dwflags : u32 ) -> super::super::Foundation:: WIN32_ERROR );
SHRegWriteUSValueW(huskey, pwzvalue.into().abi(), dwtype, pvdata, cbdata, dwflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHReleaseThreadRef() -> ::windows::core::Result<()> {
::windows::core::link ! ( "shlwapi.dll""system" fn SHReleaseThreadRef ( ) -> :: windows::core::HRESULT );
SHReleaseThreadRef().ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHRemoveLocalizedName<P0>(pszpath: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHRemoveLocalizedName ( pszpath : :: windows::core::PCWSTR ) -> :: windows::core::HRESULT );
SHRemoveLocalizedName(pszpath.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Controls\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
#[inline]
pub unsafe fn SHReplaceFromPropSheetExtArray<P0, P1>(hpsxa: P0, upageid: u32, lpfnreplacewith: super::Controls::LPFNSVADDPROPSHEETPAGE, lparam: P1) -> u32
where
P0: ::std::convert::Into<HPSXA>,
P1: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHReplaceFromPropSheetExtArray ( hpsxa : HPSXA , upageid : u32 , lpfnreplacewith : super::Controls:: LPFNSVADDPROPSHEETPAGE , lparam : super::super::Foundation:: LPARAM ) -> u32 );
SHReplaceFromPropSheetExtArray(hpsxa.into(), upageid, lpfnreplacewith, lparam.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHResolveLibrary<P0>(psilibrary: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHResolveLibrary ( psilibrary : * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
SHResolveLibrary(psilibrary.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHRestricted(rest: RESTRICTIONS) -> u32 {
::windows::core::link ! ( "shell32.dll""system" fn SHRestricted ( rest : RESTRICTIONS ) -> u32 );
SHRestricted(rest)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHSendMessageBroadcastA<P0, P1>(umsg: u32, wparam: P0, lparam: P1) -> super::super::Foundation::LRESULT
where
P0: ::std::convert::Into<super::super::Foundation::WPARAM>,
P1: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHSendMessageBroadcastA ( umsg : u32 , wparam : super::super::Foundation:: WPARAM , lparam : super::super::Foundation:: LPARAM ) -> super::super::Foundation:: LRESULT );
SHSendMessageBroadcastA(umsg, wparam.into(), lparam.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHSendMessageBroadcastW<P0, P1>(umsg: u32, wparam: P0, lparam: P1) -> super::super::Foundation::LRESULT
where
P0: ::std::convert::Into<super::super::Foundation::WPARAM>,
P1: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHSendMessageBroadcastW ( umsg : u32 , wparam : super::super::Foundation:: WPARAM , lparam : super::super::Foundation:: LPARAM ) -> super::super::Foundation:: LRESULT );
SHSendMessageBroadcastW(umsg, wparam.into(), lparam.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHSetDefaultProperties<P0, P1, P2>(hwnd: P0, psi: P1, dwfileopflags: u32, pfops: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P2: ::std::convert::Into<::windows::core::InParam<IFileOperationProgressSink>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHSetDefaultProperties ( hwnd : super::super::Foundation:: HWND , psi : * mut::core::ffi::c_void , dwfileopflags : u32 , pfops : * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
SHSetDefaultProperties(hwnd.into(), psi.into().abi(), dwfileopflags, pfops.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHSetFolderPathA<P0, P1>(csidl: i32, htoken: P0, dwflags: u32, pszpath: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHSetFolderPathA ( csidl : i32 , htoken : super::super::Foundation:: HANDLE , dwflags : u32 , pszpath : :: windows::core::PCSTR ) -> :: windows::core::HRESULT );
SHSetFolderPathA(csidl, htoken.into(), dwflags, pszpath.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHSetFolderPathW<P0, P1>(csidl: i32, htoken: P0, dwflags: u32, pszpath: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHSetFolderPathW ( csidl : i32 , htoken : super::super::Foundation:: HANDLE , dwflags : u32 , pszpath : :: windows::core::PCWSTR ) -> :: windows::core::HRESULT );
SHSetFolderPathW(csidl, htoken.into(), dwflags, pszpath.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHSetInstanceExplorer<P0>(punk: P0)
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHSetInstanceExplorer ( punk : * mut::core::ffi::c_void ) -> ( ) );
SHSetInstanceExplorer(punk.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHSetKnownFolderPath<P0, P1>(rfid: *const ::windows::core::GUID, dwflags: u32, htoken: P0, pszpath: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHSetKnownFolderPath ( rfid : *const :: windows::core::GUID , dwflags : u32 , htoken : super::super::Foundation:: HANDLE , pszpath : :: windows::core::PCWSTR ) -> :: windows::core::HRESULT );
SHSetKnownFolderPath(rfid, dwflags, htoken.into(), pszpath.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHSetLocalizedName<P0, P1>(pszpath: P0, pszresmodule: P1, idsres: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHSetLocalizedName ( pszpath : :: windows::core::PCWSTR , pszresmodule : :: windows::core::PCWSTR , idsres : i32 ) -> :: windows::core::HRESULT );
SHSetLocalizedName(pszpath.into().abi(), pszresmodule.into().abi(), idsres).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_UI_Shell_PropertiesSystem"))]
#[inline]
pub unsafe fn SHSetTemporaryPropertyForItem<P0>(psi: P0, propkey: *const PropertiesSystem::PROPERTYKEY, propvar: *const super::super::System::Com::StructuredStorage::PROPVARIANT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHSetTemporaryPropertyForItem ( psi : * mut::core::ffi::c_void , propkey : *const PropertiesSystem:: PROPERTYKEY , propvar : *const super::super::System::Com::StructuredStorage:: PROPVARIANT ) -> :: windows::core::HRESULT );
SHSetTemporaryPropertyForItem(psi.into().abi(), propkey, propvar).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHSetThreadRef<P0>(punk: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHSetThreadRef ( punk : * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
SHSetThreadRef(punk.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHSetUnreadMailCountW<P0, P1>(pszmailaddress: P0, dwcount: u32, pszshellexecutecommand: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHSetUnreadMailCountW ( pszmailaddress : :: windows::core::PCWSTR , dwcount : u32 , pszshellexecutecommand : :: windows::core::PCWSTR ) -> :: windows::core::HRESULT );
SHSetUnreadMailCountW(pszmailaddress.into().abi(), dwcount, pszshellexecutecommand.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Registry\"`*"]
#[cfg(feature = "Win32_System_Registry")]
#[inline]
pub unsafe fn SHSetValueA<P0, P1, P2>(hkey: P0, pszsubkey: P1, pszvalue: P2, dwtype: u32, pvdata: ::core::option::Option<*const ::core::ffi::c_void>, cbdata: u32) -> i32
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHSetValueA ( hkey : super::super::System::Registry:: HKEY , pszsubkey : :: windows::core::PCSTR , pszvalue : :: windows::core::PCSTR , dwtype : u32 , pvdata : *const ::core::ffi::c_void , cbdata : u32 ) -> i32 );
SHSetValueA(hkey.into(), pszsubkey.into().abi(), pszvalue.into().abi(), dwtype, ::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null())), cbdata)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Registry\"`*"]
#[cfg(feature = "Win32_System_Registry")]
#[inline]
pub unsafe fn SHSetValueW<P0, P1, P2>(hkey: P0, pszsubkey: P1, pszvalue: P2, dwtype: u32, pvdata: ::core::option::Option<*const ::core::ffi::c_void>, cbdata: u32) -> i32
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHSetValueW ( hkey : super::super::System::Registry:: HKEY , pszsubkey : :: windows::core::PCWSTR , pszvalue : :: windows::core::PCWSTR , dwtype : u32 , pvdata : *const ::core::ffi::c_void , cbdata : u32 ) -> i32 );
SHSetValueW(hkey.into(), pszsubkey.into().abi(), pszvalue.into().abi(), dwtype, ::core::mem::transmute(pvdata.unwrap_or(::std::ptr::null())), cbdata)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHShellFolderView_Message<P0, P1>(hwndmain: P0, umsg: u32, lparam: P1) -> super::super::Foundation::LRESULT
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHShellFolderView_Message ( hwndmain : super::super::Foundation:: HWND , umsg : u32 , lparam : super::super::Foundation:: LPARAM ) -> super::super::Foundation:: LRESULT );
SHShellFolderView_Message(hwndmain.into(), umsg, lparam.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHShowManageLibraryUI<P0, P1, P2, P3>(psilibrary: P0, hwndowner: P1, psztitle: P2, pszinstruction: P3, lmdoptions: LIBRARYMANAGEDIALOGOPTIONS) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHShowManageLibraryUI ( psilibrary : * mut::core::ffi::c_void , hwndowner : super::super::Foundation:: HWND , psztitle : :: windows::core::PCWSTR , pszinstruction : :: windows::core::PCWSTR , lmdoptions : LIBRARYMANAGEDIALOGOPTIONS ) -> :: windows::core::HRESULT );
SHShowManageLibraryUI(psilibrary.into().abi(), hwndowner.into(), psztitle.into().abi(), pszinstruction.into().abi(), lmdoptions).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn SHSimpleIDListFromPath<P0>(pszpath: P0) -> *mut Common::ITEMIDLIST
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHSimpleIDListFromPath ( pszpath : :: windows::core::PCWSTR ) -> *mut Common:: ITEMIDLIST );
SHSimpleIDListFromPath(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
#[inline]
pub unsafe fn SHSkipJunction<P0>(pbc: P0, pclsid: *const ::windows::core::GUID) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHSkipJunction ( pbc : * mut::core::ffi::c_void , pclsid : *const :: windows::core::GUID ) -> super::super::Foundation:: BOOL );
SHSkipJunction(pbc.into().abi(), pclsid)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHStartNetConnectionDialogW<P0, P1>(hwnd: P0, pszremotename: P1, dwtype: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHStartNetConnectionDialogW ( hwnd : super::super::Foundation:: HWND , pszremotename : :: windows::core::PCWSTR , dwtype : u32 ) -> :: windows::core::HRESULT );
SHStartNetConnectionDialogW(hwnd.into(), pszremotename.into().abi(), dwtype).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHStrDupA<P0>(psz: P0) -> ::windows::core::Result<::windows::core::PWSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHStrDupA ( psz : :: windows::core::PCSTR , ppwsz : *mut :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHStrDupA(psz.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHStrDupW<P0>(psz: P0) -> ::windows::core::Result<::windows::core::PWSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHStrDupW ( psz : :: windows::core::PCWSTR , ppwsz : *mut :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
SHStrDupW(psz.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHStripMneumonicA(pszmenu: ::windows::core::PSTR) -> super::super::Foundation::CHAR {
::windows::core::link ! ( "shlwapi.dll""system" fn SHStripMneumonicA ( pszmenu : :: windows::core::PSTR ) -> super::super::Foundation:: CHAR );
SHStripMneumonicA(::core::mem::transmute(pszmenu))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHStripMneumonicW(pszmenu: ::windows::core::PWSTR) -> u16 {
::windows::core::link ! ( "shlwapi.dll""system" fn SHStripMneumonicW ( pszmenu : :: windows::core::PWSTR ) -> u16 );
SHStripMneumonicW(::core::mem::transmute(pszmenu))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHTestTokenMembership<P0>(htoken: P0, ulrid: u32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHTestTokenMembership ( htoken : super::super::Foundation:: HANDLE , ulrid : u32 ) -> super::super::Foundation:: BOOL );
SHTestTokenMembership(htoken.into(), ulrid)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHUnicodeToAnsi<P0>(pwszsrc: P0, pszdst: &mut [u8]) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHUnicodeToAnsi ( pwszsrc : :: windows::core::PCWSTR , pszdst : :: windows::core::PSTR , cchbuf : i32 ) -> i32 );
SHUnicodeToAnsi(pwszsrc.into().abi(), ::core::mem::transmute(pszdst.as_ptr()), pszdst.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHUnicodeToUnicode<P0>(pwzsrc: P0, pwzdst: &mut [u16]) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn SHUnicodeToUnicode ( pwzsrc : :: windows::core::PCWSTR , pwzdst : :: windows::core::PWSTR , cwchbuf : i32 ) -> i32 );
SHUnicodeToUnicode(pwzsrc.into().abi(), ::core::mem::transmute(pwzdst.as_ptr()), pwzdst.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHUnlockShared(pvdata: *const ::core::ffi::c_void) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shlwapi.dll""system" fn SHUnlockShared ( pvdata : *const ::core::ffi::c_void ) -> super::super::Foundation:: BOOL );
SHUnlockShared(pvdata)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHUpdateImageA<P0>(pszhashitem: P0, iindex: i32, uflags: u32, iimageindex: i32)
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHUpdateImageA ( pszhashitem : :: windows::core::PCSTR , iindex : i32 , uflags : u32 , iimageindex : i32 ) -> ( ) );
SHUpdateImageA(pszhashitem.into().abi(), iindex, uflags, iimageindex)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SHUpdateImageW<P0>(pszhashitem: P0, iindex: i32, uflags: u32, iimageindex: i32)
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHUpdateImageW ( pszhashitem : :: windows::core::PCWSTR , iindex : i32 , uflags : u32 , iimageindex : i32 ) -> ( ) );
SHUpdateImageW(pszhashitem.into().abi(), iindex, uflags, iimageindex)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SHValidateUNC<P0>(hwndowner: P0, pszfile: ::windows::core::PWSTR, fconnect: VALIDATEUNC_OPTION) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
::windows::core::link ! ( "shell32.dll""system" fn SHValidateUNC ( hwndowner : super::super::Foundation:: HWND , pszfile : :: windows::core::PWSTR , fconnect : VALIDATEUNC_OPTION ) -> super::super::Foundation:: BOOL );
SHValidateUNC(hwndowner.into(), ::core::mem::transmute(pszfile), fconnect)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn SetCurrentProcessExplicitAppUserModelID<P0>(appid: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn SetCurrentProcessExplicitAppUserModelID ( appid : :: windows::core::PCWSTR ) -> :: windows::core::HRESULT );
SetCurrentProcessExplicitAppUserModelID(appid.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
#[inline]
pub unsafe fn SetMenuContextHelpId<P0>(param0: P0, param1: u32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::WindowsAndMessaging::HMENU>,
{
::windows::core::link ! ( "user32.dll""system" fn SetMenuContextHelpId ( param0 : super::WindowsAndMessaging:: HMENU , param1 : u32 ) -> super::super::Foundation:: BOOL );
SetMenuContextHelpId(param0.into(), param1)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SetWindowContextHelpId<P0>(param0: P0, param1: u32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
::windows::core::link ! ( "user32.dll""system" fn SetWindowContextHelpId ( param0 : super::super::Foundation:: HWND , param1 : u32 ) -> super::super::Foundation:: BOOL );
SetWindowContextHelpId(param0.into(), param1)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn SetWindowSubclass<P0>(hwnd: P0, pfnsubclass: SUBCLASSPROC, uidsubclass: usize, dwrefdata: usize) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
::windows::core::link ! ( "comctl32.dll""system" fn SetWindowSubclass ( hwnd : super::super::Foundation:: HWND , pfnsubclass : SUBCLASSPROC , uidsubclass : usize , dwrefdata : usize ) -> super::super::Foundation:: BOOL );
SetWindowSubclass(hwnd.into(), pfnsubclass, uidsubclass, dwrefdata)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
#[inline]
pub unsafe fn ShellAboutA<P0, P1, P2, P3>(hwnd: P0, szapp: P1, szotherstuff: P2, hicon: P3) -> i32
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P3: ::std::convert::Into<super::WindowsAndMessaging::HICON>,
{
::windows::core::link ! ( "shell32.dll""system" fn ShellAboutA ( hwnd : super::super::Foundation:: HWND , szapp : :: windows::core::PCSTR , szotherstuff : :: windows::core::PCSTR , hicon : super::WindowsAndMessaging:: HICON ) -> i32 );
ShellAboutA(hwnd.into(), szapp.into().abi(), szotherstuff.into().abi(), hicon.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
#[inline]
pub unsafe fn ShellAboutW<P0, P1, P2, P3>(hwnd: P0, szapp: P1, szotherstuff: P2, hicon: P3) -> i32
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<super::WindowsAndMessaging::HICON>,
{
::windows::core::link ! ( "shell32.dll""system" fn ShellAboutW ( hwnd : super::super::Foundation:: HWND , szapp : :: windows::core::PCWSTR , szotherstuff : :: windows::core::PCWSTR , hicon : super::WindowsAndMessaging:: HICON ) -> i32 );
ShellAboutW(hwnd.into(), szapp.into().abi(), szotherstuff.into().abi(), hicon.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
#[inline]
pub unsafe fn ShellExecuteA<P0, P1, P2, P3, P4>(hwnd: P0, lpoperation: P1, lpfile: P2, lpparameters: P3, lpdirectory: P4, nshowcmd: super::WindowsAndMessaging::SHOW_WINDOW_CMD) -> super::super::Foundation::HINSTANCE
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P4: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn ShellExecuteA ( hwnd : super::super::Foundation:: HWND , lpoperation : :: windows::core::PCSTR , lpfile : :: windows::core::PCSTR , lpparameters : :: windows::core::PCSTR , lpdirectory : :: windows::core::PCSTR , nshowcmd : super::WindowsAndMessaging:: SHOW_WINDOW_CMD ) -> super::super::Foundation:: HINSTANCE );
ShellExecuteA(hwnd.into(), lpoperation.into().abi(), lpfile.into().abi(), lpparameters.into().abi(), lpdirectory.into().abi(), nshowcmd)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn ShellExecuteExA(pexecinfo: *mut SHELLEXECUTEINFOA) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn ShellExecuteExA ( pexecinfo : *mut SHELLEXECUTEINFOA ) -> super::super::Foundation:: BOOL );
ShellExecuteExA(pexecinfo)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
#[inline]
pub unsafe fn ShellExecuteExW(pexecinfo: *mut SHELLEXECUTEINFOW) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn ShellExecuteExW ( pexecinfo : *mut SHELLEXECUTEINFOW ) -> super::super::Foundation:: BOOL );
ShellExecuteExW(pexecinfo)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
#[inline]
pub unsafe fn ShellExecuteW<P0, P1, P2, P3, P4>(hwnd: P0, lpoperation: P1, lpfile: P2, lpparameters: P3, lpdirectory: P4, nshowcmd: super::WindowsAndMessaging::SHOW_WINDOW_CMD) -> super::super::Foundation::HINSTANCE
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P4: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn ShellExecuteW ( hwnd : super::super::Foundation:: HWND , lpoperation : :: windows::core::PCWSTR , lpfile : :: windows::core::PCWSTR , lpparameters : :: windows::core::PCWSTR , lpdirectory : :: windows::core::PCWSTR , nshowcmd : super::WindowsAndMessaging:: SHOW_WINDOW_CMD ) -> super::super::Foundation:: HINSTANCE );
ShellExecuteW(hwnd.into(), lpoperation.into().abi(), lpfile.into().abi(), lpparameters.into().abi(), lpdirectory.into().abi(), nshowcmd)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
#[inline]
pub unsafe fn ShellMessageBoxA<P0, P1, P2, P3>(happinst: P0, hwnd: P1, lpctext: P2, lpctitle: P3, fustyle: super::WindowsAndMessaging::MESSAGEBOX_STYLE) -> i32
where
P0: ::std::convert::Into<super::super::Foundation::HINSTANCE>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""cdecl" fn ShellMessageBoxA ( happinst : super::super::Foundation:: HINSTANCE , hwnd : super::super::Foundation:: HWND , lpctext : :: windows::core::PCSTR , lpctitle : :: windows::core::PCSTR , fustyle : super::WindowsAndMessaging:: MESSAGEBOX_STYLE ) -> i32 );
ShellMessageBoxA(happinst.into(), hwnd.into(), lpctext.into().abi(), lpctitle.into().abi(), fustyle)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
#[inline]
pub unsafe fn ShellMessageBoxW<P0, P1, P2, P3>(happinst: P0, hwnd: P1, lpctext: P2, lpctitle: P3, fustyle: super::WindowsAndMessaging::MESSAGEBOX_STYLE) -> i32
where
P0: ::std::convert::Into<super::super::Foundation::HINSTANCE>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""cdecl" fn ShellMessageBoxW ( happinst : super::super::Foundation:: HINSTANCE , hwnd : super::super::Foundation:: HWND , lpctext : :: windows::core::PCWSTR , lpctitle : :: windows::core::PCWSTR , fustyle : super::WindowsAndMessaging:: MESSAGEBOX_STYLE ) -> i32 );
ShellMessageBoxW(happinst.into(), hwnd.into(), lpctext.into().abi(), lpctitle.into().abi(), fustyle)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn Shell_GetCachedImageIndex<P0>(pwsziconpath: P0, iiconindex: i32, uiconflags: u32) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn Shell_GetCachedImageIndex ( pwsziconpath : :: windows::core::PCWSTR , iiconindex : i32 , uiconflags : u32 ) -> i32 );
Shell_GetCachedImageIndex(pwsziconpath.into().abi(), iiconindex, uiconflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn Shell_GetCachedImageIndexA<P0>(psziconpath: P0, iiconindex: i32, uiconflags: u32) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn Shell_GetCachedImageIndexA ( psziconpath : :: windows::core::PCSTR , iiconindex : i32 , uiconflags : u32 ) -> i32 );
Shell_GetCachedImageIndexA(psziconpath.into().abi(), iiconindex, uiconflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn Shell_GetCachedImageIndexW<P0>(psziconpath: P0, iiconindex: i32, uiconflags: u32) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn Shell_GetCachedImageIndexW ( psziconpath : :: windows::core::PCWSTR , iiconindex : i32 , uiconflags : u32 ) -> i32 );
Shell_GetCachedImageIndexW(psziconpath.into().abi(), iiconindex, uiconflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Controls\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
#[inline]
pub unsafe fn Shell_GetImageLists(phiml: ::core::option::Option<*mut super::Controls::HIMAGELIST>, phimlsmall: ::core::option::Option<*mut super::Controls::HIMAGELIST>) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn Shell_GetImageLists ( phiml : *mut super::Controls:: HIMAGELIST , phimlsmall : *mut super::Controls:: HIMAGELIST ) -> super::super::Foundation:: BOOL );
Shell_GetImageLists(::core::mem::transmute(phiml.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(phimlsmall.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
#[inline]
pub unsafe fn Shell_MergeMenus<P0, P1>(hmdst: P0, hmsrc: P1, uinsert: u32, uidadjust: u32, uidadjustmax: u32, uflags: MM_FLAGS) -> u32
where
P0: ::std::convert::Into<super::WindowsAndMessaging::HMENU>,
P1: ::std::convert::Into<super::WindowsAndMessaging::HMENU>,
{
::windows::core::link ! ( "shell32.dll""system" fn Shell_MergeMenus ( hmdst : super::WindowsAndMessaging:: HMENU , hmsrc : super::WindowsAndMessaging:: HMENU , uinsert : u32 , uidadjust : u32 , uidadjustmax : u32 , uflags : MM_FLAGS ) -> u32 );
Shell_MergeMenus(hmdst.into(), hmsrc.into(), uinsert, uidadjust, uidadjustmax, uflags)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
#[inline]
pub unsafe fn Shell_NotifyIconA(dwmessage: NOTIFY_ICON_MESSAGE, lpdata: *const NOTIFYICONDATAA) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn Shell_NotifyIconA ( dwmessage : NOTIFY_ICON_MESSAGE , lpdata : *const NOTIFYICONDATAA ) -> super::super::Foundation:: BOOL );
Shell_NotifyIconA(dwmessage, lpdata)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn Shell_NotifyIconGetRect(identifier: *const NOTIFYICONIDENTIFIER) -> ::windows::core::Result<super::super::Foundation::RECT> {
::windows::core::link ! ( "shell32.dll""system" fn Shell_NotifyIconGetRect ( identifier : *const NOTIFYICONIDENTIFIER , iconlocation : *mut super::super::Foundation:: RECT ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
Shell_NotifyIconGetRect(identifier, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
#[inline]
pub unsafe fn Shell_NotifyIconW(dwmessage: NOTIFY_ICON_MESSAGE, lpdata: *const NOTIFYICONDATAW) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn Shell_NotifyIconW ( dwmessage : NOTIFY_ICON_MESSAGE , lpdata : *const NOTIFYICONDATAW ) -> super::super::Foundation:: BOOL );
Shell_NotifyIconW(dwmessage, lpdata)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
#[inline]
pub unsafe fn SignalFileOpen(pidl: *const Common::ITEMIDLIST) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn SignalFileOpen ( pidl : *const Common:: ITEMIDLIST ) -> super::super::Foundation:: BOOL );
SignalFileOpen(pidl)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com_Urlmon\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_Urlmon"))]
#[inline]
pub unsafe fn SoftwareUpdateMessageBox<P0, P1>(hwnd: P0, pszdistunit: P1, dwflags: u32, psdi: ::core::option::Option<*mut super::super::System::Com::Urlmon::SOFTDISTINFO>) -> u32
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shdocvw.dll""system" fn SoftwareUpdateMessageBox ( hwnd : super::super::Foundation:: HWND , pszdistunit : :: windows::core::PCWSTR , dwflags : u32 , psdi : *mut super::super::System::Com::Urlmon:: SOFTDISTINFO ) -> u32 );
SoftwareUpdateMessageBox(hwnd.into(), pszdistunit.into().abi(), dwflags, ::core::mem::transmute(psdi.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com_StructuredStorage\"`*"]
#[cfg(feature = "Win32_System_Com_StructuredStorage")]
#[inline]
pub unsafe fn StgMakeUniqueName<P0, P1, T>(pstgparent: P0, pszfilespec: P1, grfmode: u32) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::StructuredStorage::IStorage>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
T: ::windows::core::Interface,
{
::windows::core::link ! ( "shell32.dll""system" fn StgMakeUniqueName ( pstgparent : * mut::core::ffi::c_void , pszfilespec : :: windows::core::PCWSTR , grfmode : u32 , riid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT );
let mut result__ = ::core::mem::MaybeUninit::zeroed();
StgMakeUniqueName(pstgparent.into().abi(), pszfilespec.into().abi(), grfmode, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCSpnA<P0, P1>(pszstr: P0, pszset: P1) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCSpnA ( pszstr : :: windows::core::PCSTR , pszset : :: windows::core::PCSTR ) -> i32 );
StrCSpnA(pszstr.into().abi(), pszset.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCSpnIA<P0, P1>(pszstr: P0, pszset: P1) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCSpnIA ( pszstr : :: windows::core::PCSTR , pszset : :: windows::core::PCSTR ) -> i32 );
StrCSpnIA(pszstr.into().abi(), pszset.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCSpnIW<P0, P1>(pszstr: P0, pszset: P1) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCSpnIW ( pszstr : :: windows::core::PCWSTR , pszset : :: windows::core::PCWSTR ) -> i32 );
StrCSpnIW(pszstr.into().abi(), pszset.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCSpnW<P0, P1>(pszstr: P0, pszset: P1) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCSpnW ( pszstr : :: windows::core::PCWSTR , pszset : :: windows::core::PCWSTR ) -> i32 );
StrCSpnW(pszstr.into().abi(), pszset.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCatBuffA<P0>(pszdest: &mut [u8], pszsrc: P0) -> ::windows::core::PSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCatBuffA ( pszdest : :: windows::core::PSTR , pszsrc : :: windows::core::PCSTR , cchdestbuffsize : i32 ) -> :: windows::core::PSTR );
StrCatBuffA(::core::mem::transmute(pszdest.as_ptr()), pszsrc.into().abi(), pszdest.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCatBuffW<P0>(pszdest: &mut [u16], pszsrc: P0) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCatBuffW ( pszdest : :: windows::core::PWSTR , pszsrc : :: windows::core::PCWSTR , cchdestbuffsize : i32 ) -> :: windows::core::PWSTR );
StrCatBuffW(::core::mem::transmute(pszdest.as_ptr()), pszsrc.into().abi(), pszdest.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCatChainW<P0>(pszdst: &mut [u16], ichat: u32, pszsrc: P0) -> u32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCatChainW ( pszdst : :: windows::core::PWSTR , cchdst : u32 , ichat : u32 , pszsrc : :: windows::core::PCWSTR ) -> u32 );
StrCatChainW(::core::mem::transmute(pszdst.as_ptr()), pszdst.len() as _, ichat, pszsrc.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCatW<P0>(psz1: ::windows::core::PWSTR, psz2: P0) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCatW ( psz1 : :: windows::core::PWSTR , psz2 : :: windows::core::PCWSTR ) -> :: windows::core::PWSTR );
StrCatW(::core::mem::transmute(psz1), psz2.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrChrA<P0>(pszstart: P0, wmatch: u16) -> ::windows::core::PSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrChrA ( pszstart : :: windows::core::PCSTR , wmatch : u16 ) -> :: windows::core::PSTR );
StrChrA(pszstart.into().abi(), wmatch)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrChrIA<P0>(pszstart: P0, wmatch: u16) -> ::windows::core::PSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrChrIA ( pszstart : :: windows::core::PCSTR , wmatch : u16 ) -> :: windows::core::PSTR );
StrChrIA(pszstart.into().abi(), wmatch)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrChrIW<P0>(pszstart: P0, wmatch: u16) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrChrIW ( pszstart : :: windows::core::PCWSTR , wmatch : u16 ) -> :: windows::core::PWSTR );
StrChrIW(pszstart.into().abi(), wmatch)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrChrNIW<P0>(pszstart: P0, wmatch: u16, cchmax: u32) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrChrNIW ( pszstart : :: windows::core::PCWSTR , wmatch : u16 , cchmax : u32 ) -> :: windows::core::PWSTR );
StrChrNIW(pszstart.into().abi(), wmatch, cchmax)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrChrNW<P0>(pszstart: P0, wmatch: u16, cchmax: u32) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrChrNW ( pszstart : :: windows::core::PCWSTR , wmatch : u16 , cchmax : u32 ) -> :: windows::core::PWSTR );
StrChrNW(pszstart.into().abi(), wmatch, cchmax)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrChrW<P0>(pszstart: P0, wmatch: u16) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrChrW ( pszstart : :: windows::core::PCWSTR , wmatch : u16 ) -> :: windows::core::PWSTR );
StrChrW(pszstart.into().abi(), wmatch)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCmpCA<P0, P1>(pszstr1: P0, pszstr2: P1) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCmpCA ( pszstr1 : :: windows::core::PCSTR , pszstr2 : :: windows::core::PCSTR ) -> i32 );
StrCmpCA(pszstr1.into().abi(), pszstr2.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCmpCW<P0, P1>(pszstr1: P0, pszstr2: P1) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCmpCW ( pszstr1 : :: windows::core::PCWSTR , pszstr2 : :: windows::core::PCWSTR ) -> i32 );
StrCmpCW(pszstr1.into().abi(), pszstr2.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCmpICA<P0, P1>(pszstr1: P0, pszstr2: P1) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCmpICA ( pszstr1 : :: windows::core::PCSTR , pszstr2 : :: windows::core::PCSTR ) -> i32 );
StrCmpICA(pszstr1.into().abi(), pszstr2.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCmpICW<P0, P1>(pszstr1: P0, pszstr2: P1) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCmpICW ( pszstr1 : :: windows::core::PCWSTR , pszstr2 : :: windows::core::PCWSTR ) -> i32 );
StrCmpICW(pszstr1.into().abi(), pszstr2.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCmpIW<P0, P1>(psz1: P0, psz2: P1) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCmpIW ( psz1 : :: windows::core::PCWSTR , psz2 : :: windows::core::PCWSTR ) -> i32 );
StrCmpIW(psz1.into().abi(), psz2.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCmpLogicalW<P0, P1>(psz1: P0, psz2: P1) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCmpLogicalW ( psz1 : :: windows::core::PCWSTR , psz2 : :: windows::core::PCWSTR ) -> i32 );
StrCmpLogicalW(psz1.into().abi(), psz2.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCmpNA<P0, P1>(psz1: P0, psz2: P1, nchar: i32) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCmpNA ( psz1 : :: windows::core::PCSTR , psz2 : :: windows::core::PCSTR , nchar : i32 ) -> i32 );
StrCmpNA(psz1.into().abi(), psz2.into().abi(), nchar)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCmpNCA<P0, P1>(pszstr1: P0, pszstr2: P1, nchar: i32) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCmpNCA ( pszstr1 : :: windows::core::PCSTR , pszstr2 : :: windows::core::PCSTR , nchar : i32 ) -> i32 );
StrCmpNCA(pszstr1.into().abi(), pszstr2.into().abi(), nchar)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCmpNCW<P0, P1>(pszstr1: P0, pszstr2: P1, nchar: i32) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCmpNCW ( pszstr1 : :: windows::core::PCWSTR , pszstr2 : :: windows::core::PCWSTR , nchar : i32 ) -> i32 );
StrCmpNCW(pszstr1.into().abi(), pszstr2.into().abi(), nchar)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCmpNIA<P0, P1>(psz1: P0, psz2: P1, nchar: i32) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCmpNIA ( psz1 : :: windows::core::PCSTR , psz2 : :: windows::core::PCSTR , nchar : i32 ) -> i32 );
StrCmpNIA(psz1.into().abi(), psz2.into().abi(), nchar)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCmpNICA<P0, P1>(pszstr1: P0, pszstr2: P1, nchar: i32) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCmpNICA ( pszstr1 : :: windows::core::PCSTR , pszstr2 : :: windows::core::PCSTR , nchar : i32 ) -> i32 );
StrCmpNICA(pszstr1.into().abi(), pszstr2.into().abi(), nchar)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCmpNICW<P0, P1>(pszstr1: P0, pszstr2: P1, nchar: i32) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCmpNICW ( pszstr1 : :: windows::core::PCWSTR , pszstr2 : :: windows::core::PCWSTR , nchar : i32 ) -> i32 );
StrCmpNICW(pszstr1.into().abi(), pszstr2.into().abi(), nchar)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCmpNIW<P0, P1>(psz1: P0, psz2: P1, nchar: i32) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCmpNIW ( psz1 : :: windows::core::PCWSTR , psz2 : :: windows::core::PCWSTR , nchar : i32 ) -> i32 );
StrCmpNIW(psz1.into().abi(), psz2.into().abi(), nchar)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCmpNW<P0, P1>(psz1: P0, psz2: P1, nchar: i32) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCmpNW ( psz1 : :: windows::core::PCWSTR , psz2 : :: windows::core::PCWSTR , nchar : i32 ) -> i32 );
StrCmpNW(psz1.into().abi(), psz2.into().abi(), nchar)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCmpW<P0, P1>(psz1: P0, psz2: P1) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCmpW ( psz1 : :: windows::core::PCWSTR , psz2 : :: windows::core::PCWSTR ) -> i32 );
StrCmpW(psz1.into().abi(), psz2.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCpyNW<P0>(pszdst: &mut [u16], pszsrc: P0) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCpyNW ( pszdst : :: windows::core::PWSTR , pszsrc : :: windows::core::PCWSTR , cchmax : i32 ) -> :: windows::core::PWSTR );
StrCpyNW(::core::mem::transmute(pszdst.as_ptr()), pszsrc.into().abi(), pszdst.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrCpyW<P0>(psz1: ::windows::core::PWSTR, psz2: P0) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrCpyW ( psz1 : :: windows::core::PWSTR , psz2 : :: windows::core::PCWSTR ) -> :: windows::core::PWSTR );
StrCpyW(::core::mem::transmute(psz1), psz2.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrDupA<P0>(pszsrch: P0) -> ::windows::core::PSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrDupA ( pszsrch : :: windows::core::PCSTR ) -> :: windows::core::PSTR );
StrDupA(pszsrch.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrDupW<P0>(pszsrch: P0) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrDupW ( pszsrch : :: windows::core::PCWSTR ) -> :: windows::core::PWSTR );
StrDupW(pszsrch.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrFormatByteSize64A(qdw: i64, pszbuf: &mut [u8]) -> ::windows::core::PSTR {
::windows::core::link ! ( "shlwapi.dll""system" fn StrFormatByteSize64A ( qdw : i64 , pszbuf : :: windows::core::PSTR , cchbuf : u32 ) -> :: windows::core::PSTR );
StrFormatByteSize64A(qdw, ::core::mem::transmute(pszbuf.as_ptr()), pszbuf.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrFormatByteSizeA(dw: u32, pszbuf: &mut [u8]) -> ::windows::core::PSTR {
::windows::core::link ! ( "shlwapi.dll""system" fn StrFormatByteSizeA ( dw : u32 , pszbuf : :: windows::core::PSTR , cchbuf : u32 ) -> :: windows::core::PSTR );
StrFormatByteSizeA(dw, ::core::mem::transmute(pszbuf.as_ptr()), pszbuf.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrFormatByteSizeEx(ull: u64, flags: SFBS_FLAGS, pszbuf: &mut [u16]) -> ::windows::core::Result<()> {
::windows::core::link ! ( "shlwapi.dll""system" fn StrFormatByteSizeEx ( ull : u64 , flags : SFBS_FLAGS , pszbuf : :: windows::core::PWSTR , cchbuf : u32 ) -> :: windows::core::HRESULT );
StrFormatByteSizeEx(ull, flags, ::core::mem::transmute(pszbuf.as_ptr()), pszbuf.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrFormatByteSizeW(qdw: i64, pszbuf: &mut [u16]) -> ::windows::core::PWSTR {
::windows::core::link ! ( "shlwapi.dll""system" fn StrFormatByteSizeW ( qdw : i64 , pszbuf : :: windows::core::PWSTR , cchbuf : u32 ) -> :: windows::core::PWSTR );
StrFormatByteSizeW(qdw, ::core::mem::transmute(pszbuf.as_ptr()), pszbuf.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrFormatKBSizeA(qdw: i64, pszbuf: &mut [u8]) -> ::windows::core::PSTR {
::windows::core::link ! ( "shlwapi.dll""system" fn StrFormatKBSizeA ( qdw : i64 , pszbuf : :: windows::core::PSTR , cchbuf : u32 ) -> :: windows::core::PSTR );
StrFormatKBSizeA(qdw, ::core::mem::transmute(pszbuf.as_ptr()), pszbuf.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrFormatKBSizeW(qdw: i64, pszbuf: &mut [u16]) -> ::windows::core::PWSTR {
::windows::core::link ! ( "shlwapi.dll""system" fn StrFormatKBSizeW ( qdw : i64 , pszbuf : :: windows::core::PWSTR , cchbuf : u32 ) -> :: windows::core::PWSTR );
StrFormatKBSizeW(qdw, ::core::mem::transmute(pszbuf.as_ptr()), pszbuf.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrFromTimeIntervalA(pszout: &mut [u8], dwtimems: u32, digits: i32) -> i32 {
::windows::core::link ! ( "shlwapi.dll""system" fn StrFromTimeIntervalA ( pszout : :: windows::core::PSTR , cchmax : u32 , dwtimems : u32 , digits : i32 ) -> i32 );
StrFromTimeIntervalA(::core::mem::transmute(pszout.as_ptr()), pszout.len() as _, dwtimems, digits)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrFromTimeIntervalW(pszout: &mut [u16], dwtimems: u32, digits: i32) -> i32 {
::windows::core::link ! ( "shlwapi.dll""system" fn StrFromTimeIntervalW ( pszout : :: windows::core::PWSTR , cchmax : u32 , dwtimems : u32 , digits : i32 ) -> i32 );
StrFromTimeIntervalW(::core::mem::transmute(pszout.as_ptr()), pszout.len() as _, dwtimems, digits)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn StrIsIntlEqualA<P0, P1, P2>(fcasesens: P0, pszstring1: P1, pszstring2: P2, nchar: i32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrIsIntlEqualA ( fcasesens : super::super::Foundation:: BOOL , pszstring1 : :: windows::core::PCSTR , pszstring2 : :: windows::core::PCSTR , nchar : i32 ) -> super::super::Foundation:: BOOL );
StrIsIntlEqualA(fcasesens.into(), pszstring1.into().abi(), pszstring2.into().abi(), nchar)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn StrIsIntlEqualW<P0, P1, P2>(fcasesens: P0, pszstring1: P1, pszstring2: P2, nchar: i32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrIsIntlEqualW ( fcasesens : super::super::Foundation:: BOOL , pszstring1 : :: windows::core::PCWSTR , pszstring2 : :: windows::core::PCWSTR , nchar : i32 ) -> super::super::Foundation:: BOOL );
StrIsIntlEqualW(fcasesens.into(), pszstring1.into().abi(), pszstring2.into().abi(), nchar)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrNCatA<P0>(psz1: &mut [u8], psz2: P0) -> ::windows::core::PSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrNCatA ( psz1 : :: windows::core::PSTR , psz2 : :: windows::core::PCSTR , cchmax : i32 ) -> :: windows::core::PSTR );
StrNCatA(::core::mem::transmute(psz1.as_ptr()), psz2.into().abi(), psz1.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrNCatW<P0>(psz1: &mut [u16], psz2: P0) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrNCatW ( psz1 : :: windows::core::PWSTR , psz2 : :: windows::core::PCWSTR , cchmax : i32 ) -> :: windows::core::PWSTR );
StrNCatW(::core::mem::transmute(psz1.as_ptr()), psz2.into().abi(), psz1.len() as _)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrPBrkA<P0, P1>(psz: P0, pszset: P1) -> ::windows::core::PSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrPBrkA ( psz : :: windows::core::PCSTR , pszset : :: windows::core::PCSTR ) -> :: windows::core::PSTR );
StrPBrkA(psz.into().abi(), pszset.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrPBrkW<P0, P1>(psz: P0, pszset: P1) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrPBrkW ( psz : :: windows::core::PCWSTR , pszset : :: windows::core::PCWSTR ) -> :: windows::core::PWSTR );
StrPBrkW(psz.into().abi(), pszset.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrRChrA<P0, P1>(pszstart: P0, pszend: P1, wmatch: u16) -> ::windows::core::PSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrRChrA ( pszstart : :: windows::core::PCSTR , pszend : :: windows::core::PCSTR , wmatch : u16 ) -> :: windows::core::PSTR );
StrRChrA(pszstart.into().abi(), pszend.into().abi(), wmatch)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrRChrIA<P0, P1>(pszstart: P0, pszend: P1, wmatch: u16) -> ::windows::core::PSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrRChrIA ( pszstart : :: windows::core::PCSTR , pszend : :: windows::core::PCSTR , wmatch : u16 ) -> :: windows::core::PSTR );
StrRChrIA(pszstart.into().abi(), pszend.into().abi(), wmatch)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrRChrIW<P0, P1>(pszstart: P0, pszend: P1, wmatch: u16) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrRChrIW ( pszstart : :: windows::core::PCWSTR , pszend : :: windows::core::PCWSTR , wmatch : u16 ) -> :: windows::core::PWSTR );
StrRChrIW(pszstart.into().abi(), pszend.into().abi(), wmatch)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrRChrW<P0, P1>(pszstart: P0, pszend: P1, wmatch: u16) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrRChrW ( pszstart : :: windows::core::PCWSTR , pszend : :: windows::core::PCWSTR , wmatch : u16 ) -> :: windows::core::PWSTR );
StrRChrW(pszstart.into().abi(), pszend.into().abi(), wmatch)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrRStrIA<P0, P1, P2>(pszsource: P0, pszlast: P1, pszsrch: P2) -> ::windows::core::PSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrRStrIA ( pszsource : :: windows::core::PCSTR , pszlast : :: windows::core::PCSTR , pszsrch : :: windows::core::PCSTR ) -> :: windows::core::PSTR );
StrRStrIA(pszsource.into().abi(), pszlast.into().abi(), pszsrch.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrRStrIW<P0, P1, P2>(pszsource: P0, pszlast: P1, pszsrch: P2) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrRStrIW ( pszsource : :: windows::core::PCWSTR , pszlast : :: windows::core::PCWSTR , pszsrch : :: windows::core::PCWSTR ) -> :: windows::core::PWSTR );
StrRStrIW(pszsource.into().abi(), pszlast.into().abi(), pszsrch.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn StrRetToBSTR(pstr: *mut Common::STRRET, pidl: ::core::option::Option<*const Common::ITEMIDLIST>, pbstr: *mut ::windows::core::BSTR) -> ::windows::core::Result<()> {
::windows::core::link ! ( "shlwapi.dll""system" fn StrRetToBSTR ( pstr : *mut Common:: STRRET , pidl : *const Common:: ITEMIDLIST , pbstr : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT );
StrRetToBSTR(pstr, ::core::mem::transmute(pidl.unwrap_or(::std::ptr::null())), ::core::mem::transmute(pbstr)).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn StrRetToBufA(pstr: *mut Common::STRRET, pidl: ::core::option::Option<*const Common::ITEMIDLIST>, pszbuf: &mut [u8]) -> ::windows::core::Result<()> {
::windows::core::link ! ( "shlwapi.dll""system" fn StrRetToBufA ( pstr : *mut Common:: STRRET , pidl : *const Common:: ITEMIDLIST , pszbuf : :: windows::core::PSTR , cchbuf : u32 ) -> :: windows::core::HRESULT );
StrRetToBufA(pstr, ::core::mem::transmute(pidl.unwrap_or(::std::ptr::null())), ::core::mem::transmute(pszbuf.as_ptr()), pszbuf.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn StrRetToBufW(pstr: *mut Common::STRRET, pidl: ::core::option::Option<*const Common::ITEMIDLIST>, pszbuf: &mut [u16]) -> ::windows::core::Result<()> {
::windows::core::link ! ( "shlwapi.dll""system" fn StrRetToBufW ( pstr : *mut Common:: STRRET , pidl : *const Common:: ITEMIDLIST , pszbuf : :: windows::core::PWSTR , cchbuf : u32 ) -> :: windows::core::HRESULT );
StrRetToBufW(pstr, ::core::mem::transmute(pidl.unwrap_or(::std::ptr::null())), ::core::mem::transmute(pszbuf.as_ptr()), pszbuf.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn StrRetToStrA(pstr: *mut Common::STRRET, pidl: ::core::option::Option<*const Common::ITEMIDLIST>, ppsz: *mut ::windows::core::PSTR) -> ::windows::core::Result<()> {
::windows::core::link ! ( "shlwapi.dll""system" fn StrRetToStrA ( pstr : *mut Common:: STRRET , pidl : *const Common:: ITEMIDLIST , ppsz : *mut :: windows::core::PSTR ) -> :: windows::core::HRESULT );
StrRetToStrA(pstr, ::core::mem::transmute(pidl.unwrap_or(::std::ptr::null())), ppsz).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
#[inline]
pub unsafe fn StrRetToStrW(pstr: *mut Common::STRRET, pidl: ::core::option::Option<*const Common::ITEMIDLIST>, ppsz: *mut ::windows::core::PWSTR) -> ::windows::core::Result<()> {
::windows::core::link ! ( "shlwapi.dll""system" fn StrRetToStrW ( pstr : *mut Common:: STRRET , pidl : *const Common:: ITEMIDLIST , ppsz : *mut :: windows::core::PWSTR ) -> :: windows::core::HRESULT );
StrRetToStrW(pstr, ::core::mem::transmute(pidl.unwrap_or(::std::ptr::null())), ppsz).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrSpnA<P0, P1>(psz: P0, pszset: P1) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrSpnA ( psz : :: windows::core::PCSTR , pszset : :: windows::core::PCSTR ) -> i32 );
StrSpnA(psz.into().abi(), pszset.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrSpnW<P0, P1>(psz: P0, pszset: P1) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrSpnW ( psz : :: windows::core::PCWSTR , pszset : :: windows::core::PCWSTR ) -> i32 );
StrSpnW(psz.into().abi(), pszset.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrStrA<P0, P1>(pszfirst: P0, pszsrch: P1) -> ::windows::core::PSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrStrA ( pszfirst : :: windows::core::PCSTR , pszsrch : :: windows::core::PCSTR ) -> :: windows::core::PSTR );
StrStrA(pszfirst.into().abi(), pszsrch.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrStrIA<P0, P1>(pszfirst: P0, pszsrch: P1) -> ::windows::core::PSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrStrIA ( pszfirst : :: windows::core::PCSTR , pszsrch : :: windows::core::PCSTR ) -> :: windows::core::PSTR );
StrStrIA(pszfirst.into().abi(), pszsrch.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrStrIW<P0, P1>(pszfirst: P0, pszsrch: P1) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrStrIW ( pszfirst : :: windows::core::PCWSTR , pszsrch : :: windows::core::PCWSTR ) -> :: windows::core::PWSTR );
StrStrIW(pszfirst.into().abi(), pszsrch.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrStrNIW<P0, P1>(pszfirst: P0, pszsrch: P1, cchmax: u32) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrStrNIW ( pszfirst : :: windows::core::PCWSTR , pszsrch : :: windows::core::PCWSTR , cchmax : u32 ) -> :: windows::core::PWSTR );
StrStrNIW(pszfirst.into().abi(), pszsrch.into().abi(), cchmax)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrStrNW<P0, P1>(pszfirst: P0, pszsrch: P1, cchmax: u32) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrStrNW ( pszfirst : :: windows::core::PCWSTR , pszsrch : :: windows::core::PCWSTR , cchmax : u32 ) -> :: windows::core::PWSTR );
StrStrNW(pszfirst.into().abi(), pszsrch.into().abi(), cchmax)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrStrW<P0, P1>(pszfirst: P0, pszsrch: P1) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrStrW ( pszfirst : :: windows::core::PCWSTR , pszsrch : :: windows::core::PCWSTR ) -> :: windows::core::PWSTR );
StrStrW(pszfirst.into().abi(), pszsrch.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn StrToInt64ExA<P0>(pszstring: P0, dwflags: i32, pllret: *mut i64) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrToInt64ExA ( pszstring : :: windows::core::PCSTR , dwflags : i32 , pllret : *mut i64 ) -> super::super::Foundation:: BOOL );
StrToInt64ExA(pszstring.into().abi(), dwflags, pllret)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn StrToInt64ExW<P0>(pszstring: P0, dwflags: i32, pllret: *mut i64) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrToInt64ExW ( pszstring : :: windows::core::PCWSTR , dwflags : i32 , pllret : *mut i64 ) -> super::super::Foundation:: BOOL );
StrToInt64ExW(pszstring.into().abi(), dwflags, pllret)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrToIntA<P0>(pszsrc: P0) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrToIntA ( pszsrc : :: windows::core::PCSTR ) -> i32 );
StrToIntA(pszsrc.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn StrToIntExA<P0>(pszstring: P0, dwflags: i32, piret: *mut i32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrToIntExA ( pszstring : :: windows::core::PCSTR , dwflags : i32 , piret : *mut i32 ) -> super::super::Foundation:: BOOL );
StrToIntExA(pszstring.into().abi(), dwflags, piret)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn StrToIntExW<P0>(pszstring: P0, dwflags: i32, piret: *mut i32) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrToIntExW ( pszstring : :: windows::core::PCWSTR , dwflags : i32 , piret : *mut i32 ) -> super::super::Foundation:: BOOL );
StrToIntExW(pszstring.into().abi(), dwflags, piret)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn StrToIntW<P0>(pszsrc: P0) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrToIntW ( pszsrc : :: windows::core::PCWSTR ) -> i32 );
StrToIntW(pszsrc.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn StrTrimA<P0>(psz: ::windows::core::PSTR, psztrimchars: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrTrimA ( psz : :: windows::core::PSTR , psztrimchars : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
StrTrimA(::core::mem::transmute(psz), psztrimchars.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn StrTrimW<P0>(psz: ::windows::core::PWSTR, psztrimchars: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn StrTrimW ( psz : :: windows::core::PWSTR , psztrimchars : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
StrTrimW(::core::mem::transmute(psz), psztrimchars.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn UnloadUserProfile<P0, P1>(htoken: P0, hprofile: P1) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
P1: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
::windows::core::link ! ( "userenv.dll""system" fn UnloadUserProfile ( htoken : super::super::Foundation:: HANDLE , hprofile : super::super::Foundation:: HANDLE ) -> super::super::Foundation:: BOOL );
UnloadUserProfile(htoken.into(), hprofile.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UnregisterAppConstrainedChangeNotification(registration: *mut _APPCONSTRAIN_REGISTRATION) {
::windows::core::link ! ( "api-ms-win-core-psm-appnotify-l1-1-1.dll""system" fn UnregisterAppConstrainedChangeNotification ( registration : *mut _APPCONSTRAIN_REGISTRATION ) -> ( ) );
UnregisterAppConstrainedChangeNotification(registration)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UnregisterAppStateChangeNotification(registration: *mut _APPSTATE_REGISTRATION) {
::windows::core::link ! ( "api-ms-win-core-psm-appnotify-l1-1-0.dll""system" fn UnregisterAppStateChangeNotification ( registration : *mut _APPSTATE_REGISTRATION ) -> ( ) );
UnregisterAppStateChangeNotification(registration)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UnregisterScaleChangeEvent(dwcookie: usize) -> ::windows::core::Result<()> {
::windows::core::link ! ( "api-ms-win-shcore-scaling-l1-1-1.dll""system" fn UnregisterScaleChangeEvent ( dwcookie : usize ) -> :: windows::core::HRESULT );
UnregisterScaleChangeEvent(dwcookie).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UrlApplySchemeA<P0>(pszin: P0, pszout: ::windows::core::PSTR, pcchout: *mut u32, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlApplySchemeA ( pszin : :: windows::core::PCSTR , pszout : :: windows::core::PSTR , pcchout : *mut u32 , dwflags : u32 ) -> :: windows::core::HRESULT );
UrlApplySchemeA(pszin.into().abi(), ::core::mem::transmute(pszout), pcchout, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UrlApplySchemeW<P0>(pszin: P0, pszout: ::windows::core::PWSTR, pcchout: *mut u32, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlApplySchemeW ( pszin : :: windows::core::PCWSTR , pszout : :: windows::core::PWSTR , pcchout : *mut u32 , dwflags : u32 ) -> :: windows::core::HRESULT );
UrlApplySchemeW(pszin.into().abi(), ::core::mem::transmute(pszout), pcchout, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UrlCanonicalizeA<P0>(pszurl: P0, pszcanonicalized: ::windows::core::PSTR, pcchcanonicalized: *mut u32, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlCanonicalizeA ( pszurl : :: windows::core::PCSTR , pszcanonicalized : :: windows::core::PSTR , pcchcanonicalized : *mut u32 , dwflags : u32 ) -> :: windows::core::HRESULT );
UrlCanonicalizeA(pszurl.into().abi(), ::core::mem::transmute(pszcanonicalized), pcchcanonicalized, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UrlCanonicalizeW<P0>(pszurl: P0, pszcanonicalized: ::windows::core::PWSTR, pcchcanonicalized: *mut u32, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlCanonicalizeW ( pszurl : :: windows::core::PCWSTR , pszcanonicalized : :: windows::core::PWSTR , pcchcanonicalized : *mut u32 , dwflags : u32 ) -> :: windows::core::HRESULT );
UrlCanonicalizeW(pszurl.into().abi(), ::core::mem::transmute(pszcanonicalized), pcchcanonicalized, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UrlCombineA<P0, P1>(pszbase: P0, pszrelative: P1, pszcombined: ::windows::core::PSTR, pcchcombined: *mut u32, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlCombineA ( pszbase : :: windows::core::PCSTR , pszrelative : :: windows::core::PCSTR , pszcombined : :: windows::core::PSTR , pcchcombined : *mut u32 , dwflags : u32 ) -> :: windows::core::HRESULT );
UrlCombineA(pszbase.into().abi(), pszrelative.into().abi(), ::core::mem::transmute(pszcombined), pcchcombined, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UrlCombineW<P0, P1>(pszbase: P0, pszrelative: P1, pszcombined: ::windows::core::PWSTR, pcchcombined: *mut u32, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlCombineW ( pszbase : :: windows::core::PCWSTR , pszrelative : :: windows::core::PCWSTR , pszcombined : :: windows::core::PWSTR , pcchcombined : *mut u32 , dwflags : u32 ) -> :: windows::core::HRESULT );
UrlCombineW(pszbase.into().abi(), pszrelative.into().abi(), ::core::mem::transmute(pszcombined), pcchcombined, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn UrlCompareA<P0, P1, P2>(psz1: P0, psz2: P1, fignoreslash: P2) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlCompareA ( psz1 : :: windows::core::PCSTR , psz2 : :: windows::core::PCSTR , fignoreslash : super::super::Foundation:: BOOL ) -> i32 );
UrlCompareA(psz1.into().abi(), psz2.into().abi(), fignoreslash.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn UrlCompareW<P0, P1, P2>(psz1: P0, psz2: P1, fignoreslash: P2) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<super::super::Foundation::BOOL>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlCompareW ( psz1 : :: windows::core::PCWSTR , psz2 : :: windows::core::PCWSTR , fignoreslash : super::super::Foundation:: BOOL ) -> i32 );
UrlCompareW(psz1.into().abi(), psz2.into().abi(), fignoreslash.into())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UrlCreateFromPathA<P0>(pszpath: P0, pszurl: ::windows::core::PSTR, pcchurl: *mut u32, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlCreateFromPathA ( pszpath : :: windows::core::PCSTR , pszurl : :: windows::core::PSTR , pcchurl : *mut u32 , dwflags : u32 ) -> :: windows::core::HRESULT );
UrlCreateFromPathA(pszpath.into().abi(), ::core::mem::transmute(pszurl), pcchurl, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UrlCreateFromPathW<P0>(pszpath: P0, pszurl: ::windows::core::PWSTR, pcchurl: *mut u32, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlCreateFromPathW ( pszpath : :: windows::core::PCWSTR , pszurl : :: windows::core::PWSTR , pcchurl : *mut u32 , dwflags : u32 ) -> :: windows::core::HRESULT );
UrlCreateFromPathW(pszpath.into().abi(), ::core::mem::transmute(pszurl), pcchurl, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UrlEscapeA<P0>(pszurl: P0, pszescaped: ::windows::core::PSTR, pcchescaped: *mut u32, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlEscapeA ( pszurl : :: windows::core::PCSTR , pszescaped : :: windows::core::PSTR , pcchescaped : *mut u32 , dwflags : u32 ) -> :: windows::core::HRESULT );
UrlEscapeA(pszurl.into().abi(), ::core::mem::transmute(pszescaped), pcchescaped, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UrlEscapeW<P0>(pszurl: P0, pszescaped: ::windows::core::PWSTR, pcchescaped: *mut u32, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlEscapeW ( pszurl : :: windows::core::PCWSTR , pszescaped : :: windows::core::PWSTR , pcchescaped : *mut u32 , dwflags : u32 ) -> :: windows::core::HRESULT );
UrlEscapeW(pszurl.into().abi(), ::core::mem::transmute(pszescaped), pcchescaped, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UrlFixupW<P0>(pcszurl: P0, psztranslatedurl: &mut [u16]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlFixupW ( pcszurl : :: windows::core::PCWSTR , psztranslatedurl : :: windows::core::PWSTR , cchmax : u32 ) -> :: windows::core::HRESULT );
UrlFixupW(pcszurl.into().abi(), ::core::mem::transmute(psztranslatedurl.as_ptr()), psztranslatedurl.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UrlGetLocationA<P0>(pszurl: P0) -> ::windows::core::PSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlGetLocationA ( pszurl : :: windows::core::PCSTR ) -> :: windows::core::PSTR );
UrlGetLocationA(pszurl.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UrlGetLocationW<P0>(pszurl: P0) -> ::windows::core::PWSTR
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlGetLocationW ( pszurl : :: windows::core::PCWSTR ) -> :: windows::core::PWSTR );
UrlGetLocationW(pszurl.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UrlGetPartA<P0>(pszin: P0, pszout: ::windows::core::PSTR, pcchout: *mut u32, dwpart: u32, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlGetPartA ( pszin : :: windows::core::PCSTR , pszout : :: windows::core::PSTR , pcchout : *mut u32 , dwpart : u32 , dwflags : u32 ) -> :: windows::core::HRESULT );
UrlGetPartA(pszin.into().abi(), ::core::mem::transmute(pszout), pcchout, dwpart, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UrlGetPartW<P0>(pszin: P0, pszout: ::windows::core::PWSTR, pcchout: *mut u32, dwpart: u32, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlGetPartW ( pszin : :: windows::core::PCWSTR , pszout : :: windows::core::PWSTR , pcchout : *mut u32 , dwpart : u32 , dwflags : u32 ) -> :: windows::core::HRESULT );
UrlGetPartW(pszin.into().abi(), ::core::mem::transmute(pszout), pcchout, dwpart, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UrlHashA<P0>(pszurl: P0, pbhash: &mut [u8]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlHashA ( pszurl : :: windows::core::PCSTR , pbhash : *mut u8 , cbhash : u32 ) -> :: windows::core::HRESULT );
UrlHashA(pszurl.into().abi(), ::core::mem::transmute(pbhash.as_ptr()), pbhash.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UrlHashW<P0>(pszurl: P0, pbhash: &mut [u8]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlHashW ( pszurl : :: windows::core::PCWSTR , pbhash : *mut u8 , cbhash : u32 ) -> :: windows::core::HRESULT );
UrlHashW(pszurl.into().abi(), ::core::mem::transmute(pbhash.as_ptr()), pbhash.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn UrlIsA<P0>(pszurl: P0, urlis: URLIS) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlIsA ( pszurl : :: windows::core::PCSTR , urlis : URLIS ) -> super::super::Foundation:: BOOL );
UrlIsA(pszurl.into().abi(), urlis)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn UrlIsNoHistoryA<P0>(pszurl: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlIsNoHistoryA ( pszurl : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
UrlIsNoHistoryA(pszurl.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn UrlIsNoHistoryW<P0>(pszurl: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlIsNoHistoryW ( pszurl : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
UrlIsNoHistoryW(pszurl.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn UrlIsOpaqueA<P0>(pszurl: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlIsOpaqueA ( pszurl : :: windows::core::PCSTR ) -> super::super::Foundation:: BOOL );
UrlIsOpaqueA(pszurl.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn UrlIsOpaqueW<P0>(pszurl: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlIsOpaqueW ( pszurl : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
UrlIsOpaqueW(pszurl.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn UrlIsW<P0>(pszurl: P0, urlis: URLIS) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn UrlIsW ( pszurl : :: windows::core::PCWSTR , urlis : URLIS ) -> super::super::Foundation:: BOOL );
UrlIsW(pszurl.into().abi(), urlis)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UrlUnescapeA(pszurl: ::windows::core::PSTR, pszunescaped: ::windows::core::PSTR, pcchunescaped: ::core::option::Option<*mut u32>, dwflags: u32) -> ::windows::core::Result<()> {
::windows::core::link ! ( "shlwapi.dll""system" fn UrlUnescapeA ( pszurl : :: windows::core::PSTR , pszunescaped : :: windows::core::PSTR , pcchunescaped : *mut u32 , dwflags : u32 ) -> :: windows::core::HRESULT );
UrlUnescapeA(::core::mem::transmute(pszurl), ::core::mem::transmute(pszunescaped), ::core::mem::transmute(pcchunescaped.unwrap_or(::std::ptr::null_mut())), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn UrlUnescapeW(pszurl: ::windows::core::PWSTR, pszunescaped: ::windows::core::PWSTR, pcchunescaped: ::core::option::Option<*mut u32>, dwflags: u32) -> ::windows::core::Result<()> {
::windows::core::link ! ( "shlwapi.dll""system" fn UrlUnescapeW ( pszurl : :: windows::core::PWSTR , pszunescaped : :: windows::core::PWSTR , pcchunescaped : *mut u32 , dwflags : u32 ) -> :: windows::core::HRESULT );
UrlUnescapeW(::core::mem::transmute(pszurl), ::core::mem::transmute(pszunescaped), ::core::mem::transmute(pcchunescaped.unwrap_or(::std::ptr::null_mut())), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn WhichPlatform() -> u32 {
::windows::core::link ! ( "shlwapi.dll""system" fn WhichPlatform ( ) -> u32 );
WhichPlatform()
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn Win32DeleteFile<P0>(pszpath: P0) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shell32.dll""system" fn Win32DeleteFile ( pszpath : :: windows::core::PCWSTR ) -> super::super::Foundation:: BOOL );
Win32DeleteFile(pszpath.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn WinHelpA<P0, P1>(hwndmain: P0, lpszhelp: P1, ucommand: u32, dwdata: usize) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "user32.dll""system" fn WinHelpA ( hwndmain : super::super::Foundation:: HWND , lpszhelp : :: windows::core::PCSTR , ucommand : u32 , dwdata : usize ) -> super::super::Foundation:: BOOL );
WinHelpA(hwndmain.into(), lpszhelp.into().abi(), ucommand, dwdata)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn WinHelpW<P0, P1>(hwndmain: P0, lpszhelp: P1, ucommand: u32, dwdata: usize) -> super::super::Foundation::BOOL
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "user32.dll""system" fn WinHelpW ( hwndmain : super::super::Foundation:: HWND , lpszhelp : :: windows::core::PCWSTR , ucommand : u32 , dwdata : usize ) -> super::super::Foundation:: BOOL );
WinHelpW(hwndmain.into(), lpszhelp.into().abi(), ucommand, dwdata)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
#[inline]
pub unsafe fn WriteCabinetState(pcs: *const CABINETSTATE) -> super::super::Foundation::BOOL {
::windows::core::link ! ( "shell32.dll""system" fn WriteCabinetState ( pcs : *const CABINETSTATE ) -> super::super::Foundation:: BOOL );
WriteCabinetState(pcs)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn wnsprintfA<P0>(pszdest: &mut [u8], pszfmt: P0) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""cdecl" fn wnsprintfA ( pszdest : :: windows::core::PSTR , cchdest : i32 , pszfmt : :: windows::core::PCSTR ) -> i32 );
wnsprintfA(::core::mem::transmute(pszdest.as_ptr()), pszdest.len() as _, pszfmt.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn wnsprintfW<P0>(pszdest: &mut [u16], pszfmt: P0) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""cdecl" fn wnsprintfW ( pszdest : :: windows::core::PWSTR , cchdest : i32 , pszfmt : :: windows::core::PCWSTR ) -> i32 );
wnsprintfW(::core::mem::transmute(pszdest.as_ptr()), pszdest.len() as _, pszfmt.into().abi())
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn wvnsprintfA<P0>(pszdest: &mut [u8], pszfmt: P0, arglist: *const i8) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn wvnsprintfA ( pszdest : :: windows::core::PSTR , cchdest : i32 , pszfmt : :: windows::core::PCSTR , arglist : *const i8 ) -> i32 );
wvnsprintfA(::core::mem::transmute(pszdest.as_ptr()), pszdest.len() as _, pszfmt.into().abi(), arglist)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[inline]
pub unsafe fn wvnsprintfW<P0>(pszdest: &mut [u16], pszfmt: P0, arglist: *const i8) -> i32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
::windows::core::link ! ( "shlwapi.dll""system" fn wvnsprintfW ( pszdest : :: windows::core::PWSTR , cchdest : i32 , pszfmt : :: windows::core::PCWSTR , arglist : *const i8 ) -> i32 );
wvnsprintfW(::core::mem::transmute(pszdest.as_ptr()), pszdest.len() as _, pszfmt.into().abi(), arglist)
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct CIE4ConnectionPoint(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl CIE4ConnectionPoint {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn GetConnectionInterface(&self) -> ::windows::core::Result<::windows::core::GUID> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetConnectionInterface)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn GetConnectionPointContainer(&self) -> ::windows::core::Result<super::super::System::Com::IConnectionPointContainer> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetConnectionPointContainer)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Advise<P0>(&self, punksink: P0) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Advise)(::windows::core::Vtable::as_raw(self), punksink.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Unadvise(&self, dwcookie: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Unadvise)(::windows::core::Vtable::as_raw(self), dwcookie).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn EnumConnections(&self) -> ::windows::core::Result<super::super::System::Com::IEnumConnections> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.EnumConnections)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn DoInvokeIE4(&self, pf: *mut super::super::Foundation::BOOL, ppv: *mut *mut ::core::ffi::c_void, dispid: i32, pdispparams: *mut super::super::System::Com::DISPPARAMS) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).DoInvokeIE4)(::windows::core::Vtable::as_raw(self), pf, ppv, dispid, pdispparams).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn DoInvokePIDLIE4<P0>(&self, dispid: i32, pidl: *mut Common::ITEMIDLIST, fcancancel: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).DoInvokePIDLIE4)(::windows::core::Vtable::as_raw(self), dispid, pidl, fcancancel.into()).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(CIE4ConnectionPoint, ::windows::core::IUnknown, super::super::System::Com::IConnectionPoint);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for CIE4ConnectionPoint {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for CIE4ConnectionPoint {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for CIE4ConnectionPoint {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for CIE4ConnectionPoint {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("CIE4ConnectionPoint").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for CIE4ConnectionPoint {
type Vtable = CIE4ConnectionPoint_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for CIE4ConnectionPoint {
const IID: ::windows::core::GUID = ::windows::core::GUID::zeroed();
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct CIE4ConnectionPoint_Vtbl {
pub base__: super::super::System::Com::IConnectionPoint_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub DoInvokeIE4: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pf: *mut super::super::Foundation::BOOL, ppv: *mut *mut ::core::ffi::c_void, dispid: i32, pdispparams: *mut super::super::System::Com::DISPPARAMS) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
DoInvokeIE4: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub DoInvokePIDLIE4: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dispid: i32, pidl: *mut Common::ITEMIDLIST, fcancancel: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common")))]
DoInvokePIDLIE4: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct DFConstraint(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl DFConstraint {
pub unsafe fn Name(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Name)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Value(&self) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Value)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(DFConstraint, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for DFConstraint {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for DFConstraint {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for DFConstraint {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for DFConstraint {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DFConstraint").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for DFConstraint {
type Vtable = DFConstraint_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for DFConstraint {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4a3df050_23bd_11d2_939f_00a0c91eedba);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct DFConstraint_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
pub Name: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbs: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub Value: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pv: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
Value: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct DShellFolderViewEvents(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl DShellFolderViewEvents {}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(DShellFolderViewEvents, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for DShellFolderViewEvents {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for DShellFolderViewEvents {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for DShellFolderViewEvents {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for DShellFolderViewEvents {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DShellFolderViewEvents").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for DShellFolderViewEvents {
type Vtable = DShellFolderViewEvents_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for DShellFolderViewEvents {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x62112aa2_ebe4_11cf_a5fb_0020afe7292d);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct DShellFolderViewEvents_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct DShellNameSpaceEvents(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl DShellNameSpaceEvents {}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(DShellNameSpaceEvents, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for DShellNameSpaceEvents {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for DShellNameSpaceEvents {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for DShellNameSpaceEvents {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for DShellNameSpaceEvents {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DShellNameSpaceEvents").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for DShellNameSpaceEvents {
type Vtable = DShellNameSpaceEvents_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for DShellNameSpaceEvents {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x55136806_b2de_11d1_b9f2_00a0c98bc547);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct DShellNameSpaceEvents_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct DShellWindowsEvents(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl DShellWindowsEvents {}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(DShellWindowsEvents, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for DShellWindowsEvents {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for DShellWindowsEvents {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for DShellWindowsEvents {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for DShellWindowsEvents {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DShellWindowsEvents").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for DShellWindowsEvents {
type Vtable = DShellWindowsEvents_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for DShellWindowsEvents {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfe4106e0_399a_11d0_a48c_00a0c90a8f39);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct DShellWindowsEvents_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct DWebBrowserEvents(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl DWebBrowserEvents {}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(DWebBrowserEvents, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for DWebBrowserEvents {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for DWebBrowserEvents {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for DWebBrowserEvents {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for DWebBrowserEvents {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DWebBrowserEvents").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for DWebBrowserEvents {
type Vtable = DWebBrowserEvents_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for DWebBrowserEvents {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xeab22ac2_30c1_11cf_a7eb_0000c05bae0b);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct DWebBrowserEvents_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct DWebBrowserEvents2(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl DWebBrowserEvents2 {}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(DWebBrowserEvents2, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for DWebBrowserEvents2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for DWebBrowserEvents2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for DWebBrowserEvents2 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for DWebBrowserEvents2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DWebBrowserEvents2").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for DWebBrowserEvents2 {
type Vtable = DWebBrowserEvents2_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for DWebBrowserEvents2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x34a715a0_6587_11d0_924a_0020afc7ac4d);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct DWebBrowserEvents2_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct Folder(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl Folder {
pub unsafe fn Title(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Title)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn ParentFolder(&self) -> ::windows::core::Result<Folder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ParentFolder)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Items(&self) -> ::windows::core::Result<FolderItems> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Items)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn ParseName(&self, bname: &::windows::core::BSTR) -> ::windows::core::Result<FolderItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ParseName)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bname), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn NewFolder(&self, bname: &::windows::core::BSTR, voptions: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).NewFolder)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bname), ::core::mem::transmute(voptions)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn MoveHere(&self, vitem: super::super::System::Com::VARIANT, voptions: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).MoveHere)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vitem), ::core::mem::transmute(voptions)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn CopyHere(&self, vitem: super::super::System::Com::VARIANT, voptions: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).CopyHere)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vitem), ::core::mem::transmute(voptions)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn GetDetailsOf(&self, vitem: super::super::System::Com::VARIANT, icolumn: i32) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetDetailsOf)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vitem), icolumn, result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(Folder, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for Folder {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for Folder {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for Folder {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for Folder {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("Folder").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for Folder {
type Vtable = Folder_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for Folder {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbbcbde60_c3ff_11ce_8350_444553540000);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct Folder_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
pub Title: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbs: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub Application: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Application: usize,
#[cfg(feature = "Win32_System_Com")]
pub Parent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Parent: usize,
#[cfg(feature = "Win32_System_Com")]
pub ParentFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppsf: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
ParentFolder: usize,
#[cfg(feature = "Win32_System_Com")]
pub Items: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Items: usize,
#[cfg(feature = "Win32_System_Com")]
pub ParseName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bname: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
ParseName: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub NewFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bname: *mut ::core::ffi::c_void, voptions: super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
NewFolder: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub MoveHere: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vitem: super::super::System::Com::VARIANT, voptions: super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
MoveHere: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub CopyHere: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vitem: super::super::System::Com::VARIANT, voptions: super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
CopyHere: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub GetDetailsOf: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vitem: super::super::System::Com::VARIANT, icolumn: i32, pbs: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
GetDetailsOf: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct Folder2(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl Folder2 {
pub unsafe fn Title(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Title)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn ParentFolder(&self) -> ::windows::core::Result<Folder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.ParentFolder)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Items(&self) -> ::windows::core::Result<FolderItems> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Items)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn ParseName(&self, bname: &::windows::core::BSTR) -> ::windows::core::Result<FolderItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.ParseName)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bname), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn NewFolder(&self, bname: &::windows::core::BSTR, voptions: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.NewFolder)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bname), ::core::mem::transmute(voptions)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn MoveHere(&self, vitem: super::super::System::Com::VARIANT, voptions: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.MoveHere)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vitem), ::core::mem::transmute(voptions)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn CopyHere(&self, vitem: super::super::System::Com::VARIANT, voptions: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.CopyHere)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vitem), ::core::mem::transmute(voptions)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn GetDetailsOf(&self, vitem: super::super::System::Com::VARIANT, icolumn: i32) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetDetailsOf)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vitem), icolumn, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Self_(&self) -> ::windows::core::Result<FolderItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Self_)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn OfflineStatus(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).OfflineStatus)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Synchronize(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Synchronize)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn HaveToShowWebViewBarricade(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).HaveToShowWebViewBarricade)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn DismissedWebViewBarricade(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).DismissedWebViewBarricade)(::windows::core::Vtable::as_raw(self)).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(Folder2, ::windows::core::IUnknown, super::super::System::Com::IDispatch, Folder);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for Folder2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for Folder2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for Folder2 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for Folder2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("Folder2").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for Folder2 {
type Vtable = Folder2_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for Folder2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf0d2d8ef_3890_11d2_bf8b_00c04fb93661);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct Folder2_Vtbl {
pub base__: Folder_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub Self_: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppfi: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Self_: usize,
pub OfflineStatus: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pul: *mut i32) -> ::windows::core::HRESULT,
pub Synchronize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub HaveToShowWebViewBarricade: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbhavetoshowwebviewbarricade: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
HaveToShowWebViewBarricade: usize,
pub DismissedWebViewBarricade: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct Folder3(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl Folder3 {
pub unsafe fn Title(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Title)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn ParentFolder(&self) -> ::windows::core::Result<Folder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.ParentFolder)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Items(&self) -> ::windows::core::Result<FolderItems> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Items)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn ParseName(&self, bname: &::windows::core::BSTR) -> ::windows::core::Result<FolderItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.ParseName)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bname), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn NewFolder(&self, bname: &::windows::core::BSTR, voptions: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.NewFolder)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bname), ::core::mem::transmute(voptions)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn MoveHere(&self, vitem: super::super::System::Com::VARIANT, voptions: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.MoveHere)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vitem), ::core::mem::transmute(voptions)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn CopyHere(&self, vitem: super::super::System::Com::VARIANT, voptions: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.CopyHere)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vitem), ::core::mem::transmute(voptions)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn GetDetailsOf(&self, vitem: super::super::System::Com::VARIANT, icolumn: i32) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetDetailsOf)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vitem), icolumn, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Self_(&self) -> ::windows::core::Result<FolderItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Self_)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn OfflineStatus(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.OfflineStatus)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Synchronize(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Synchronize)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn HaveToShowWebViewBarricade(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.HaveToShowWebViewBarricade)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn DismissedWebViewBarricade(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.DismissedWebViewBarricade)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ShowWebViewBarricade(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ShowWebViewBarricade)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetShowWebViewBarricade<P0>(&self, bshowwebviewbarricade: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).SetShowWebViewBarricade)(::windows::core::Vtable::as_raw(self), bshowwebviewbarricade.into()).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(Folder3, ::windows::core::IUnknown, super::super::System::Com::IDispatch, Folder, Folder2);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for Folder3 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for Folder3 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for Folder3 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for Folder3 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("Folder3").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for Folder3 {
type Vtable = Folder3_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for Folder3 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa7ae5f64_c4d7_4d7f_9307_4d24ee54b841);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct Folder3_Vtbl {
pub base__: Folder2_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub ShowWebViewBarricade: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbshowwebviewbarricade: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
ShowWebViewBarricade: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetShowWebViewBarricade: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bshowwebviewbarricade: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetShowWebViewBarricade: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct FolderItem(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl FolderItem {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Name(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Name)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetName(&self, bs: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetName)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bs)).ok()
}
pub unsafe fn Path(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Path)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn GetLink(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetLink)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn GetFolder(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFolder)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsLink(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IsLink)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsFolder(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IsFolder)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsFileSystem(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IsFileSystem)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsBrowsable(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IsBrowsable)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn ModifyDate(&self) -> ::windows::core::Result<f64> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ModifyDate)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetModifyDate(&self, dt: f64) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetModifyDate)(::windows::core::Vtable::as_raw(self), dt).ok()
}
pub unsafe fn Size(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Size)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Type(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Type)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Verbs(&self) -> ::windows::core::Result<FolderItemVerbs> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Verbs)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn InvokeVerb(&self, vverb: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).InvokeVerb)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vverb)).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(FolderItem, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for FolderItem {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for FolderItem {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for FolderItem {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for FolderItem {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FolderItem").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for FolderItem {
type Vtable = FolderItem_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for FolderItem {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfac32c80_cbe4_11ce_8350_444553540000);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct FolderItem_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub Application: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Application: usize,
#[cfg(feature = "Win32_System_Com")]
pub Parent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Parent: usize,
pub Name: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbs: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bs: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Path: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbs: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub GetLink: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
GetLink: usize,
#[cfg(feature = "Win32_System_Com")]
pub GetFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
GetFolder: usize,
#[cfg(feature = "Win32_Foundation")]
pub IsLink: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pb: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
IsLink: usize,
#[cfg(feature = "Win32_Foundation")]
pub IsFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pb: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
IsFolder: usize,
#[cfg(feature = "Win32_Foundation")]
pub IsFileSystem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pb: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
IsFileSystem: usize,
#[cfg(feature = "Win32_Foundation")]
pub IsBrowsable: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pb: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
IsBrowsable: usize,
pub ModifyDate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdt: *mut f64) -> ::windows::core::HRESULT,
pub SetModifyDate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dt: f64) -> ::windows::core::HRESULT,
pub Size: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pul: *mut i32) -> ::windows::core::HRESULT,
pub Type: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbs: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub Verbs: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppfic: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Verbs: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub InvokeVerb: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vverb: super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
InvokeVerb: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct FolderItem2(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl FolderItem2 {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Name(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Name)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetName(&self, bs: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetName)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bs)).ok()
}
pub unsafe fn Path(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Path)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn GetLink(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetLink)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn GetFolder(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetFolder)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsLink(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.IsLink)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsFolder(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.IsFolder)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsFileSystem(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.IsFileSystem)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsBrowsable(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.IsBrowsable)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn ModifyDate(&self) -> ::windows::core::Result<f64> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.ModifyDate)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetModifyDate(&self, dt: f64) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetModifyDate)(::windows::core::Vtable::as_raw(self), dt).ok()
}
pub unsafe fn Size(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Size)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Type(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Type)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Verbs(&self) -> ::windows::core::Result<FolderItemVerbs> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Verbs)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn InvokeVerb(&self, vverb: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.InvokeVerb)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vverb)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn InvokeVerbEx(&self, vverb: super::super::System::Com::VARIANT, vargs: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).InvokeVerbEx)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vverb), ::core::mem::transmute(vargs)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ExtendedProperty(&self, bstrpropname: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ExtendedProperty)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrpropname), result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(FolderItem2, ::windows::core::IUnknown, super::super::System::Com::IDispatch, FolderItem);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for FolderItem2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for FolderItem2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for FolderItem2 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for FolderItem2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FolderItem2").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for FolderItem2 {
type Vtable = FolderItem2_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for FolderItem2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xedc817aa_92b8_11d1_b075_00c04fc33aa5);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct FolderItem2_Vtbl {
pub base__: FolderItem_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub InvokeVerbEx: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vverb: super::super::System::Com::VARIANT, vargs: super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
InvokeVerbEx: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub ExtendedProperty: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrpropname: *mut ::core::ffi::c_void, pvret: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
ExtendedProperty: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct FolderItemVerb(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl FolderItemVerb {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Name(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Name)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn DoIt(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).DoIt)(::windows::core::Vtable::as_raw(self)).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(FolderItemVerb, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for FolderItemVerb {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for FolderItemVerb {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for FolderItemVerb {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for FolderItemVerb {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FolderItemVerb").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for FolderItemVerb {
type Vtable = FolderItemVerb_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for FolderItemVerb {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x08ec3e00_50b0_11cf_960c_0080c7f4ee85);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct FolderItemVerb_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub Application: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Application: usize,
#[cfg(feature = "Win32_System_Com")]
pub Parent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Parent: usize,
pub Name: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbs: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub DoIt: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct FolderItemVerbs(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl FolderItemVerbs {
pub unsafe fn Count(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Count)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Item(&self, index: super::super::System::Com::VARIANT) -> ::windows::core::Result<FolderItemVerb> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Item)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(index), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn _NewEnum(&self) -> ::windows::core::Result<::windows::core::IUnknown> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self)._NewEnum)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(FolderItemVerbs, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for FolderItemVerbs {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for FolderItemVerbs {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for FolderItemVerbs {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for FolderItemVerbs {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FolderItemVerbs").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for FolderItemVerbs {
type Vtable = FolderItemVerbs_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for FolderItemVerbs {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1f8352c0_50b0_11cf_960c_0080c7f4ee85);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct FolderItemVerbs_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
pub Count: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plcount: *mut i32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub Application: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Application: usize,
#[cfg(feature = "Win32_System_Com")]
pub Parent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Parent: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub Item: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, index: super::super::System::Com::VARIANT, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
Item: usize,
pub _NewEnum: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppunk: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct FolderItems(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl FolderItems {
pub unsafe fn Count(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Count)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Item(&self, index: super::super::System::Com::VARIANT) -> ::windows::core::Result<FolderItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Item)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(index), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn _NewEnum(&self) -> ::windows::core::Result<::windows::core::IUnknown> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self)._NewEnum)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(FolderItems, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for FolderItems {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for FolderItems {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for FolderItems {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for FolderItems {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FolderItems").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for FolderItems {
type Vtable = FolderItems_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for FolderItems {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x744129e0_cbe5_11ce_8350_444553540000);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct FolderItems_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
pub Count: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plcount: *mut i32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub Application: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Application: usize,
#[cfg(feature = "Win32_System_Com")]
pub Parent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Parent: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub Item: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, index: super::super::System::Com::VARIANT, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
Item: usize,
pub _NewEnum: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppunk: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct FolderItems2(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl FolderItems2 {
pub unsafe fn Count(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Count)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Item(&self, index: super::super::System::Com::VARIANT) -> ::windows::core::Result<FolderItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Item)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(index), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn _NewEnum(&self) -> ::windows::core::Result<::windows::core::IUnknown> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__._NewEnum)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn InvokeVerbEx(&self, vverb: super::super::System::Com::VARIANT, vargs: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).InvokeVerbEx)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vverb), ::core::mem::transmute(vargs)).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(FolderItems2, ::windows::core::IUnknown, super::super::System::Com::IDispatch, FolderItems);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for FolderItems2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for FolderItems2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for FolderItems2 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for FolderItems2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FolderItems2").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for FolderItems2 {
type Vtable = FolderItems2_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for FolderItems2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc94f0ad0_f363_11d2_a327_00c04f8eec7f);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct FolderItems2_Vtbl {
pub base__: FolderItems_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub InvokeVerbEx: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vverb: super::super::System::Com::VARIANT, vargs: super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
InvokeVerbEx: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct FolderItems3(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl FolderItems3 {
pub unsafe fn Count(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Count)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Item(&self, index: super::super::System::Com::VARIANT) -> ::windows::core::Result<FolderItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Item)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(index), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn _NewEnum(&self) -> ::windows::core::Result<::windows::core::IUnknown> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__._NewEnum)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn InvokeVerbEx(&self, vverb: super::super::System::Com::VARIANT, vargs: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.InvokeVerbEx)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vverb), ::core::mem::transmute(vargs)).ok()
}
pub unsafe fn Filter(&self, grfflags: i32, bstrfilespec: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Filter)(::windows::core::Vtable::as_raw(self), grfflags, ::core::mem::transmute_copy(bstrfilespec)).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Verbs(&self) -> ::windows::core::Result<FolderItemVerbs> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Verbs)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(FolderItems3, ::windows::core::IUnknown, super::super::System::Com::IDispatch, FolderItems, FolderItems2);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for FolderItems3 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for FolderItems3 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for FolderItems3 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for FolderItems3 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FolderItems3").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for FolderItems3 {
type Vtable = FolderItems3_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for FolderItems3 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xeaa7c309_bbec_49d5_821d_64d966cb667f);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct FolderItems3_Vtbl {
pub base__: FolderItems2_Vtbl,
pub Filter: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, grfflags: i32, bstrfilespec: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub Verbs: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppfic: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Verbs: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IACList(::windows::core::IUnknown);
impl IACList {
pub unsafe fn Expand<P0>(&self, pszexpand: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).Expand)(::windows::core::Vtable::as_raw(self), pszexpand.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IACList, ::windows::core::IUnknown);
impl ::core::clone::Clone for IACList {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IACList {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IACList {}
impl ::core::fmt::Debug for IACList {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IACList").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IACList {
type Vtable = IACList_Vtbl;
}
unsafe impl ::windows::core::Interface for IACList {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x77a130b0_94fd_11d0_a544_00c04fd7d062);
}
#[repr(C)]
#[doc(hidden)]
pub struct IACList_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Expand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszexpand: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IACList2(::windows::core::IUnknown);
impl IACList2 {
pub unsafe fn Expand<P0>(&self, pszexpand: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.Expand)(::windows::core::Vtable::as_raw(self), pszexpand.into().abi()).ok()
}
pub unsafe fn SetOptions(&self, dwflag: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetOptions)(::windows::core::Vtable::as_raw(self), dwflag).ok()
}
pub unsafe fn GetOptions(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetOptions)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IACList2, ::windows::core::IUnknown, IACList);
impl ::core::clone::Clone for IACList2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IACList2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IACList2 {}
impl ::core::fmt::Debug for IACList2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IACList2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IACList2 {
type Vtable = IACList2_Vtbl;
}
unsafe impl ::windows::core::Interface for IACList2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x470141a0_5186_11d2_bbb6_0060977b464c);
}
#[repr(C)]
#[doc(hidden)]
pub struct IACList2_Vtbl {
pub base__: IACList_Vtbl,
pub SetOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflag: u32) -> ::windows::core::HRESULT,
pub GetOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwflag: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IAccessibilityDockingService(::windows::core::IUnknown);
impl IAccessibilityDockingService {
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn GetAvailableSize<P0>(&self, hmonitor: P0, pcxfixed: *mut u32, pcymax: *mut u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Graphics::Gdi::HMONITOR>,
{
(::windows::core::Vtable::vtable(self).GetAvailableSize)(::windows::core::Vtable::as_raw(self), hmonitor.into(), pcxfixed, pcymax).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
pub unsafe fn DockWindow<P0, P1, P2>(&self, hwnd: P0, hmonitor: P1, cyrequested: u32, pcallback: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Graphics::Gdi::HMONITOR>,
P2: ::std::convert::Into<::windows::core::InParam<IAccessibilityDockingServiceCallback>>,
{
(::windows::core::Vtable::vtable(self).DockWindow)(::windows::core::Vtable::as_raw(self), hwnd.into(), hmonitor.into(), cyrequested, pcallback.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn UndockWindow<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).UndockWindow)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
}
::windows::core::interface_hierarchy!(IAccessibilityDockingService, ::windows::core::IUnknown);
impl ::core::clone::Clone for IAccessibilityDockingService {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IAccessibilityDockingService {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IAccessibilityDockingService {}
impl ::core::fmt::Debug for IAccessibilityDockingService {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IAccessibilityDockingService").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IAccessibilityDockingService {
type Vtable = IAccessibilityDockingService_Vtbl;
}
unsafe impl ::windows::core::Interface for IAccessibilityDockingService {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8849dc22_cedf_4c95_998d_051419dd3f76);
}
#[repr(C)]
#[doc(hidden)]
pub struct IAccessibilityDockingService_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Graphics_Gdi")]
pub GetAvailableSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hmonitor: super::super::Graphics::Gdi::HMONITOR, pcxfixed: *mut u32, pcymax: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Gdi"))]
GetAvailableSize: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
pub DockWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, hmonitor: super::super::Graphics::Gdi::HMONITOR, cyrequested: u32, pcallback: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi")))]
DockWindow: usize,
#[cfg(feature = "Win32_Foundation")]
pub UndockWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
UndockWindow: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IAccessibilityDockingServiceCallback(::windows::core::IUnknown);
impl IAccessibilityDockingServiceCallback {
pub unsafe fn Undocked(&self, undockreason: UNDOCK_REASON) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Undocked)(::windows::core::Vtable::as_raw(self), undockreason).ok()
}
}
::windows::core::interface_hierarchy!(IAccessibilityDockingServiceCallback, ::windows::core::IUnknown);
impl ::core::clone::Clone for IAccessibilityDockingServiceCallback {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IAccessibilityDockingServiceCallback {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IAccessibilityDockingServiceCallback {}
impl ::core::fmt::Debug for IAccessibilityDockingServiceCallback {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IAccessibilityDockingServiceCallback").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IAccessibilityDockingServiceCallback {
type Vtable = IAccessibilityDockingServiceCallback_Vtbl;
}
unsafe impl ::windows::core::Interface for IAccessibilityDockingServiceCallback {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x157733fd_a592_42e5_b594_248468c5a81b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IAccessibilityDockingServiceCallback_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Undocked: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, undockreason: UNDOCK_REASON) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IAccessibleObject(::windows::core::IUnknown);
impl IAccessibleObject {
pub unsafe fn SetAccessibleName<P0>(&self, pszname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetAccessibleName)(::windows::core::Vtable::as_raw(self), pszname.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IAccessibleObject, ::windows::core::IUnknown);
impl ::core::clone::Clone for IAccessibleObject {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IAccessibleObject {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IAccessibleObject {}
impl ::core::fmt::Debug for IAccessibleObject {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IAccessibleObject").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IAccessibleObject {
type Vtable = IAccessibleObject_Vtbl;
}
unsafe impl ::windows::core::Interface for IAccessibleObject {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x95a391c5_9ed4_4c28_8401_ab9e06719e11);
}
#[repr(C)]
#[doc(hidden)]
pub struct IAccessibleObject_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetAccessibleName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IActionProgress(::windows::core::IUnknown);
impl IActionProgress {
pub unsafe fn Begin(&self, action: SPACTION, flags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Begin)(::windows::core::Vtable::as_raw(self), action, flags).ok()
}
pub unsafe fn UpdateProgress(&self, ulcompleted: u64, ultotal: u64) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UpdateProgress)(::windows::core::Vtable::as_raw(self), ulcompleted, ultotal).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn UpdateText<P0, P1>(&self, sptext: SPTEXT, psztext: P0, fmaycompact: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).UpdateText)(::windows::core::Vtable::as_raw(self), sptext, psztext.into().abi(), fmaycompact.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn QueryCancel(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).QueryCancel)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn ResetCancel(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ResetCancel)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn End(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).End)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IActionProgress, ::windows::core::IUnknown);
impl ::core::clone::Clone for IActionProgress {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IActionProgress {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IActionProgress {}
impl ::core::fmt::Debug for IActionProgress {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IActionProgress").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IActionProgress {
type Vtable = IActionProgress_Vtbl;
}
unsafe impl ::windows::core::Interface for IActionProgress {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x49ff1173_eadc_446d_9285_156453a6431c);
}
#[repr(C)]
#[doc(hidden)]
pub struct IActionProgress_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Begin: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, action: SPACTION, flags: u32) -> ::windows::core::HRESULT,
pub UpdateProgress: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ulcompleted: u64, ultotal: u64) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub UpdateText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, sptext: SPTEXT, psztext: ::windows::core::PCWSTR, fmaycompact: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
UpdateText: usize,
#[cfg(feature = "Win32_Foundation")]
pub QueryCancel: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfcancelled: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
QueryCancel: usize,
pub ResetCancel: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub End: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IActionProgressDialog(::windows::core::IUnknown);
impl IActionProgressDialog {
pub unsafe fn Initialize<P0, P1>(&self, flags: u32, psztitle: P0, pszcancel: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self), flags, psztitle.into().abi(), pszcancel.into().abi()).ok()
}
pub unsafe fn Stop(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Stop)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IActionProgressDialog, ::windows::core::IUnknown);
impl ::core::clone::Clone for IActionProgressDialog {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IActionProgressDialog {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IActionProgressDialog {}
impl ::core::fmt::Debug for IActionProgressDialog {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IActionProgressDialog").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IActionProgressDialog {
type Vtable = IActionProgressDialog_Vtbl;
}
unsafe impl ::windows::core::Interface for IActionProgressDialog {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x49ff1172_eadc_446d_9285_156453a6431c);
}
#[repr(C)]
#[doc(hidden)]
pub struct IActionProgressDialog_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, flags: u32, psztitle: ::windows::core::PCWSTR, pszcancel: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub Stop: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IAppActivationUIInfo(::windows::core::IUnknown);
impl IAppActivationUIInfo {
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn GetMonitor(&self) -> ::windows::core::Result<super::super::Graphics::Gdi::HMONITOR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetMonitor)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetInvokePoint(&self) -> ::windows::core::Result<super::super::Foundation::POINT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetInvokePoint)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetShowCommand(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetShowCommand)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetShowUI(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetShowUI)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetKeyState(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetKeyState)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IAppActivationUIInfo, ::windows::core::IUnknown);
impl ::core::clone::Clone for IAppActivationUIInfo {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IAppActivationUIInfo {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IAppActivationUIInfo {}
impl ::core::fmt::Debug for IAppActivationUIInfo {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IAppActivationUIInfo").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IAppActivationUIInfo {
type Vtable = IAppActivationUIInfo_Vtbl;
}
unsafe impl ::windows::core::Interface for IAppActivationUIInfo {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xabad189d_9fa3_4278_b3ca_8ca448a88dcb);
}
#[repr(C)]
#[doc(hidden)]
pub struct IAppActivationUIInfo_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Graphics_Gdi")]
pub GetMonitor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut super::super::Graphics::Gdi::HMONITOR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Gdi"))]
GetMonitor: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetInvokePoint: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut super::super::Foundation::POINT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetInvokePoint: usize,
pub GetShowCommand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut i32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetShowUI: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetShowUI: usize,
pub GetKeyState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IAppPublisher(::windows::core::IUnknown);
impl IAppPublisher {
pub unsafe fn GetNumberOfCategories(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetNumberOfCategories)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetCategories(&self) -> ::windows::core::Result<APPCATEGORYINFOLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCategories)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetNumberOfApps(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetNumberOfApps)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn EnumApps(&self, pappcategoryid: *const ::windows::core::GUID) -> ::windows::core::Result<IEnumPublishedApps> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).EnumApps)(::windows::core::Vtable::as_raw(self), pappcategoryid, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IAppPublisher, ::windows::core::IUnknown);
impl ::core::clone::Clone for IAppPublisher {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IAppPublisher {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IAppPublisher {}
impl ::core::fmt::Debug for IAppPublisher {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IAppPublisher").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IAppPublisher {
type Vtable = IAppPublisher_Vtbl;
}
unsafe impl ::windows::core::Interface for IAppPublisher {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x07250a10_9cf9_11d1_9076_006008059382);
}
#[repr(C)]
#[doc(hidden)]
pub struct IAppPublisher_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetNumberOfCategories: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwcat: *mut u32) -> ::windows::core::HRESULT,
pub GetCategories: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pappcategorylist: *mut APPCATEGORYINFOLIST) -> ::windows::core::HRESULT,
pub GetNumberOfApps: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwapps: *mut u32) -> ::windows::core::HRESULT,
pub EnumApps: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pappcategoryid: *const ::windows::core::GUID, ppepa: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IAppVisibility(::windows::core::IUnknown);
impl IAppVisibility {
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn GetAppVisibilityOnMonitor<P0>(&self, hmonitor: P0) -> ::windows::core::Result<MONITOR_APP_VISIBILITY>
where
P0: ::std::convert::Into<super::super::Graphics::Gdi::HMONITOR>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetAppVisibilityOnMonitor)(::windows::core::Vtable::as_raw(self), hmonitor.into(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsLauncherVisible(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IsLauncherVisible)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Advise<P0>(&self, pcallback: P0) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<IAppVisibilityEvents>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Advise)(::windows::core::Vtable::as_raw(self), pcallback.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Unadvise(&self, dwcookie: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Unadvise)(::windows::core::Vtable::as_raw(self), dwcookie).ok()
}
}
::windows::core::interface_hierarchy!(IAppVisibility, ::windows::core::IUnknown);
impl ::core::clone::Clone for IAppVisibility {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IAppVisibility {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IAppVisibility {}
impl ::core::fmt::Debug for IAppVisibility {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IAppVisibility").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IAppVisibility {
type Vtable = IAppVisibility_Vtbl;
}
unsafe impl ::windows::core::Interface for IAppVisibility {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2246ea2d_caea_4444_a3c4_6de827e44313);
}
#[repr(C)]
#[doc(hidden)]
pub struct IAppVisibility_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Graphics_Gdi")]
pub GetAppVisibilityOnMonitor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hmonitor: super::super::Graphics::Gdi::HMONITOR, pmode: *mut MONITOR_APP_VISIBILITY) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Gdi"))]
GetAppVisibilityOnMonitor: usize,
#[cfg(feature = "Win32_Foundation")]
pub IsLauncherVisible: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfvisible: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
IsLauncherVisible: usize,
pub Advise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcallback: *mut ::core::ffi::c_void, pdwcookie: *mut u32) -> ::windows::core::HRESULT,
pub Unadvise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwcookie: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IAppVisibilityEvents(::windows::core::IUnknown);
impl IAppVisibilityEvents {
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn AppVisibilityOnMonitorChanged<P0>(&self, hmonitor: P0, previousmode: MONITOR_APP_VISIBILITY, currentmode: MONITOR_APP_VISIBILITY) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Graphics::Gdi::HMONITOR>,
{
(::windows::core::Vtable::vtable(self).AppVisibilityOnMonitorChanged)(::windows::core::Vtable::as_raw(self), hmonitor.into(), previousmode, currentmode).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn LauncherVisibilityChange<P0>(&self, currentvisiblestate: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).LauncherVisibilityChange)(::windows::core::Vtable::as_raw(self), currentvisiblestate.into()).ok()
}
}
::windows::core::interface_hierarchy!(IAppVisibilityEvents, ::windows::core::IUnknown);
impl ::core::clone::Clone for IAppVisibilityEvents {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IAppVisibilityEvents {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IAppVisibilityEvents {}
impl ::core::fmt::Debug for IAppVisibilityEvents {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IAppVisibilityEvents").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IAppVisibilityEvents {
type Vtable = IAppVisibilityEvents_Vtbl;
}
unsafe impl ::windows::core::Interface for IAppVisibilityEvents {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6584ce6b_7d82_49c2_89c9_c6bc02ba8c38);
}
#[repr(C)]
#[doc(hidden)]
pub struct IAppVisibilityEvents_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Graphics_Gdi")]
pub AppVisibilityOnMonitorChanged: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hmonitor: super::super::Graphics::Gdi::HMONITOR, previousmode: MONITOR_APP_VISIBILITY, currentmode: MONITOR_APP_VISIBILITY) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Gdi"))]
AppVisibilityOnMonitorChanged: usize,
#[cfg(feature = "Win32_Foundation")]
pub LauncherVisibilityChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, currentvisiblestate: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
LauncherVisibilityChange: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IApplicationActivationManager(::windows::core::IUnknown);
impl IApplicationActivationManager {
pub unsafe fn ActivateApplication<P0, P1>(&self, appusermodelid: P0, arguments: P1, options: ACTIVATEOPTIONS) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ActivateApplication)(::windows::core::Vtable::as_raw(self), appusermodelid.into().abi(), arguments.into().abi(), options, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn ActivateForFile<P0, P1, P2>(&self, appusermodelid: P0, itemarray: P1, verb: P2) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItemArray>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ActivateForFile)(::windows::core::Vtable::as_raw(self), appusermodelid.into().abi(), itemarray.into().abi(), verb.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn ActivateForProtocol<P0, P1>(&self, appusermodelid: P0, itemarray: P1) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItemArray>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ActivateForProtocol)(::windows::core::Vtable::as_raw(self), appusermodelid.into().abi(), itemarray.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IApplicationActivationManager, ::windows::core::IUnknown);
impl ::core::clone::Clone for IApplicationActivationManager {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IApplicationActivationManager {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IApplicationActivationManager {}
impl ::core::fmt::Debug for IApplicationActivationManager {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IApplicationActivationManager").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IApplicationActivationManager {
type Vtable = IApplicationActivationManager_Vtbl;
}
unsafe impl ::windows::core::Interface for IApplicationActivationManager {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2e941141_7f97_4756_ba1d_9decde894a3d);
}
#[repr(C)]
#[doc(hidden)]
pub struct IApplicationActivationManager_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub ActivateApplication: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, appusermodelid: ::windows::core::PCWSTR, arguments: ::windows::core::PCWSTR, options: ACTIVATEOPTIONS, processid: *mut u32) -> ::windows::core::HRESULT,
pub ActivateForFile: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, appusermodelid: ::windows::core::PCWSTR, itemarray: *mut ::core::ffi::c_void, verb: ::windows::core::PCWSTR, processid: *mut u32) -> ::windows::core::HRESULT,
pub ActivateForProtocol: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, appusermodelid: ::windows::core::PCWSTR, itemarray: *mut ::core::ffi::c_void, processid: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IApplicationAssociationRegistration(::windows::core::IUnknown);
impl IApplicationAssociationRegistration {
pub unsafe fn QueryCurrentDefault<P0>(&self, pszquery: P0, atquerytype: ASSOCIATIONTYPE, alquerylevel: ASSOCIATIONLEVEL) -> ::windows::core::Result<::windows::core::PWSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).QueryCurrentDefault)(::windows::core::Vtable::as_raw(self), pszquery.into().abi(), atquerytype, alquerylevel, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn QueryAppIsDefault<P0, P1>(&self, pszquery: P0, atquerytype: ASSOCIATIONTYPE, alquerylevel: ASSOCIATIONLEVEL, pszappregistryname: P1) -> ::windows::core::Result<super::super::Foundation::BOOL>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).QueryAppIsDefault)(::windows::core::Vtable::as_raw(self), pszquery.into().abi(), atquerytype, alquerylevel, pszappregistryname.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn QueryAppIsDefaultAll<P0>(&self, alquerylevel: ASSOCIATIONLEVEL, pszappregistryname: P0) -> ::windows::core::Result<super::super::Foundation::BOOL>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).QueryAppIsDefaultAll)(::windows::core::Vtable::as_raw(self), alquerylevel, pszappregistryname.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetAppAsDefault<P0, P1>(&self, pszappregistryname: P0, pszset: P1, atsettype: ASSOCIATIONTYPE) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetAppAsDefault)(::windows::core::Vtable::as_raw(self), pszappregistryname.into().abi(), pszset.into().abi(), atsettype).ok()
}
pub unsafe fn SetAppAsDefaultAll<P0>(&self, pszappregistryname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetAppAsDefaultAll)(::windows::core::Vtable::as_raw(self), pszappregistryname.into().abi()).ok()
}
pub unsafe fn ClearUserAssociations(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ClearUserAssociations)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IApplicationAssociationRegistration, ::windows::core::IUnknown);
impl ::core::clone::Clone for IApplicationAssociationRegistration {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IApplicationAssociationRegistration {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IApplicationAssociationRegistration {}
impl ::core::fmt::Debug for IApplicationAssociationRegistration {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IApplicationAssociationRegistration").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IApplicationAssociationRegistration {
type Vtable = IApplicationAssociationRegistration_Vtbl;
}
unsafe impl ::windows::core::Interface for IApplicationAssociationRegistration {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4e530b0a_e611_4c77_a3ac_9031d022281b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IApplicationAssociationRegistration_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub QueryCurrentDefault: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszquery: ::windows::core::PCWSTR, atquerytype: ASSOCIATIONTYPE, alquerylevel: ASSOCIATIONLEVEL, ppszassociation: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub QueryAppIsDefault: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszquery: ::windows::core::PCWSTR, atquerytype: ASSOCIATIONTYPE, alquerylevel: ASSOCIATIONLEVEL, pszappregistryname: ::windows::core::PCWSTR, pfdefault: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
QueryAppIsDefault: usize,
#[cfg(feature = "Win32_Foundation")]
pub QueryAppIsDefaultAll: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, alquerylevel: ASSOCIATIONLEVEL, pszappregistryname: ::windows::core::PCWSTR, pfdefault: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
QueryAppIsDefaultAll: usize,
pub SetAppAsDefault: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszappregistryname: ::windows::core::PCWSTR, pszset: ::windows::core::PCWSTR, atsettype: ASSOCIATIONTYPE) -> ::windows::core::HRESULT,
pub SetAppAsDefaultAll: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszappregistryname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub ClearUserAssociations: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IApplicationAssociationRegistrationUI(::windows::core::IUnknown);
impl IApplicationAssociationRegistrationUI {
pub unsafe fn LaunchAdvancedAssociationUI<P0>(&self, pszappregistryname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).LaunchAdvancedAssociationUI)(::windows::core::Vtable::as_raw(self), pszappregistryname.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IApplicationAssociationRegistrationUI, ::windows::core::IUnknown);
impl ::core::clone::Clone for IApplicationAssociationRegistrationUI {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IApplicationAssociationRegistrationUI {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IApplicationAssociationRegistrationUI {}
impl ::core::fmt::Debug for IApplicationAssociationRegistrationUI {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IApplicationAssociationRegistrationUI").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IApplicationAssociationRegistrationUI {
type Vtable = IApplicationAssociationRegistrationUI_Vtbl;
}
unsafe impl ::windows::core::Interface for IApplicationAssociationRegistrationUI {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1f76a169_f994_40ac_8fc8_0959e8874710);
}
#[repr(C)]
#[doc(hidden)]
pub struct IApplicationAssociationRegistrationUI_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub LaunchAdvancedAssociationUI: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszappregistryname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IApplicationDesignModeSettings(::windows::core::IUnknown);
impl IApplicationDesignModeSettings {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetNativeDisplaySize(&self, nativedisplaysizepixels: super::super::Foundation::SIZE) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetNativeDisplaySize)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(nativedisplaysizepixels)).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SetScaleFactor(&self, scalefactor: Common::DEVICE_SCALE_FACTOR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetScaleFactor)(::windows::core::Vtable::as_raw(self), scalefactor).ok()
}
pub unsafe fn SetApplicationViewState(&self, viewstate: APPLICATION_VIEW_STATE) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetApplicationViewState)(::windows::core::Vtable::as_raw(self), viewstate).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ComputeApplicationSize(&self) -> ::windows::core::Result<super::super::Foundation::SIZE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ComputeApplicationSize)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn IsApplicationViewStateSupported(&self, viewstate: APPLICATION_VIEW_STATE, nativedisplaysizepixels: super::super::Foundation::SIZE, scalefactor: Common::DEVICE_SCALE_FACTOR) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IsApplicationViewStateSupported)(::windows::core::Vtable::as_raw(self), viewstate, ::core::mem::transmute(nativedisplaysizepixels), scalefactor, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn TriggerEdgeGesture(&self, edgegesturekind: EDGE_GESTURE_KIND) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).TriggerEdgeGesture)(::windows::core::Vtable::as_raw(self), edgegesturekind).ok()
}
}
::windows::core::interface_hierarchy!(IApplicationDesignModeSettings, ::windows::core::IUnknown);
impl ::core::clone::Clone for IApplicationDesignModeSettings {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IApplicationDesignModeSettings {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IApplicationDesignModeSettings {}
impl ::core::fmt::Debug for IApplicationDesignModeSettings {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IApplicationDesignModeSettings").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IApplicationDesignModeSettings {
type Vtable = IApplicationDesignModeSettings_Vtbl;
}
unsafe impl ::windows::core::Interface for IApplicationDesignModeSettings {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2a3dee9a_e31d_46d6_8508_bcc597db3557);
}
#[repr(C)]
#[doc(hidden)]
pub struct IApplicationDesignModeSettings_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub SetNativeDisplaySize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, nativedisplaysizepixels: super::super::Foundation::SIZE) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetNativeDisplaySize: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub SetScaleFactor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, scalefactor: Common::DEVICE_SCALE_FACTOR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
SetScaleFactor: usize,
pub SetApplicationViewState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, viewstate: APPLICATION_VIEW_STATE) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub ComputeApplicationSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, applicationsizepixels: *mut super::super::Foundation::SIZE) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
ComputeApplicationSize: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub IsApplicationViewStateSupported: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, viewstate: APPLICATION_VIEW_STATE, nativedisplaysizepixels: super::super::Foundation::SIZE, scalefactor: Common::DEVICE_SCALE_FACTOR, supported: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common")))]
IsApplicationViewStateSupported: usize,
pub TriggerEdgeGesture: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, edgegesturekind: EDGE_GESTURE_KIND) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IApplicationDesignModeSettings2(::windows::core::IUnknown);
impl IApplicationDesignModeSettings2 {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetNativeDisplaySize(&self, nativedisplaysizepixels: super::super::Foundation::SIZE) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetNativeDisplaySize)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(nativedisplaysizepixels)).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SetScaleFactor(&self, scalefactor: Common::DEVICE_SCALE_FACTOR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetScaleFactor)(::windows::core::Vtable::as_raw(self), scalefactor).ok()
}
pub unsafe fn SetApplicationViewState(&self, viewstate: APPLICATION_VIEW_STATE) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetApplicationViewState)(::windows::core::Vtable::as_raw(self), viewstate).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ComputeApplicationSize(&self) -> ::windows::core::Result<super::super::Foundation::SIZE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.ComputeApplicationSize)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn IsApplicationViewStateSupported(&self, viewstate: APPLICATION_VIEW_STATE, nativedisplaysizepixels: super::super::Foundation::SIZE, scalefactor: Common::DEVICE_SCALE_FACTOR) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.IsApplicationViewStateSupported)(::windows::core::Vtable::as_raw(self), viewstate, ::core::mem::transmute(nativedisplaysizepixels), scalefactor, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn TriggerEdgeGesture(&self, edgegesturekind: EDGE_GESTURE_KIND) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.TriggerEdgeGesture)(::windows::core::Vtable::as_raw(self), edgegesturekind).ok()
}
pub unsafe fn SetNativeDisplayOrientation(&self, nativedisplayorientation: NATIVE_DISPLAY_ORIENTATION) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetNativeDisplayOrientation)(::windows::core::Vtable::as_raw(self), nativedisplayorientation).ok()
}
pub unsafe fn SetApplicationViewOrientation(&self, vieworientation: APPLICATION_VIEW_ORIENTATION) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetApplicationViewOrientation)(::windows::core::Vtable::as_raw(self), vieworientation).ok()
}
pub unsafe fn SetAdjacentDisplayEdges(&self, adjacentdisplayedges: ADJACENT_DISPLAY_EDGES) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetAdjacentDisplayEdges)(::windows::core::Vtable::as_raw(self), adjacentdisplayedges).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetIsOnLockScreen<P0>(&self, isonlockscreen: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetIsOnLockScreen)(::windows::core::Vtable::as_raw(self), isonlockscreen.into()).ok()
}
pub unsafe fn SetApplicationViewMinWidth(&self, viewminwidth: APPLICATION_VIEW_MIN_WIDTH) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetApplicationViewMinWidth)(::windows::core::Vtable::as_raw(self), viewminwidth).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetApplicationSizeBounds(&self, minapplicationsizepixels: *mut super::super::Foundation::SIZE, maxapplicationsizepixels: *mut super::super::Foundation::SIZE) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetApplicationSizeBounds)(::windows::core::Vtable::as_raw(self), minapplicationsizepixels, maxapplicationsizepixels).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetApplicationViewOrientation(&self, applicationsizepixels: super::super::Foundation::SIZE) -> ::windows::core::Result<APPLICATION_VIEW_ORIENTATION> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetApplicationViewOrientation)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(applicationsizepixels), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IApplicationDesignModeSettings2, ::windows::core::IUnknown, IApplicationDesignModeSettings);
impl ::core::clone::Clone for IApplicationDesignModeSettings2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IApplicationDesignModeSettings2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IApplicationDesignModeSettings2 {}
impl ::core::fmt::Debug for IApplicationDesignModeSettings2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IApplicationDesignModeSettings2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IApplicationDesignModeSettings2 {
type Vtable = IApplicationDesignModeSettings2_Vtbl;
}
unsafe impl ::windows::core::Interface for IApplicationDesignModeSettings2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x490514e1_675a_4d6e_a58d_e54901b4ca2f);
}
#[repr(C)]
#[doc(hidden)]
pub struct IApplicationDesignModeSettings2_Vtbl {
pub base__: IApplicationDesignModeSettings_Vtbl,
pub SetNativeDisplayOrientation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, nativedisplayorientation: NATIVE_DISPLAY_ORIENTATION) -> ::windows::core::HRESULT,
pub SetApplicationViewOrientation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vieworientation: APPLICATION_VIEW_ORIENTATION) -> ::windows::core::HRESULT,
pub SetAdjacentDisplayEdges: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, adjacentdisplayedges: ADJACENT_DISPLAY_EDGES) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub SetIsOnLockScreen: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, isonlockscreen: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetIsOnLockScreen: usize,
pub SetApplicationViewMinWidth: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, viewminwidth: APPLICATION_VIEW_MIN_WIDTH) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetApplicationSizeBounds: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, minapplicationsizepixels: *mut super::super::Foundation::SIZE, maxapplicationsizepixels: *mut super::super::Foundation::SIZE) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetApplicationSizeBounds: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetApplicationViewOrientation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, applicationsizepixels: super::super::Foundation::SIZE, vieworientation: *mut APPLICATION_VIEW_ORIENTATION) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetApplicationViewOrientation: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IApplicationDestinations(::windows::core::IUnknown);
impl IApplicationDestinations {
pub unsafe fn SetAppID<P0>(&self, pszappid: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetAppID)(::windows::core::Vtable::as_raw(self), pszappid.into().abi()).ok()
}
pub unsafe fn RemoveDestination<P0>(&self, punk: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).RemoveDestination)(::windows::core::Vtable::as_raw(self), punk.into().abi()).ok()
}
pub unsafe fn RemoveAllDestinations(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RemoveAllDestinations)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IApplicationDestinations, ::windows::core::IUnknown);
impl ::core::clone::Clone for IApplicationDestinations {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IApplicationDestinations {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IApplicationDestinations {}
impl ::core::fmt::Debug for IApplicationDestinations {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IApplicationDestinations").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IApplicationDestinations {
type Vtable = IApplicationDestinations_Vtbl;
}
unsafe impl ::windows::core::Interface for IApplicationDestinations {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x12337d35_94c6_48a0_bce7_6a9c69d4d600);
}
#[repr(C)]
#[doc(hidden)]
pub struct IApplicationDestinations_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetAppID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszappid: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub RemoveDestination: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub RemoveAllDestinations: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IApplicationDocumentLists(::windows::core::IUnknown);
impl IApplicationDocumentLists {
pub unsafe fn SetAppID<P0>(&self, pszappid: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetAppID)(::windows::core::Vtable::as_raw(self), pszappid.into().abi()).ok()
}
pub unsafe fn GetList<T>(&self, listtype: APPDOCLISTTYPE, citemsdesired: u32) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetList)(::windows::core::Vtable::as_raw(self), listtype, citemsdesired, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IApplicationDocumentLists, ::windows::core::IUnknown);
impl ::core::clone::Clone for IApplicationDocumentLists {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IApplicationDocumentLists {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IApplicationDocumentLists {}
impl ::core::fmt::Debug for IApplicationDocumentLists {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IApplicationDocumentLists").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IApplicationDocumentLists {
type Vtable = IApplicationDocumentLists_Vtbl;
}
unsafe impl ::windows::core::Interface for IApplicationDocumentLists {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3c594f9f_9f30_47a1_979a_c9e83d3d0a06);
}
#[repr(C)]
#[doc(hidden)]
pub struct IApplicationDocumentLists_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetAppID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszappid: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub GetList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, listtype: APPDOCLISTTYPE, citemsdesired: u32, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IAssocHandler(::windows::core::IUnknown);
impl IAssocHandler {
pub unsafe fn GetName(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetName)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetUIName(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetUIName)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetIconLocation(&self, ppszpath: *mut ::windows::core::PWSTR, pindex: *mut i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetIconLocation)(::windows::core::Vtable::as_raw(self), ppszpath, pindex).ok()
}
pub unsafe fn IsRecommended(&self) -> ::windows::core::HRESULT {
(::windows::core::Vtable::vtable(self).IsRecommended)(::windows::core::Vtable::as_raw(self))
}
pub unsafe fn MakeDefault<P0>(&self, pszdescription: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).MakeDefault)(::windows::core::Vtable::as_raw(self), pszdescription.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Invoke<P0>(&self, pdo: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
{
(::windows::core::Vtable::vtable(self).Invoke)(::windows::core::Vtable::as_raw(self), pdo.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn CreateInvoker<P0>(&self, pdo: P0) -> ::windows::core::Result<IAssocHandlerInvoker>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CreateInvoker)(::windows::core::Vtable::as_raw(self), pdo.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IAssocHandler, ::windows::core::IUnknown);
impl ::core::clone::Clone for IAssocHandler {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IAssocHandler {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IAssocHandler {}
impl ::core::fmt::Debug for IAssocHandler {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IAssocHandler").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IAssocHandler {
type Vtable = IAssocHandler_Vtbl;
}
unsafe impl ::windows::core::Interface for IAssocHandler {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf04061ac_1659_4a3f_a954_775aa57fc083);
}
#[repr(C)]
#[doc(hidden)]
pub struct IAssocHandler_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppsz: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetUIName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppsz: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetIconLocation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszpath: *mut ::windows::core::PWSTR, pindex: *mut i32) -> ::windows::core::HRESULT,
pub IsRecommended: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub MakeDefault: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszdescription: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub Invoke: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdo: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Invoke: usize,
#[cfg(feature = "Win32_System_Com")]
pub CreateInvoker: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdo: *mut ::core::ffi::c_void, ppinvoker: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
CreateInvoker: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IAssocHandlerInvoker(::windows::core::IUnknown);
impl IAssocHandlerInvoker {
pub unsafe fn SupportsSelection(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SupportsSelection)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Invoke(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Invoke)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IAssocHandlerInvoker, ::windows::core::IUnknown);
impl ::core::clone::Clone for IAssocHandlerInvoker {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IAssocHandlerInvoker {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IAssocHandlerInvoker {}
impl ::core::fmt::Debug for IAssocHandlerInvoker {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IAssocHandlerInvoker").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IAssocHandlerInvoker {
type Vtable = IAssocHandlerInvoker_Vtbl;
}
unsafe impl ::windows::core::Interface for IAssocHandlerInvoker {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x92218cab_ecaa_4335_8133_807fd234c2ee);
}
#[repr(C)]
#[doc(hidden)]
pub struct IAssocHandlerInvoker_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SupportsSelection: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Invoke: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IAttachmentExecute(::windows::core::IUnknown);
impl IAttachmentExecute {
pub unsafe fn SetClientTitle<P0>(&self, psztitle: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetClientTitle)(::windows::core::Vtable::as_raw(self), psztitle.into().abi()).ok()
}
pub unsafe fn SetClientGuid(&self, guid: *const ::windows::core::GUID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetClientGuid)(::windows::core::Vtable::as_raw(self), guid).ok()
}
pub unsafe fn SetLocalPath<P0>(&self, pszlocalpath: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetLocalPath)(::windows::core::Vtable::as_raw(self), pszlocalpath.into().abi()).ok()
}
pub unsafe fn SetFileName<P0>(&self, pszfilename: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetFileName)(::windows::core::Vtable::as_raw(self), pszfilename.into().abi()).ok()
}
pub unsafe fn SetSource<P0>(&self, pszsource: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetSource)(::windows::core::Vtable::as_raw(self), pszsource.into().abi()).ok()
}
pub unsafe fn SetReferrer<P0>(&self, pszreferrer: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetReferrer)(::windows::core::Vtable::as_raw(self), pszreferrer.into().abi()).ok()
}
pub unsafe fn CheckPolicy(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).CheckPolicy)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Prompt<P0>(&self, hwnd: P0, prompt: ATTACHMENT_PROMPT) -> ::windows::core::Result<ATTACHMENT_ACTION>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Prompt)(::windows::core::Vtable::as_raw(self), hwnd.into(), prompt, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Save(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Save)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Execute<P0, P1>(&self, hwnd: P0, pszverb: P1, phprocess: ::core::option::Option<*mut super::super::Foundation::HANDLE>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).Execute)(::windows::core::Vtable::as_raw(self), hwnd.into(), pszverb.into().abi(), ::core::mem::transmute(phprocess.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SaveWithUI<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).SaveWithUI)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
pub unsafe fn ClearClientState(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ClearClientState)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IAttachmentExecute, ::windows::core::IUnknown);
impl ::core::clone::Clone for IAttachmentExecute {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IAttachmentExecute {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IAttachmentExecute {}
impl ::core::fmt::Debug for IAttachmentExecute {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IAttachmentExecute").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IAttachmentExecute {
type Vtable = IAttachmentExecute_Vtbl;
}
unsafe impl ::windows::core::Interface for IAttachmentExecute {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x73db1241_1e85_4581_8e4f_a81e1d0f8c57);
}
#[repr(C)]
#[doc(hidden)]
pub struct IAttachmentExecute_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetClientTitle: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psztitle: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub SetClientGuid: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, guid: *const ::windows::core::GUID) -> ::windows::core::HRESULT,
pub SetLocalPath: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszlocalpath: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub SetFileName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszfilename: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub SetSource: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszsource: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub SetReferrer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszreferrer: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub CheckPolicy: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub Prompt: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, prompt: ATTACHMENT_PROMPT, paction: *mut ATTACHMENT_ACTION) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Prompt: usize,
pub Save: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub Execute: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, pszverb: ::windows::core::PCWSTR, phprocess: *mut super::super::Foundation::HANDLE) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Execute: usize,
#[cfg(feature = "Win32_Foundation")]
pub SaveWithUI: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SaveWithUI: usize,
pub ClearClientState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IAutoComplete(::windows::core::IUnknown);
impl IAutoComplete {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Init<P0, P1, P2, P3>(&self, hwndedit: P0, punkacl: P1, pwszregkeypath: P2, pwszquickcomplete: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).Init)(::windows::core::Vtable::as_raw(self), hwndedit.into(), punkacl.into().abi(), pwszregkeypath.into().abi(), pwszquickcomplete.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Enable<P0>(&self, fenable: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).Enable)(::windows::core::Vtable::as_raw(self), fenable.into()).ok()
}
}
::windows::core::interface_hierarchy!(IAutoComplete, ::windows::core::IUnknown);
impl ::core::clone::Clone for IAutoComplete {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IAutoComplete {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IAutoComplete {}
impl ::core::fmt::Debug for IAutoComplete {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IAutoComplete").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IAutoComplete {
type Vtable = IAutoComplete_Vtbl;
}
unsafe impl ::windows::core::Interface for IAutoComplete {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00bb2762_6a77_11d0_a535_00c04fd7d062);
}
#[repr(C)]
#[doc(hidden)]
pub struct IAutoComplete_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub Init: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndedit: super::super::Foundation::HWND, punkacl: *mut ::core::ffi::c_void, pwszregkeypath: ::windows::core::PCWSTR, pwszquickcomplete: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Init: usize,
#[cfg(feature = "Win32_Foundation")]
pub Enable: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fenable: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Enable: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IAutoComplete2(::windows::core::IUnknown);
impl IAutoComplete2 {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Init<P0, P1, P2, P3>(&self, hwndedit: P0, punkacl: P1, pwszregkeypath: P2, pwszquickcomplete: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.Init)(::windows::core::Vtable::as_raw(self), hwndedit.into(), punkacl.into().abi(), pwszregkeypath.into().abi(), pwszquickcomplete.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Enable<P0>(&self, fenable: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.Enable)(::windows::core::Vtable::as_raw(self), fenable.into()).ok()
}
pub unsafe fn SetOptions(&self, dwflag: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetOptions)(::windows::core::Vtable::as_raw(self), dwflag).ok()
}
pub unsafe fn GetOptions(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetOptions)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IAutoComplete2, ::windows::core::IUnknown, IAutoComplete);
impl ::core::clone::Clone for IAutoComplete2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IAutoComplete2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IAutoComplete2 {}
impl ::core::fmt::Debug for IAutoComplete2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IAutoComplete2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IAutoComplete2 {
type Vtable = IAutoComplete2_Vtbl;
}
unsafe impl ::windows::core::Interface for IAutoComplete2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xeac04bc0_3791_11d2_bb95_0060977b464c);
}
#[repr(C)]
#[doc(hidden)]
pub struct IAutoComplete2_Vtbl {
pub base__: IAutoComplete_Vtbl,
pub SetOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflag: u32) -> ::windows::core::HRESULT,
pub GetOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwflag: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IAutoCompleteDropDown(::windows::core::IUnknown);
impl IAutoCompleteDropDown {
pub unsafe fn GetDropDownStatus(&self, pdwflags: *mut u32, ppwszstring: *mut ::windows::core::PWSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetDropDownStatus)(::windows::core::Vtable::as_raw(self), pdwflags, ppwszstring).ok()
}
pub unsafe fn ResetEnumerator(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ResetEnumerator)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IAutoCompleteDropDown, ::windows::core::IUnknown);
impl ::core::clone::Clone for IAutoCompleteDropDown {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IAutoCompleteDropDown {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IAutoCompleteDropDown {}
impl ::core::fmt::Debug for IAutoCompleteDropDown {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IAutoCompleteDropDown").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IAutoCompleteDropDown {
type Vtable = IAutoCompleteDropDown_Vtbl;
}
unsafe impl ::windows::core::Interface for IAutoCompleteDropDown {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3cd141f4_3c6a_11d2_bcaa_00c04fd929db);
}
#[repr(C)]
#[doc(hidden)]
pub struct IAutoCompleteDropDown_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetDropDownStatus: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwflags: *mut u32, ppwszstring: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub ResetEnumerator: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IBandHost(::windows::core::IUnknown);
impl IBandHost {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CreateBand<P0, P1, T>(&self, rclsidband: *const ::windows::core::GUID, favailable: P0, fvisible: P1) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CreateBand)(::windows::core::Vtable::as_raw(self), rclsidband, favailable.into(), fvisible.into(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetBandAvailability<P0>(&self, rclsidband: *const ::windows::core::GUID, favailable: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetBandAvailability)(::windows::core::Vtable::as_raw(self), rclsidband, favailable.into()).ok()
}
pub unsafe fn DestroyBand(&self, rclsidband: *const ::windows::core::GUID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).DestroyBand)(::windows::core::Vtable::as_raw(self), rclsidband).ok()
}
}
::windows::core::interface_hierarchy!(IBandHost, ::windows::core::IUnknown);
impl ::core::clone::Clone for IBandHost {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IBandHost {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IBandHost {}
impl ::core::fmt::Debug for IBandHost {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IBandHost").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IBandHost {
type Vtable = IBandHost_Vtbl;
}
unsafe impl ::windows::core::Interface for IBandHost {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb9075c7c_d48e_403f_ab99_d6c77a1084ac);
}
#[repr(C)]
#[doc(hidden)]
pub struct IBandHost_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub CreateBand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rclsidband: *const ::windows::core::GUID, favailable: super::super::Foundation::BOOL, fvisible: super::super::Foundation::BOOL, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
CreateBand: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetBandAvailability: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rclsidband: *const ::windows::core::GUID, favailable: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetBandAvailability: usize,
pub DestroyBand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rclsidband: *const ::windows::core::GUID) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IBandSite(::windows::core::IUnknown);
impl IBandSite {
pub unsafe fn AddBand<P0>(&self, punk: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).AddBand)(::windows::core::Vtable::as_raw(self), punk.into().abi()).ok()
}
pub unsafe fn EnumBands(&self, uband: u32) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).EnumBands)(::windows::core::Vtable::as_raw(self), uband, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn QueryBand(&self, dwbandid: u32, ppstb: ::core::option::Option<*mut ::core::option::Option<IDeskBand>>, pdwstate: ::core::option::Option<*mut u32>, pszname: ::core::option::Option<&mut [u16]>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).QueryBand)(::windows::core::Vtable::as_raw(self), dwbandid, ::core::mem::transmute(ppstb.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pdwstate.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pszname.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pszname.as_deref().map_or(0, |slice| slice.len() as _)).ok()
}
pub unsafe fn SetBandState(&self, dwbandid: u32, dwmask: u32, dwstate: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetBandState)(::windows::core::Vtable::as_raw(self), dwbandid, dwmask, dwstate).ok()
}
pub unsafe fn RemoveBand(&self, dwbandid: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RemoveBand)(::windows::core::Vtable::as_raw(self), dwbandid).ok()
}
pub unsafe fn GetBandObject<T>(&self, dwbandid: u32) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetBandObject)(::windows::core::Vtable::as_raw(self), dwbandid, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetBandSiteInfo(&self, pbsinfo: *const BANDSITEINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetBandSiteInfo)(::windows::core::Vtable::as_raw(self), pbsinfo).ok()
}
pub unsafe fn GetBandSiteInfo(&self, pbsinfo: *mut BANDSITEINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetBandSiteInfo)(::windows::core::Vtable::as_raw(self), pbsinfo).ok()
}
}
::windows::core::interface_hierarchy!(IBandSite, ::windows::core::IUnknown);
impl ::core::clone::Clone for IBandSite {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IBandSite {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IBandSite {}
impl ::core::fmt::Debug for IBandSite {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IBandSite").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IBandSite {
type Vtable = IBandSite_Vtbl;
}
unsafe impl ::windows::core::Interface for IBandSite {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4cf504b0_de96_11d0_8b3f_00a0c911e8e5);
}
#[repr(C)]
#[doc(hidden)]
pub struct IBandSite_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub AddBand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub EnumBands: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uband: u32, pdwbandid: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Ole")]
pub QueryBand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwbandid: u32, ppstb: *mut *mut ::core::ffi::c_void, pdwstate: *mut u32, pszname: ::windows::core::PWSTR, cchname: i32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Ole"))]
QueryBand: usize,
pub SetBandState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwbandid: u32, dwmask: u32, dwstate: u32) -> ::windows::core::HRESULT,
pub RemoveBand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwbandid: u32) -> ::windows::core::HRESULT,
pub GetBandObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwbandid: u32, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetBandSiteInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbsinfo: *const BANDSITEINFO) -> ::windows::core::HRESULT,
pub GetBandSiteInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbsinfo: *mut BANDSITEINFO) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IBannerNotificationHandler(::windows::core::IUnknown);
impl IBannerNotificationHandler {
pub unsafe fn OnBannerEvent(&self, notification: *const BANNER_NOTIFICATION) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OnBannerEvent)(::windows::core::Vtable::as_raw(self), notification).ok()
}
}
::windows::core::interface_hierarchy!(IBannerNotificationHandler, ::windows::core::IUnknown);
impl ::core::clone::Clone for IBannerNotificationHandler {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IBannerNotificationHandler {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IBannerNotificationHandler {}
impl ::core::fmt::Debug for IBannerNotificationHandler {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IBannerNotificationHandler").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IBannerNotificationHandler {
type Vtable = IBannerNotificationHandler_Vtbl;
}
unsafe impl ::windows::core::Interface for IBannerNotificationHandler {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8d7b2ba7_db05_46a8_823c_d2b6de08ee91);
}
#[repr(C)]
#[doc(hidden)]
pub struct IBannerNotificationHandler_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub OnBannerEvent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, notification: *const BANNER_NOTIFICATION) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IBanneredBar(::windows::core::IUnknown);
impl IBanneredBar {
pub unsafe fn SetIconSize(&self, iicon: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetIconSize)(::windows::core::Vtable::as_raw(self), iicon).ok()
}
pub unsafe fn GetIconSize(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetIconSize)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn SetBitmap<P0>(&self, hbitmap: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Graphics::Gdi::HBITMAP>,
{
(::windows::core::Vtable::vtable(self).SetBitmap)(::windows::core::Vtable::as_raw(self), hbitmap.into()).ok()
}
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn GetBitmap(&self) -> ::windows::core::Result<super::super::Graphics::Gdi::HBITMAP> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetBitmap)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IBanneredBar, ::windows::core::IUnknown);
impl ::core::clone::Clone for IBanneredBar {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IBanneredBar {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IBanneredBar {}
impl ::core::fmt::Debug for IBanneredBar {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IBanneredBar").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IBanneredBar {
type Vtable = IBanneredBar_Vtbl;
}
unsafe impl ::windows::core::Interface for IBanneredBar {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x596a9a94_013e_11d1_8d34_00a0c90f2719);
}
#[repr(C)]
#[doc(hidden)]
pub struct IBanneredBar_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetIconSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, iicon: u32) -> ::windows::core::HRESULT,
pub GetIconSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, piicon: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Graphics_Gdi")]
pub SetBitmap: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hbitmap: super::super::Graphics::Gdi::HBITMAP) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Gdi"))]
SetBitmap: usize,
#[cfg(feature = "Win32_Graphics_Gdi")]
pub GetBitmap: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phbitmap: *mut super::super::Graphics::Gdi::HBITMAP) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Gdi"))]
GetBitmap: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IBrowserFrameOptions(::windows::core::IUnknown);
impl IBrowserFrameOptions {
pub unsafe fn GetFrameOptions(&self, dwmask: u32) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFrameOptions)(::windows::core::Vtable::as_raw(self), dwmask, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IBrowserFrameOptions, ::windows::core::IUnknown);
impl ::core::clone::Clone for IBrowserFrameOptions {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IBrowserFrameOptions {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IBrowserFrameOptions {}
impl ::core::fmt::Debug for IBrowserFrameOptions {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IBrowserFrameOptions").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IBrowserFrameOptions {
type Vtable = IBrowserFrameOptions_Vtbl;
}
unsafe impl ::windows::core::Interface for IBrowserFrameOptions {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x10df43c8_1dbe_11d3_8b34_006097df5bd4);
}
#[repr(C)]
#[doc(hidden)]
pub struct IBrowserFrameOptions_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetFrameOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwmask: u32, pdwoptions: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IBrowserService(::windows::core::IUnknown);
impl IBrowserService {
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn GetParentSite(&self) -> ::windows::core::Result<super::super::System::Ole::IOleInPlaceSite> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetParentSite)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn SetTitle<P0, P1>(&self, psv: P0, pszname: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetTitle)(::windows::core::Vtable::as_raw(self), psv.into().abi(), pszname.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn GetTitle<P0>(&self, psv: P0, pszname: &mut [u16]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).GetTitle)(::windows::core::Vtable::as_raw(self), psv.into().abi(), ::core::mem::transmute(pszname.as_ptr()), pszname.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn GetOleObject(&self) -> ::windows::core::Result<super::super::System::Ole::IOleObject> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetOleObject)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetTravelLog(&self) -> ::windows::core::Result<ITravelLog> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetTravelLog)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ShowControlWindow<P0>(&self, id: u32, fshow: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).ShowControlWindow)(::windows::core::Vtable::as_raw(self), id, fshow.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsControlWindowShown(&self, id: u32) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IsControlWindowShown)(::windows::core::Vtable::as_raw(self), id, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn IEGetDisplayName(&self, pidl: *const Common::ITEMIDLIST, pwszname: ::windows::core::PWSTR, uflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).IEGetDisplayName)(::windows::core::Vtable::as_raw(self), pidl, ::core::mem::transmute(pwszname), uflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn IEParseDisplayName<P0>(&self, uicp: u32, pwszpath: P0) -> ::windows::core::Result<*mut Common::ITEMIDLIST>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IEParseDisplayName)(::windows::core::Vtable::as_raw(self), uicp, pwszpath.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn DisplayParseError<P0>(&self, hres: ::windows::core::HRESULT, pwszpath: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).DisplayParseError)(::windows::core::Vtable::as_raw(self), hres, pwszpath.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn NavigateToPidl(&self, pidl: *const Common::ITEMIDLIST, grfhlnf: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).NavigateToPidl)(::windows::core::Vtable::as_raw(self), pidl, grfhlnf).ok()
}
pub unsafe fn SetNavigateState(&self, bnstate: BNSTATE) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetNavigateState)(::windows::core::Vtable::as_raw(self), bnstate).ok()
}
pub unsafe fn GetNavigateState(&self) -> ::windows::core::Result<BNSTATE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetNavigateState)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn NotifyRedirect<P0>(&self, psv: P0, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<super::super::Foundation::BOOL>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).NotifyRedirect)(::windows::core::Vtable::as_raw(self), psv.into().abi(), pidl, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn UpdateWindowList(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UpdateWindowList)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn UpdateBackForwardState(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UpdateBackForwardState)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetFlags(&self, dwflags: u32, dwflagmask: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetFlags)(::windows::core::Vtable::as_raw(self), dwflags, dwflagmask).ok()
}
pub unsafe fn GetFlags(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFlags)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn CanNavigateNow(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).CanNavigateNow)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetPidl(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPidl)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SetReferrer(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetReferrer)(::windows::core::Vtable::as_raw(self), pidl).ok()
}
pub unsafe fn GetBrowserIndex(&self) -> u32 {
(::windows::core::Vtable::vtable(self).GetBrowserIndex)(::windows::core::Vtable::as_raw(self))
}
pub unsafe fn GetBrowserByIndex(&self, dwid: u32) -> ::windows::core::Result<::windows::core::IUnknown> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetBrowserByIndex)(::windows::core::Vtable::as_raw(self), dwid, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn GetHistoryObject(&self, ppole: *mut ::core::option::Option<super::super::System::Ole::IOleObject>, pstm: *mut ::core::option::Option<super::super::System::Com::IStream>, ppbc: *mut ::core::option::Option<super::super::System::Com::IBindCtx>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetHistoryObject)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(ppole), ::core::mem::transmute(pstm), ::core::mem::transmute(ppbc)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn SetHistoryObject<P0, P1>(&self, pole: P0, fislocalanchor: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Ole::IOleObject>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetHistoryObject)(::windows::core::Vtable::as_raw(self), pole.into().abi(), fislocalanchor.into()).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn CacheOLEServer<P0>(&self, pole: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Ole::IOleObject>>,
{
(::windows::core::Vtable::vtable(self).CacheOLEServer)(::windows::core::Vtable::as_raw(self), pole.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn GetSetCodePage(&self, pvarin: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSetCodePage)(::windows::core::Vtable::as_raw(self), pvarin, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn OnHttpEquiv<P0, P1>(&self, psv: P0, fdone: P1, pvarargin: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).OnHttpEquiv)(::windows::core::Vtable::as_raw(self), psv.into().abi(), fdone.into(), pvarargin, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn GetPalette(&self) -> ::windows::core::Result<super::super::Graphics::Gdi::HPALETTE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPalette)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RegisterWindow<P0>(&self, fforceregister: P0, swc: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).RegisterWindow)(::windows::core::Vtable::as_raw(self), fforceregister.into(), swc).ok()
}
}
::windows::core::interface_hierarchy!(IBrowserService, ::windows::core::IUnknown);
impl ::core::clone::Clone for IBrowserService {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IBrowserService {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IBrowserService {}
impl ::core::fmt::Debug for IBrowserService {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IBrowserService").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IBrowserService {
type Vtable = IBrowserService_Vtbl;
}
unsafe impl ::windows::core::Interface for IBrowserService {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x02ba3b52_0547_11d1_b833_00c04fc9b31f);
}
#[repr(C)]
#[doc(hidden)]
pub struct IBrowserService_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_System_Ole")]
pub GetParentSite: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppipsite: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Ole"))]
GetParentSite: usize,
#[cfg(feature = "Win32_System_Ole")]
pub SetTitle: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psv: *mut ::core::ffi::c_void, pszname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Ole"))]
SetTitle: usize,
#[cfg(feature = "Win32_System_Ole")]
pub GetTitle: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psv: *mut ::core::ffi::c_void, pszname: ::windows::core::PWSTR, cchname: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Ole"))]
GetTitle: usize,
#[cfg(feature = "Win32_System_Ole")]
pub GetOleObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppobjv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Ole"))]
GetOleObject: usize,
pub GetTravelLog: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pptl: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub ShowControlWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, id: u32, fshow: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
ShowControlWindow: usize,
#[cfg(feature = "Win32_Foundation")]
pub IsControlWindowShown: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, id: u32, pfshown: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
IsControlWindowShown: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub IEGetDisplayName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, pwszname: ::windows::core::PWSTR, uflags: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
IEGetDisplayName: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub IEParseDisplayName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uicp: u32, pwszpath: ::windows::core::PCWSTR, ppidlout: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
IEParseDisplayName: usize,
pub DisplayParseError: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hres: ::windows::core::HRESULT, pwszpath: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub NavigateToPidl: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, grfhlnf: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
NavigateToPidl: usize,
pub SetNavigateState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bnstate: BNSTATE) -> ::windows::core::HRESULT,
pub GetNavigateState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbnstate: *mut BNSTATE) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub NotifyRedirect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psv: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, pfdidbrowse: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common")))]
NotifyRedirect: usize,
pub UpdateWindowList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub UpdateBackForwardState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32, dwflagmask: u32) -> ::windows::core::HRESULT,
pub GetFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwflags: *mut u32) -> ::windows::core::HRESULT,
pub CanNavigateNow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetPidl: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppidl: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetPidl: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub SetReferrer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
SetReferrer: usize,
pub GetBrowserIndex: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> u32,
pub GetBrowserByIndex: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwid: u32, ppunk: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub GetHistoryObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppole: *mut *mut ::core::ffi::c_void, pstm: *mut *mut ::core::ffi::c_void, ppbc: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
GetHistoryObject: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub SetHistoryObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pole: *mut ::core::ffi::c_void, fislocalanchor: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Ole")))]
SetHistoryObject: usize,
#[cfg(feature = "Win32_System_Ole")]
pub CacheOLEServer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pole: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Ole"))]
CacheOLEServer: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub GetSetCodePage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pvarin: *const super::super::System::Com::VARIANT, pvarout: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
GetSetCodePage: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub OnHttpEquiv: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psv: *mut ::core::ffi::c_void, fdone: super::super::Foundation::BOOL, pvarargin: *const super::super::System::Com::VARIANT, pvarargout: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
OnHttpEquiv: usize,
#[cfg(feature = "Win32_Graphics_Gdi")]
pub GetPalette: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hpal: *mut super::super::Graphics::Gdi::HPALETTE) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Gdi"))]
GetPalette: usize,
#[cfg(feature = "Win32_Foundation")]
pub RegisterWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fforceregister: super::super::Foundation::BOOL, swc: i32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
RegisterWindow: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IBrowserService2(::windows::core::IUnknown);
impl IBrowserService2 {
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn GetParentSite(&self) -> ::windows::core::Result<super::super::System::Ole::IOleInPlaceSite> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetParentSite)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn SetTitle<P0, P1>(&self, psv: P0, pszname: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetTitle)(::windows::core::Vtable::as_raw(self), psv.into().abi(), pszname.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn GetTitle<P0>(&self, psv: P0, pszname: &mut [u16]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).base__.GetTitle)(::windows::core::Vtable::as_raw(self), psv.into().abi(), ::core::mem::transmute(pszname.as_ptr()), pszname.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn GetOleObject(&self) -> ::windows::core::Result<super::super::System::Ole::IOleObject> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetOleObject)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetTravelLog(&self) -> ::windows::core::Result<ITravelLog> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetTravelLog)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ShowControlWindow<P0>(&self, id: u32, fshow: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.ShowControlWindow)(::windows::core::Vtable::as_raw(self), id, fshow.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsControlWindowShown(&self, id: u32) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.IsControlWindowShown)(::windows::core::Vtable::as_raw(self), id, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn IEGetDisplayName(&self, pidl: *const Common::ITEMIDLIST, pwszname: ::windows::core::PWSTR, uflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.IEGetDisplayName)(::windows::core::Vtable::as_raw(self), pidl, ::core::mem::transmute(pwszname), uflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn IEParseDisplayName<P0>(&self, uicp: u32, pwszpath: P0) -> ::windows::core::Result<*mut Common::ITEMIDLIST>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.IEParseDisplayName)(::windows::core::Vtable::as_raw(self), uicp, pwszpath.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn DisplayParseError<P0>(&self, hres: ::windows::core::HRESULT, pwszpath: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.DisplayParseError)(::windows::core::Vtable::as_raw(self), hres, pwszpath.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn NavigateToPidl(&self, pidl: *const Common::ITEMIDLIST, grfhlnf: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.NavigateToPidl)(::windows::core::Vtable::as_raw(self), pidl, grfhlnf).ok()
}
pub unsafe fn SetNavigateState(&self, bnstate: BNSTATE) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetNavigateState)(::windows::core::Vtable::as_raw(self), bnstate).ok()
}
pub unsafe fn GetNavigateState(&self) -> ::windows::core::Result<BNSTATE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetNavigateState)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn NotifyRedirect<P0>(&self, psv: P0, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<super::super::Foundation::BOOL>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.NotifyRedirect)(::windows::core::Vtable::as_raw(self), psv.into().abi(), pidl, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn UpdateWindowList(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.UpdateWindowList)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn UpdateBackForwardState(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.UpdateBackForwardState)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetFlags(&self, dwflags: u32, dwflagmask: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetFlags)(::windows::core::Vtable::as_raw(self), dwflags, dwflagmask).ok()
}
pub unsafe fn GetFlags(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetFlags)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn CanNavigateNow(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.CanNavigateNow)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetPidl(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetPidl)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SetReferrer(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetReferrer)(::windows::core::Vtable::as_raw(self), pidl).ok()
}
pub unsafe fn GetBrowserIndex(&self) -> u32 {
(::windows::core::Vtable::vtable(self).base__.GetBrowserIndex)(::windows::core::Vtable::as_raw(self))
}
pub unsafe fn GetBrowserByIndex(&self, dwid: u32) -> ::windows::core::Result<::windows::core::IUnknown> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetBrowserByIndex)(::windows::core::Vtable::as_raw(self), dwid, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn GetHistoryObject(&self, ppole: *mut ::core::option::Option<super::super::System::Ole::IOleObject>, pstm: *mut ::core::option::Option<super::super::System::Com::IStream>, ppbc: *mut ::core::option::Option<super::super::System::Com::IBindCtx>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetHistoryObject)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(ppole), ::core::mem::transmute(pstm), ::core::mem::transmute(ppbc)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn SetHistoryObject<P0, P1>(&self, pole: P0, fislocalanchor: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Ole::IOleObject>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.SetHistoryObject)(::windows::core::Vtable::as_raw(self), pole.into().abi(), fislocalanchor.into()).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn CacheOLEServer<P0>(&self, pole: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Ole::IOleObject>>,
{
(::windows::core::Vtable::vtable(self).base__.CacheOLEServer)(::windows::core::Vtable::as_raw(self), pole.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn GetSetCodePage(&self, pvarin: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetSetCodePage)(::windows::core::Vtable::as_raw(self), pvarin, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn OnHttpEquiv<P0, P1>(&self, psv: P0, fdone: P1, pvarargin: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.OnHttpEquiv)(::windows::core::Vtable::as_raw(self), psv.into().abi(), fdone.into(), pvarargin, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn GetPalette(&self) -> ::windows::core::Result<super::super::Graphics::Gdi::HPALETTE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetPalette)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RegisterWindow<P0>(&self, fforceregister: P0, swc: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.RegisterWindow)(::windows::core::Vtable::as_raw(self), fforceregister.into(), swc).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn WndProcBS<P0, P1, P2>(&self, hwnd: P0, umsg: u32, wparam: P1, lparam: P2) -> super::super::Foundation::LRESULT
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::WPARAM>,
P2: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).WndProcBS)(::windows::core::Vtable::as_raw(self), hwnd.into(), umsg, wparam.into(), lparam.into())
}
pub unsafe fn SetAsDefFolderSettings(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetAsDefFolderSettings)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetViewRect(&self) -> ::windows::core::Result<super::super::Foundation::RECT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetViewRect)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnSize<P0>(&self, wparam: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::WPARAM>,
{
(::windows::core::Vtable::vtable(self).OnSize)(::windows::core::Vtable::as_raw(self), wparam.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn OnCreate(&self, pcs: *const super::WindowsAndMessaging::CREATESTRUCTW) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OnCreate)(::windows::core::Vtable::as_raw(self), pcs).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnCommand<P0, P1>(&self, wparam: P0, lparam: P1) -> super::super::Foundation::LRESULT
where
P0: ::std::convert::Into<super::super::Foundation::WPARAM>,
P1: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).OnCommand)(::windows::core::Vtable::as_raw(self), wparam.into(), lparam.into())
}
pub unsafe fn OnDestroy(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OnDestroy)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Controls\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
pub unsafe fn OnNotify(&self, pnm: *const super::Controls::NMHDR) -> super::super::Foundation::LRESULT {
(::windows::core::Vtable::vtable(self).OnNotify)(::windows::core::Vtable::as_raw(self), pnm)
}
pub unsafe fn OnSetFocus(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OnSetFocus)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnFrameWindowActivateBS<P0>(&self, factive: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).OnFrameWindowActivateBS)(::windows::core::Vtable::as_raw(self), factive.into()).ok()
}
pub unsafe fn ReleaseShellView(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ReleaseShellView)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ActivatePendingView(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ActivatePendingView)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn CreateViewWindow<P0, P1>(&self, psvnew: P0, psvold: P1, prcview: *const super::super::Foundation::RECT) -> ::windows::core::Result<super::super::Foundation::HWND>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CreateViewWindow)(::windows::core::Vtable::as_raw(self), psvnew.into().abi(), psvold.into().abi(), prcview, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn CreateBrowserPropSheetExt(&self, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).CreateBrowserPropSheetExt)(::windows::core::Vtable::as_raw(self), riid, ppv).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetViewWindow(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetViewWindow)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn GetBaseBrowserData(&self) -> ::windows::core::Result<*mut BASEBROWSERDATALH> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetBaseBrowserData)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn PutBaseBrowserData(&self) -> *mut BASEBROWSERDATALH {
(::windows::core::Vtable::vtable(self).PutBaseBrowserData)(::windows::core::Vtable::as_raw(self))
}
pub unsafe fn InitializeTravelLog<P0>(&self, ptl: P0, dw: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ITravelLog>>,
{
(::windows::core::Vtable::vtable(self).InitializeTravelLog)(::windows::core::Vtable::as_raw(self), ptl.into().abi(), dw).ok()
}
pub unsafe fn SetTopBrowser(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetTopBrowser)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Offline(&self, icmd: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Offline)(::windows::core::Vtable::as_raw(self), icmd).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn AllowViewResize<P0>(&self, f: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).AllowViewResize)(::windows::core::Vtable::as_raw(self), f.into()).ok()
}
pub unsafe fn SetActivateState(&self, u: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetActivateState)(::windows::core::Vtable::as_raw(self), u).ok()
}
pub unsafe fn UpdateSecureLockIcon(&self, esecurelock: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UpdateSecureLockIcon)(::windows::core::Vtable::as_raw(self), esecurelock).ok()
}
pub unsafe fn InitializeDownloadManager(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).InitializeDownloadManager)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn InitializeTransitionSite(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).InitializeTransitionSite)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _Initialize<P0, P1>(&self, hwnd: P0, pauto: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self)._Initialize)(::windows::core::Vtable::as_raw(self), hwnd.into(), pauto.into().abi()).ok()
}
pub unsafe fn _CancelPendingNavigationAsync(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self)._CancelPendingNavigationAsync)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn _CancelPendingView(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self)._CancelPendingView)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn _MaySaveChanges(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self)._MaySaveChanges)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _PauseOrResumeView<P0>(&self, fpaused: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self)._PauseOrResumeView)(::windows::core::Vtable::as_raw(self), fpaused.into()).ok()
}
pub unsafe fn _DisableModeless(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self)._DisableModeless)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn _NavigateToPidl2(&self, pidl: *const Common::ITEMIDLIST, grfhlnf: u32, dwflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self)._NavigateToPidl2)(::windows::core::Vtable::as_raw(self), pidl, grfhlnf, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn _TryShell2Rename<P0>(&self, psv: P0, pidlnew: *const Common::ITEMIDLIST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self)._TryShell2Rename)(::windows::core::Vtable::as_raw(self), psv.into().abi(), pidlnew).ok()
}
pub unsafe fn _SwitchActivationNow(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self)._SwitchActivationNow)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn _ExecChildren<P0, P1>(&self, punkbar: P0, fbroadcast: P1, pguidcmdgroup: ::core::option::Option<*const ::windows::core::GUID>, ncmdid: u32, ncmdexecopt: u32, pvarargin: ::core::option::Option<*const super::super::System::Com::VARIANT>, pvarargout: ::core::option::Option<*mut super::super::System::Com::VARIANT>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self)._ExecChildren)(::windows::core::Vtable::as_raw(self), punkbar.into().abi(), fbroadcast.into(), ::core::mem::transmute(pguidcmdgroup.unwrap_or(::std::ptr::null())), ncmdid, ncmdexecopt, ::core::mem::transmute(pvarargin.unwrap_or(::std::ptr::null())), ::core::mem::transmute(pvarargout.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _SendChildren<P0, P1, P2, P3>(&self, hwndbar: P0, fbroadcast: P1, umsg: u32, wparam: P2, lparam: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
P2: ::std::convert::Into<super::super::Foundation::WPARAM>,
P3: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self)._SendChildren)(::windows::core::Vtable::as_raw(self), hwndbar.into(), fbroadcast.into(), umsg, wparam.into(), lparam.into()).ok()
}
pub unsafe fn GetFolderSetData(&self, pfsd: *mut FOLDERSETDATA) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetFolderSetData)(::windows::core::Vtable::as_raw(self), pfsd).ok()
}
pub unsafe fn _OnFocusChange(&self, itb: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self)._OnFocusChange)(::windows::core::Vtable::as_raw(self), itb).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn v_ShowHideChildWindows<P0>(&self, fchildonly: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).v_ShowHideChildWindows)(::windows::core::Vtable::as_raw(self), fchildonly.into()).ok()
}
pub unsafe fn _get_itbLastFocus(&self) -> u32 {
(::windows::core::Vtable::vtable(self)._get_itbLastFocus)(::windows::core::Vtable::as_raw(self))
}
pub unsafe fn _put_itbLastFocus(&self, itblastfocus: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self)._put_itbLastFocus)(::windows::core::Vtable::as_raw(self), itblastfocus).ok()
}
pub unsafe fn _UIActivateView(&self, ustate: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self)._UIActivateView)(::windows::core::Vtable::as_raw(self), ustate).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _GetViewBorderRect(&self, prc: *mut super::super::Foundation::RECT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self)._GetViewBorderRect)(::windows::core::Vtable::as_raw(self), prc).ok()
}
pub unsafe fn _UpdateViewRectSize(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self)._UpdateViewRectSize)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn _ResizeNextBorder(&self, itb: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self)._ResizeNextBorder)(::windows::core::Vtable::as_raw(self), itb).ok()
}
pub unsafe fn _ResizeView(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self)._ResizeView)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
pub unsafe fn _GetEffectiveClientArea<P0>(&self, lprectborder: *mut super::super::Foundation::RECT, hmon: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Graphics::Gdi::HMONITOR>,
{
(::windows::core::Vtable::vtable(self)._GetEffectiveClientArea)(::windows::core::Vtable::as_raw(self), lprectborder, hmon.into()).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn v_GetViewStream<P0>(&self, pidl: *mut Common::ITEMIDLIST, grfmode: u32, pwszname: P0) -> ::core::option::Option<super::super::System::Com::IStream>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).v_GetViewStream)(::windows::core::Vtable::as_raw(self), pidl, grfmode, pwszname.into().abi())
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ForwardViewMsg<P0, P1>(&self, umsg: u32, wparam: P0, lparam: P1) -> super::super::Foundation::LRESULT
where
P0: ::std::convert::Into<super::super::Foundation::WPARAM>,
P1: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).ForwardViewMsg)(::windows::core::Vtable::as_raw(self), umsg, wparam.into(), lparam.into())
}
#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub unsafe fn SetAcceleratorMenu<P0>(&self, hacc: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::WindowsAndMessaging::HACCEL>,
{
(::windows::core::Vtable::vtable(self).SetAcceleratorMenu)(::windows::core::Vtable::as_raw(self), hacc.into()).ok()
}
pub unsafe fn _GetToolbarCount(&self) -> i32 {
(::windows::core::Vtable::vtable(self)._GetToolbarCount)(::windows::core::Vtable::as_raw(self))
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole"))]
pub unsafe fn _GetToolbarItem(&self, itb: i32) -> *mut TOOLBARITEM {
(::windows::core::Vtable::vtable(self)._GetToolbarItem)(::windows::core::Vtable::as_raw(self), itb)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn _SaveToolbars<P0>(&self, pstm: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
(::windows::core::Vtable::vtable(self)._SaveToolbars)(::windows::core::Vtable::as_raw(self), pstm.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn _LoadToolbars<P0>(&self, pstm: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
(::windows::core::Vtable::vtable(self)._LoadToolbars)(::windows::core::Vtable::as_raw(self), pstm.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _CloseAndReleaseToolbars<P0>(&self, fclose: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self)._CloseAndReleaseToolbars)(::windows::core::Vtable::as_raw(self), fclose.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn v_MayGetNextToolbarFocus(&self, lpmsg: *const super::WindowsAndMessaging::MSG, itbnext: u32, citb: i32, pptbi: *mut *mut TOOLBARITEM, phwnd: *mut super::super::Foundation::HWND) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).v_MayGetNextToolbarFocus)(::windows::core::Vtable::as_raw(self), lpmsg, itbnext, citb, pptbi, phwnd).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _ResizeNextBorderHelper<P0>(&self, itb: u32, busehmonitor: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self)._ResizeNextBorderHelper)(::windows::core::Vtable::as_raw(self), itb, busehmonitor.into()).ok()
}
pub unsafe fn _FindTBar<P0>(&self, punksrc: P0) -> u32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self)._FindTBar)(::windows::core::Vtable::as_raw(self), punksrc.into().abi())
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn _SetFocus<P0>(&self, ptbi: *const TOOLBARITEM, hwnd: P0, lpmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self)._SetFocus)(::windows::core::Vtable::as_raw(self), ptbi, hwnd.into(), lpmsg).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn v_MayTranslateAccelerator(&self, pmsg: *mut super::WindowsAndMessaging::MSG) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).v_MayTranslateAccelerator)(::windows::core::Vtable::as_raw(self), pmsg).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _GetBorderDWHelper<P0, P1>(&self, punksrc: P0, lprectborder: *mut super::super::Foundation::RECT, busehmonitor: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self)._GetBorderDWHelper)(::windows::core::Vtable::as_raw(self), punksrc.into().abi(), lprectborder, busehmonitor.into()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn v_CheckZoneCrossing(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).v_CheckZoneCrossing)(::windows::core::Vtable::as_raw(self), pidl).ok()
}
}
::windows::core::interface_hierarchy!(IBrowserService2, ::windows::core::IUnknown, IBrowserService);
impl ::core::clone::Clone for IBrowserService2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IBrowserService2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IBrowserService2 {}
impl ::core::fmt::Debug for IBrowserService2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IBrowserService2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IBrowserService2 {
type Vtable = IBrowserService2_Vtbl;
}
unsafe impl ::windows::core::Interface for IBrowserService2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x68bd21cc_438b_11d2_a560_00a0c92dbfe8);
}
#[repr(C)]
#[doc(hidden)]
pub struct IBrowserService2_Vtbl {
pub base__: IBrowserService_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub WndProcBS: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, umsg: u32, wparam: super::super::Foundation::WPARAM, lparam: super::super::Foundation::LPARAM) -> super::super::Foundation::LRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
WndProcBS: usize,
pub SetAsDefFolderSettings: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetViewRect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, prc: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetViewRect: usize,
#[cfg(feature = "Win32_Foundation")]
pub OnSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, wparam: super::super::Foundation::WPARAM) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
OnSize: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub OnCreate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcs: *const super::WindowsAndMessaging::CREATESTRUCTW) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
OnCreate: usize,
#[cfg(feature = "Win32_Foundation")]
pub OnCommand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, wparam: super::super::Foundation::WPARAM, lparam: super::super::Foundation::LPARAM) -> super::super::Foundation::LRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
OnCommand: usize,
pub OnDestroy: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
pub OnNotify: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pnm: *const super::Controls::NMHDR) -> super::super::Foundation::LRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls")))]
OnNotify: usize,
pub OnSetFocus: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub OnFrameWindowActivateBS: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, factive: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
OnFrameWindowActivateBS: usize,
pub ReleaseShellView: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub ActivatePendingView: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub CreateViewWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psvnew: *mut ::core::ffi::c_void, psvold: *mut ::core::ffi::c_void, prcview: *const super::super::Foundation::RECT, phwnd: *mut super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Ole")))]
CreateViewWindow: usize,
pub CreateBrowserPropSheetExt: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetViewWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phwndview: *mut super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetViewWindow: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub GetBaseBrowserData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbbd: *mut *mut BASEBROWSERDATALH) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common")))]
GetBaseBrowserData: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub PutBaseBrowserData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> *mut BASEBROWSERDATALH,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common")))]
PutBaseBrowserData: usize,
pub InitializeTravelLog: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ptl: *mut ::core::ffi::c_void, dw: u32) -> ::windows::core::HRESULT,
pub SetTopBrowser: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Offline: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, icmd: i32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub AllowViewResize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, f: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
AllowViewResize: usize,
pub SetActivateState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, u: u32) -> ::windows::core::HRESULT,
pub UpdateSecureLockIcon: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, esecurelock: i32) -> ::windows::core::HRESULT,
pub InitializeDownloadManager: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub InitializeTransitionSite: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub _Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, pauto: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
_Initialize: usize,
pub _CancelPendingNavigationAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub _CancelPendingView: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub _MaySaveChanges: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub _PauseOrResumeView: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fpaused: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
_PauseOrResumeView: usize,
pub _DisableModeless: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub _NavigateToPidl2: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, grfhlnf: u32, dwflags: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
_NavigateToPidl2: usize,
#[cfg(all(feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub _TryShell2Rename: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psv: *mut ::core::ffi::c_void, pidlnew: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common")))]
_TryShell2Rename: usize,
pub _SwitchActivationNow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub _ExecChildren: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punkbar: *mut ::core::ffi::c_void, fbroadcast: super::super::Foundation::BOOL, pguidcmdgroup: *const ::windows::core::GUID, ncmdid: u32, ncmdexecopt: u32, pvarargin: *const super::super::System::Com::VARIANT, pvarargout: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
_ExecChildren: usize,
#[cfg(feature = "Win32_Foundation")]
pub _SendChildren: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndbar: super::super::Foundation::HWND, fbroadcast: super::super::Foundation::BOOL, umsg: u32, wparam: super::super::Foundation::WPARAM, lparam: super::super::Foundation::LPARAM) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
_SendChildren: usize,
pub GetFolderSetData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfsd: *mut FOLDERSETDATA) -> ::windows::core::HRESULT,
pub _OnFocusChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, itb: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub v_ShowHideChildWindows: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fchildonly: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
v_ShowHideChildWindows: usize,
pub _get_itbLastFocus: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> u32,
pub _put_itbLastFocus: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, itblastfocus: u32) -> ::windows::core::HRESULT,
pub _UIActivateView: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ustate: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub _GetViewBorderRect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, prc: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
_GetViewBorderRect: usize,
pub _UpdateViewRectSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub _ResizeNextBorder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, itb: u32) -> ::windows::core::HRESULT,
pub _ResizeView: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
pub _GetEffectiveClientArea: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lprectborder: *mut super::super::Foundation::RECT, hmon: super::super::Graphics::Gdi::HMONITOR) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi")))]
_GetEffectiveClientArea: usize,
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub v_GetViewStream: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *mut Common::ITEMIDLIST, grfmode: u32, pwszname: ::windows::core::PCWSTR) -> ::core::option::Option<super::super::System::Com::IStream>,
#[cfg(not(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common")))]
v_GetViewStream: usize,
#[cfg(feature = "Win32_Foundation")]
pub ForwardViewMsg: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, umsg: u32, wparam: super::super::Foundation::WPARAM, lparam: super::super::Foundation::LPARAM) -> super::super::Foundation::LRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
ForwardViewMsg: usize,
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub SetAcceleratorMenu: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hacc: super::WindowsAndMessaging::HACCEL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_WindowsAndMessaging"))]
SetAcceleratorMenu: usize,
pub _GetToolbarCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> i32,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole"))]
pub _GetToolbarItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, itb: i32) -> *mut TOOLBARITEM,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole")))]
_GetToolbarItem: usize,
#[cfg(feature = "Win32_System_Com")]
pub _SaveToolbars: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstm: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
_SaveToolbars: usize,
#[cfg(feature = "Win32_System_Com")]
pub _LoadToolbars: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstm: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
_LoadToolbars: usize,
#[cfg(feature = "Win32_Foundation")]
pub _CloseAndReleaseToolbars: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fclose: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
_CloseAndReleaseToolbars: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole", feature = "Win32_UI_WindowsAndMessaging"))]
pub v_MayGetNextToolbarFocus: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpmsg: *const super::WindowsAndMessaging::MSG, itbnext: u32, citb: i32, pptbi: *mut *mut TOOLBARITEM, phwnd: *mut super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole", feature = "Win32_UI_WindowsAndMessaging")))]
v_MayGetNextToolbarFocus: usize,
#[cfg(feature = "Win32_Foundation")]
pub _ResizeNextBorderHelper: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, itb: u32, busehmonitor: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
_ResizeNextBorderHelper: usize,
pub _FindTBar: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punksrc: *mut ::core::ffi::c_void) -> u32,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole", feature = "Win32_UI_WindowsAndMessaging"))]
pub _SetFocus: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ptbi: *const TOOLBARITEM, hwnd: super::super::Foundation::HWND, lpmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole", feature = "Win32_UI_WindowsAndMessaging")))]
_SetFocus: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub v_MayTranslateAccelerator: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pmsg: *mut super::WindowsAndMessaging::MSG) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
v_MayTranslateAccelerator: usize,
#[cfg(feature = "Win32_Foundation")]
pub _GetBorderDWHelper: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punksrc: *mut ::core::ffi::c_void, lprectborder: *mut super::super::Foundation::RECT, busehmonitor: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
_GetBorderDWHelper: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub v_CheckZoneCrossing: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
v_CheckZoneCrossing: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IBrowserService3(::windows::core::IUnknown);
impl IBrowserService3 {
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn GetParentSite(&self) -> ::windows::core::Result<super::super::System::Ole::IOleInPlaceSite> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetParentSite)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn SetTitle<P0, P1>(&self, psv: P0, pszname: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.base__.SetTitle)(::windows::core::Vtable::as_raw(self), psv.into().abi(), pszname.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn GetTitle<P0>(&self, psv: P0, pszname: &mut [u16]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).base__.base__.GetTitle)(::windows::core::Vtable::as_raw(self), psv.into().abi(), ::core::mem::transmute(pszname.as_ptr()), pszname.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn GetOleObject(&self) -> ::windows::core::Result<super::super::System::Ole::IOleObject> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetOleObject)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetTravelLog(&self) -> ::windows::core::Result<ITravelLog> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetTravelLog)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ShowControlWindow<P0>(&self, id: u32, fshow: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.ShowControlWindow)(::windows::core::Vtable::as_raw(self), id, fshow.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsControlWindowShown(&self, id: u32) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.IsControlWindowShown)(::windows::core::Vtable::as_raw(self), id, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn IEGetDisplayName(&self, pidl: *const Common::ITEMIDLIST, pwszname: ::windows::core::PWSTR, uflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.IEGetDisplayName)(::windows::core::Vtable::as_raw(self), pidl, ::core::mem::transmute(pwszname), uflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn IEParseDisplayName<P0>(&self, uicp: u32, pwszpath: P0) -> ::windows::core::Result<*mut Common::ITEMIDLIST>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.IEParseDisplayName)(::windows::core::Vtable::as_raw(self), uicp, pwszpath.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn DisplayParseError<P0>(&self, hres: ::windows::core::HRESULT, pwszpath: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.base__.DisplayParseError)(::windows::core::Vtable::as_raw(self), hres, pwszpath.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn NavigateToPidl(&self, pidl: *const Common::ITEMIDLIST, grfhlnf: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.NavigateToPidl)(::windows::core::Vtable::as_raw(self), pidl, grfhlnf).ok()
}
pub unsafe fn SetNavigateState(&self, bnstate: BNSTATE) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.SetNavigateState)(::windows::core::Vtable::as_raw(self), bnstate).ok()
}
pub unsafe fn GetNavigateState(&self) -> ::windows::core::Result<BNSTATE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetNavigateState)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn NotifyRedirect<P0>(&self, psv: P0, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<super::super::Foundation::BOOL>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.NotifyRedirect)(::windows::core::Vtable::as_raw(self), psv.into().abi(), pidl, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn UpdateWindowList(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.UpdateWindowList)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn UpdateBackForwardState(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.UpdateBackForwardState)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetFlags(&self, dwflags: u32, dwflagmask: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.SetFlags)(::windows::core::Vtable::as_raw(self), dwflags, dwflagmask).ok()
}
pub unsafe fn GetFlags(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetFlags)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn CanNavigateNow(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.CanNavigateNow)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetPidl(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetPidl)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SetReferrer(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.SetReferrer)(::windows::core::Vtable::as_raw(self), pidl).ok()
}
pub unsafe fn GetBrowserIndex(&self) -> u32 {
(::windows::core::Vtable::vtable(self).base__.base__.GetBrowserIndex)(::windows::core::Vtable::as_raw(self))
}
pub unsafe fn GetBrowserByIndex(&self, dwid: u32) -> ::windows::core::Result<::windows::core::IUnknown> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetBrowserByIndex)(::windows::core::Vtable::as_raw(self), dwid, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn GetHistoryObject(&self, ppole: *mut ::core::option::Option<super::super::System::Ole::IOleObject>, pstm: *mut ::core::option::Option<super::super::System::Com::IStream>, ppbc: *mut ::core::option::Option<super::super::System::Com::IBindCtx>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.GetHistoryObject)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(ppole), ::core::mem::transmute(pstm), ::core::mem::transmute(ppbc)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn SetHistoryObject<P0, P1>(&self, pole: P0, fislocalanchor: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Ole::IOleObject>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.SetHistoryObject)(::windows::core::Vtable::as_raw(self), pole.into().abi(), fislocalanchor.into()).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn CacheOLEServer<P0>(&self, pole: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Ole::IOleObject>>,
{
(::windows::core::Vtable::vtable(self).base__.base__.CacheOLEServer)(::windows::core::Vtable::as_raw(self), pole.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn GetSetCodePage(&self, pvarin: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetSetCodePage)(::windows::core::Vtable::as_raw(self), pvarin, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn OnHttpEquiv<P0, P1>(&self, psv: P0, fdone: P1, pvarargin: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.OnHttpEquiv)(::windows::core::Vtable::as_raw(self), psv.into().abi(), fdone.into(), pvarargin, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn GetPalette(&self) -> ::windows::core::Result<super::super::Graphics::Gdi::HPALETTE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetPalette)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RegisterWindow<P0>(&self, fforceregister: P0, swc: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.RegisterWindow)(::windows::core::Vtable::as_raw(self), fforceregister.into(), swc).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn WndProcBS<P0, P1, P2>(&self, hwnd: P0, umsg: u32, wparam: P1, lparam: P2) -> super::super::Foundation::LRESULT
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::WPARAM>,
P2: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).base__.WndProcBS)(::windows::core::Vtable::as_raw(self), hwnd.into(), umsg, wparam.into(), lparam.into())
}
pub unsafe fn SetAsDefFolderSettings(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetAsDefFolderSettings)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetViewRect(&self) -> ::windows::core::Result<super::super::Foundation::RECT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetViewRect)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnSize<P0>(&self, wparam: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::WPARAM>,
{
(::windows::core::Vtable::vtable(self).base__.OnSize)(::windows::core::Vtable::as_raw(self), wparam.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn OnCreate(&self, pcs: *const super::WindowsAndMessaging::CREATESTRUCTW) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.OnCreate)(::windows::core::Vtable::as_raw(self), pcs).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnCommand<P0, P1>(&self, wparam: P0, lparam: P1) -> super::super::Foundation::LRESULT
where
P0: ::std::convert::Into<super::super::Foundation::WPARAM>,
P1: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).base__.OnCommand)(::windows::core::Vtable::as_raw(self), wparam.into(), lparam.into())
}
pub unsafe fn OnDestroy(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.OnDestroy)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Controls\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
pub unsafe fn OnNotify(&self, pnm: *const super::Controls::NMHDR) -> super::super::Foundation::LRESULT {
(::windows::core::Vtable::vtable(self).base__.OnNotify)(::windows::core::Vtable::as_raw(self), pnm)
}
pub unsafe fn OnSetFocus(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.OnSetFocus)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnFrameWindowActivateBS<P0>(&self, factive: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.OnFrameWindowActivateBS)(::windows::core::Vtable::as_raw(self), factive.into()).ok()
}
pub unsafe fn ReleaseShellView(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.ReleaseShellView)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ActivatePendingView(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.ActivatePendingView)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn CreateViewWindow<P0, P1>(&self, psvnew: P0, psvold: P1, prcview: *const super::super::Foundation::RECT) -> ::windows::core::Result<super::super::Foundation::HWND>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.CreateViewWindow)(::windows::core::Vtable::as_raw(self), psvnew.into().abi(), psvold.into().abi(), prcview, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn CreateBrowserPropSheetExt(&self, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.CreateBrowserPropSheetExt)(::windows::core::Vtable::as_raw(self), riid, ppv).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetViewWindow(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetViewWindow)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn GetBaseBrowserData(&self) -> ::windows::core::Result<*mut BASEBROWSERDATALH> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetBaseBrowserData)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn PutBaseBrowserData(&self) -> *mut BASEBROWSERDATALH {
(::windows::core::Vtable::vtable(self).base__.PutBaseBrowserData)(::windows::core::Vtable::as_raw(self))
}
pub unsafe fn InitializeTravelLog<P0>(&self, ptl: P0, dw: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ITravelLog>>,
{
(::windows::core::Vtable::vtable(self).base__.InitializeTravelLog)(::windows::core::Vtable::as_raw(self), ptl.into().abi(), dw).ok()
}
pub unsafe fn SetTopBrowser(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetTopBrowser)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Offline(&self, icmd: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Offline)(::windows::core::Vtable::as_raw(self), icmd).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn AllowViewResize<P0>(&self, f: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.AllowViewResize)(::windows::core::Vtable::as_raw(self), f.into()).ok()
}
pub unsafe fn SetActivateState(&self, u: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetActivateState)(::windows::core::Vtable::as_raw(self), u).ok()
}
pub unsafe fn UpdateSecureLockIcon(&self, esecurelock: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.UpdateSecureLockIcon)(::windows::core::Vtable::as_raw(self), esecurelock).ok()
}
pub unsafe fn InitializeDownloadManager(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.InitializeDownloadManager)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn InitializeTransitionSite(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.InitializeTransitionSite)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _Initialize<P0, P1>(&self, hwnd: P0, pauto: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).base__._Initialize)(::windows::core::Vtable::as_raw(self), hwnd.into(), pauto.into().abi()).ok()
}
pub unsafe fn _CancelPendingNavigationAsync(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__._CancelPendingNavigationAsync)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn _CancelPendingView(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__._CancelPendingView)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn _MaySaveChanges(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__._MaySaveChanges)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _PauseOrResumeView<P0>(&self, fpaused: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__._PauseOrResumeView)(::windows::core::Vtable::as_raw(self), fpaused.into()).ok()
}
pub unsafe fn _DisableModeless(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__._DisableModeless)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn _NavigateToPidl2(&self, pidl: *const Common::ITEMIDLIST, grfhlnf: u32, dwflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__._NavigateToPidl2)(::windows::core::Vtable::as_raw(self), pidl, grfhlnf, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn _TryShell2Rename<P0>(&self, psv: P0, pidlnew: *const Common::ITEMIDLIST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).base__._TryShell2Rename)(::windows::core::Vtable::as_raw(self), psv.into().abi(), pidlnew).ok()
}
pub unsafe fn _SwitchActivationNow(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__._SwitchActivationNow)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn _ExecChildren<P0, P1>(&self, punkbar: P0, fbroadcast: P1, pguidcmdgroup: ::core::option::Option<*const ::windows::core::GUID>, ncmdid: u32, ncmdexecopt: u32, pvarargin: ::core::option::Option<*const super::super::System::Com::VARIANT>, pvarargout: ::core::option::Option<*mut super::super::System::Com::VARIANT>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__._ExecChildren)(::windows::core::Vtable::as_raw(self), punkbar.into().abi(), fbroadcast.into(), ::core::mem::transmute(pguidcmdgroup.unwrap_or(::std::ptr::null())), ncmdid, ncmdexecopt, ::core::mem::transmute(pvarargin.unwrap_or(::std::ptr::null())), ::core::mem::transmute(pvarargout.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _SendChildren<P0, P1, P2, P3>(&self, hwndbar: P0, fbroadcast: P1, umsg: u32, wparam: P2, lparam: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
P2: ::std::convert::Into<super::super::Foundation::WPARAM>,
P3: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).base__._SendChildren)(::windows::core::Vtable::as_raw(self), hwndbar.into(), fbroadcast.into(), umsg, wparam.into(), lparam.into()).ok()
}
pub unsafe fn GetFolderSetData(&self, pfsd: *mut FOLDERSETDATA) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetFolderSetData)(::windows::core::Vtable::as_raw(self), pfsd).ok()
}
pub unsafe fn _OnFocusChange(&self, itb: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__._OnFocusChange)(::windows::core::Vtable::as_raw(self), itb).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn v_ShowHideChildWindows<P0>(&self, fchildonly: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.v_ShowHideChildWindows)(::windows::core::Vtable::as_raw(self), fchildonly.into()).ok()
}
pub unsafe fn _get_itbLastFocus(&self) -> u32 {
(::windows::core::Vtable::vtable(self).base__._get_itbLastFocus)(::windows::core::Vtable::as_raw(self))
}
pub unsafe fn _put_itbLastFocus(&self, itblastfocus: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__._put_itbLastFocus)(::windows::core::Vtable::as_raw(self), itblastfocus).ok()
}
pub unsafe fn _UIActivateView(&self, ustate: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__._UIActivateView)(::windows::core::Vtable::as_raw(self), ustate).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _GetViewBorderRect(&self, prc: *mut super::super::Foundation::RECT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__._GetViewBorderRect)(::windows::core::Vtable::as_raw(self), prc).ok()
}
pub unsafe fn _UpdateViewRectSize(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__._UpdateViewRectSize)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn _ResizeNextBorder(&self, itb: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__._ResizeNextBorder)(::windows::core::Vtable::as_raw(self), itb).ok()
}
pub unsafe fn _ResizeView(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__._ResizeView)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
pub unsafe fn _GetEffectiveClientArea<P0>(&self, lprectborder: *mut super::super::Foundation::RECT, hmon: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Graphics::Gdi::HMONITOR>,
{
(::windows::core::Vtable::vtable(self).base__._GetEffectiveClientArea)(::windows::core::Vtable::as_raw(self), lprectborder, hmon.into()).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn v_GetViewStream<P0>(&self, pidl: *mut Common::ITEMIDLIST, grfmode: u32, pwszname: P0) -> ::core::option::Option<super::super::System::Com::IStream>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.v_GetViewStream)(::windows::core::Vtable::as_raw(self), pidl, grfmode, pwszname.into().abi())
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ForwardViewMsg<P0, P1>(&self, umsg: u32, wparam: P0, lparam: P1) -> super::super::Foundation::LRESULT
where
P0: ::std::convert::Into<super::super::Foundation::WPARAM>,
P1: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).base__.ForwardViewMsg)(::windows::core::Vtable::as_raw(self), umsg, wparam.into(), lparam.into())
}
#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub unsafe fn SetAcceleratorMenu<P0>(&self, hacc: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::WindowsAndMessaging::HACCEL>,
{
(::windows::core::Vtable::vtable(self).base__.SetAcceleratorMenu)(::windows::core::Vtable::as_raw(self), hacc.into()).ok()
}
pub unsafe fn _GetToolbarCount(&self) -> i32 {
(::windows::core::Vtable::vtable(self).base__._GetToolbarCount)(::windows::core::Vtable::as_raw(self))
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole"))]
pub unsafe fn _GetToolbarItem(&self, itb: i32) -> *mut TOOLBARITEM {
(::windows::core::Vtable::vtable(self).base__._GetToolbarItem)(::windows::core::Vtable::as_raw(self), itb)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn _SaveToolbars<P0>(&self, pstm: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
(::windows::core::Vtable::vtable(self).base__._SaveToolbars)(::windows::core::Vtable::as_raw(self), pstm.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn _LoadToolbars<P0>(&self, pstm: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
(::windows::core::Vtable::vtable(self).base__._LoadToolbars)(::windows::core::Vtable::as_raw(self), pstm.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _CloseAndReleaseToolbars<P0>(&self, fclose: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__._CloseAndReleaseToolbars)(::windows::core::Vtable::as_raw(self), fclose.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn v_MayGetNextToolbarFocus(&self, lpmsg: *const super::WindowsAndMessaging::MSG, itbnext: u32, citb: i32, pptbi: *mut *mut TOOLBARITEM, phwnd: *mut super::super::Foundation::HWND) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.v_MayGetNextToolbarFocus)(::windows::core::Vtable::as_raw(self), lpmsg, itbnext, citb, pptbi, phwnd).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _ResizeNextBorderHelper<P0>(&self, itb: u32, busehmonitor: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__._ResizeNextBorderHelper)(::windows::core::Vtable::as_raw(self), itb, busehmonitor.into()).ok()
}
pub unsafe fn _FindTBar<P0>(&self, punksrc: P0) -> u32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).base__._FindTBar)(::windows::core::Vtable::as_raw(self), punksrc.into().abi())
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn _SetFocus<P0>(&self, ptbi: *const TOOLBARITEM, hwnd: P0, lpmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__._SetFocus)(::windows::core::Vtable::as_raw(self), ptbi, hwnd.into(), lpmsg).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn v_MayTranslateAccelerator(&self, pmsg: *mut super::WindowsAndMessaging::MSG) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.v_MayTranslateAccelerator)(::windows::core::Vtable::as_raw(self), pmsg).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _GetBorderDWHelper<P0, P1>(&self, punksrc: P0, lprectborder: *mut super::super::Foundation::RECT, busehmonitor: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__._GetBorderDWHelper)(::windows::core::Vtable::as_raw(self), punksrc.into().abi(), lprectborder, busehmonitor.into()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn v_CheckZoneCrossing(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.v_CheckZoneCrossing)(::windows::core::Vtable::as_raw(self), pidl).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _PositionViewWindow<P0>(&self, hwnd: P0, prc: *const super::super::Foundation::RECT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self)._PositionViewWindow)(::windows::core::Vtable::as_raw(self), hwnd.into(), prc).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn IEParseDisplayNameEx<P0>(&self, uicp: u32, pwszpath: P0, dwflags: u32) -> ::windows::core::Result<*mut Common::ITEMIDLIST>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IEParseDisplayNameEx)(::windows::core::Vtable::as_raw(self), uicp, pwszpath.into().abi(), dwflags, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IBrowserService3, ::windows::core::IUnknown, IBrowserService, IBrowserService2);
impl ::core::clone::Clone for IBrowserService3 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IBrowserService3 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IBrowserService3 {}
impl ::core::fmt::Debug for IBrowserService3 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IBrowserService3").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IBrowserService3 {
type Vtable = IBrowserService3_Vtbl;
}
unsafe impl ::windows::core::Interface for IBrowserService3 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x27d7ce21_762d_48f3_86f3_40e2fd3749c4);
}
#[repr(C)]
#[doc(hidden)]
pub struct IBrowserService3_Vtbl {
pub base__: IBrowserService2_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub _PositionViewWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, prc: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
_PositionViewWindow: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub IEParseDisplayNameEx: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uicp: u32, pwszpath: ::windows::core::PCWSTR, dwflags: u32, ppidlout: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
IEParseDisplayNameEx: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IBrowserService4(::windows::core::IUnknown);
impl IBrowserService4 {
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn GetParentSite(&self) -> ::windows::core::Result<super::super::System::Ole::IOleInPlaceSite> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.GetParentSite)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn SetTitle<P0, P1>(&self, psv: P0, pszname: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.SetTitle)(::windows::core::Vtable::as_raw(self), psv.into().abi(), pszname.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn GetTitle<P0>(&self, psv: P0, pszname: &mut [u16]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.GetTitle)(::windows::core::Vtable::as_raw(self), psv.into().abi(), ::core::mem::transmute(pszname.as_ptr()), pszname.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn GetOleObject(&self) -> ::windows::core::Result<super::super::System::Ole::IOleObject> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.GetOleObject)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetTravelLog(&self) -> ::windows::core::Result<ITravelLog> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.GetTravelLog)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ShowControlWindow<P0>(&self, id: u32, fshow: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.ShowControlWindow)(::windows::core::Vtable::as_raw(self), id, fshow.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsControlWindowShown(&self, id: u32) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.IsControlWindowShown)(::windows::core::Vtable::as_raw(self), id, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn IEGetDisplayName(&self, pidl: *const Common::ITEMIDLIST, pwszname: ::windows::core::PWSTR, uflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.IEGetDisplayName)(::windows::core::Vtable::as_raw(self), pidl, ::core::mem::transmute(pwszname), uflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn IEParseDisplayName<P0>(&self, uicp: u32, pwszpath: P0) -> ::windows::core::Result<*mut Common::ITEMIDLIST>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.IEParseDisplayName)(::windows::core::Vtable::as_raw(self), uicp, pwszpath.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn DisplayParseError<P0>(&self, hres: ::windows::core::HRESULT, pwszpath: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.DisplayParseError)(::windows::core::Vtable::as_raw(self), hres, pwszpath.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn NavigateToPidl(&self, pidl: *const Common::ITEMIDLIST, grfhlnf: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.NavigateToPidl)(::windows::core::Vtable::as_raw(self), pidl, grfhlnf).ok()
}
pub unsafe fn SetNavigateState(&self, bnstate: BNSTATE) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.SetNavigateState)(::windows::core::Vtable::as_raw(self), bnstate).ok()
}
pub unsafe fn GetNavigateState(&self) -> ::windows::core::Result<BNSTATE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.GetNavigateState)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn NotifyRedirect<P0>(&self, psv: P0, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<super::super::Foundation::BOOL>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.NotifyRedirect)(::windows::core::Vtable::as_raw(self), psv.into().abi(), pidl, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn UpdateWindowList(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.UpdateWindowList)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn UpdateBackForwardState(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.UpdateBackForwardState)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetFlags(&self, dwflags: u32, dwflagmask: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.SetFlags)(::windows::core::Vtable::as_raw(self), dwflags, dwflagmask).ok()
}
pub unsafe fn GetFlags(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.GetFlags)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn CanNavigateNow(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.CanNavigateNow)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetPidl(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.GetPidl)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SetReferrer(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.SetReferrer)(::windows::core::Vtable::as_raw(self), pidl).ok()
}
pub unsafe fn GetBrowserIndex(&self) -> u32 {
(::windows::core::Vtable::vtable(self).base__.base__.base__.GetBrowserIndex)(::windows::core::Vtable::as_raw(self))
}
pub unsafe fn GetBrowserByIndex(&self, dwid: u32) -> ::windows::core::Result<::windows::core::IUnknown> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.GetBrowserByIndex)(::windows::core::Vtable::as_raw(self), dwid, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn GetHistoryObject(&self, ppole: *mut ::core::option::Option<super::super::System::Ole::IOleObject>, pstm: *mut ::core::option::Option<super::super::System::Com::IStream>, ppbc: *mut ::core::option::Option<super::super::System::Com::IBindCtx>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.GetHistoryObject)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(ppole), ::core::mem::transmute(pstm), ::core::mem::transmute(ppbc)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn SetHistoryObject<P0, P1>(&self, pole: P0, fislocalanchor: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Ole::IOleObject>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.SetHistoryObject)(::windows::core::Vtable::as_raw(self), pole.into().abi(), fislocalanchor.into()).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn CacheOLEServer<P0>(&self, pole: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Ole::IOleObject>>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.CacheOLEServer)(::windows::core::Vtable::as_raw(self), pole.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn GetSetCodePage(&self, pvarin: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.GetSetCodePage)(::windows::core::Vtable::as_raw(self), pvarin, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn OnHttpEquiv<P0, P1>(&self, psv: P0, fdone: P1, pvarargin: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.OnHttpEquiv)(::windows::core::Vtable::as_raw(self), psv.into().abi(), fdone.into(), pvarargin, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn GetPalette(&self) -> ::windows::core::Result<super::super::Graphics::Gdi::HPALETTE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.GetPalette)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RegisterWindow<P0>(&self, fforceregister: P0, swc: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.RegisterWindow)(::windows::core::Vtable::as_raw(self), fforceregister.into(), swc).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn WndProcBS<P0, P1, P2>(&self, hwnd: P0, umsg: u32, wparam: P1, lparam: P2) -> super::super::Foundation::LRESULT
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::WPARAM>,
P2: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).base__.base__.WndProcBS)(::windows::core::Vtable::as_raw(self), hwnd.into(), umsg, wparam.into(), lparam.into())
}
pub unsafe fn SetAsDefFolderSettings(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.SetAsDefFolderSettings)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetViewRect(&self) -> ::windows::core::Result<super::super::Foundation::RECT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetViewRect)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnSize<P0>(&self, wparam: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::WPARAM>,
{
(::windows::core::Vtable::vtable(self).base__.base__.OnSize)(::windows::core::Vtable::as_raw(self), wparam.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn OnCreate(&self, pcs: *const super::WindowsAndMessaging::CREATESTRUCTW) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.OnCreate)(::windows::core::Vtable::as_raw(self), pcs).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnCommand<P0, P1>(&self, wparam: P0, lparam: P1) -> super::super::Foundation::LRESULT
where
P0: ::std::convert::Into<super::super::Foundation::WPARAM>,
P1: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).base__.base__.OnCommand)(::windows::core::Vtable::as_raw(self), wparam.into(), lparam.into())
}
pub unsafe fn OnDestroy(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.OnDestroy)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Controls\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
pub unsafe fn OnNotify(&self, pnm: *const super::Controls::NMHDR) -> super::super::Foundation::LRESULT {
(::windows::core::Vtable::vtable(self).base__.base__.OnNotify)(::windows::core::Vtable::as_raw(self), pnm)
}
pub unsafe fn OnSetFocus(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.OnSetFocus)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnFrameWindowActivateBS<P0>(&self, factive: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.OnFrameWindowActivateBS)(::windows::core::Vtable::as_raw(self), factive.into()).ok()
}
pub unsafe fn ReleaseShellView(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.ReleaseShellView)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ActivatePendingView(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.ActivatePendingView)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn CreateViewWindow<P0, P1>(&self, psvnew: P0, psvold: P1, prcview: *const super::super::Foundation::RECT) -> ::windows::core::Result<super::super::Foundation::HWND>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.CreateViewWindow)(::windows::core::Vtable::as_raw(self), psvnew.into().abi(), psvold.into().abi(), prcview, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn CreateBrowserPropSheetExt(&self, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.CreateBrowserPropSheetExt)(::windows::core::Vtable::as_raw(self), riid, ppv).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetViewWindow(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetViewWindow)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn GetBaseBrowserData(&self) -> ::windows::core::Result<*mut BASEBROWSERDATALH> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetBaseBrowserData)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn PutBaseBrowserData(&self) -> *mut BASEBROWSERDATALH {
(::windows::core::Vtable::vtable(self).base__.base__.PutBaseBrowserData)(::windows::core::Vtable::as_raw(self))
}
pub unsafe fn InitializeTravelLog<P0>(&self, ptl: P0, dw: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ITravelLog>>,
{
(::windows::core::Vtable::vtable(self).base__.base__.InitializeTravelLog)(::windows::core::Vtable::as_raw(self), ptl.into().abi(), dw).ok()
}
pub unsafe fn SetTopBrowser(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.SetTopBrowser)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Offline(&self, icmd: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.Offline)(::windows::core::Vtable::as_raw(self), icmd).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn AllowViewResize<P0>(&self, f: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.AllowViewResize)(::windows::core::Vtable::as_raw(self), f.into()).ok()
}
pub unsafe fn SetActivateState(&self, u: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.SetActivateState)(::windows::core::Vtable::as_raw(self), u).ok()
}
pub unsafe fn UpdateSecureLockIcon(&self, esecurelock: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.UpdateSecureLockIcon)(::windows::core::Vtable::as_raw(self), esecurelock).ok()
}
pub unsafe fn InitializeDownloadManager(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.InitializeDownloadManager)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn InitializeTransitionSite(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.InitializeTransitionSite)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _Initialize<P0, P1>(&self, hwnd: P0, pauto: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).base__.base__._Initialize)(::windows::core::Vtable::as_raw(self), hwnd.into(), pauto.into().abi()).ok()
}
pub unsafe fn _CancelPendingNavigationAsync(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__._CancelPendingNavigationAsync)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn _CancelPendingView(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__._CancelPendingView)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn _MaySaveChanges(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__._MaySaveChanges)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _PauseOrResumeView<P0>(&self, fpaused: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__._PauseOrResumeView)(::windows::core::Vtable::as_raw(self), fpaused.into()).ok()
}
pub unsafe fn _DisableModeless(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__._DisableModeless)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn _NavigateToPidl2(&self, pidl: *const Common::ITEMIDLIST, grfhlnf: u32, dwflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__._NavigateToPidl2)(::windows::core::Vtable::as_raw(self), pidl, grfhlnf, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn _TryShell2Rename<P0>(&self, psv: P0, pidlnew: *const Common::ITEMIDLIST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).base__.base__._TryShell2Rename)(::windows::core::Vtable::as_raw(self), psv.into().abi(), pidlnew).ok()
}
pub unsafe fn _SwitchActivationNow(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__._SwitchActivationNow)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn _ExecChildren<P0, P1>(&self, punkbar: P0, fbroadcast: P1, pguidcmdgroup: ::core::option::Option<*const ::windows::core::GUID>, ncmdid: u32, ncmdexecopt: u32, pvarargin: ::core::option::Option<*const super::super::System::Com::VARIANT>, pvarargout: ::core::option::Option<*mut super::super::System::Com::VARIANT>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__._ExecChildren)(::windows::core::Vtable::as_raw(self), punkbar.into().abi(), fbroadcast.into(), ::core::mem::transmute(pguidcmdgroup.unwrap_or(::std::ptr::null())), ncmdid, ncmdexecopt, ::core::mem::transmute(pvarargin.unwrap_or(::std::ptr::null())), ::core::mem::transmute(pvarargout.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _SendChildren<P0, P1, P2, P3>(&self, hwndbar: P0, fbroadcast: P1, umsg: u32, wparam: P2, lparam: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
P2: ::std::convert::Into<super::super::Foundation::WPARAM>,
P3: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).base__.base__._SendChildren)(::windows::core::Vtable::as_raw(self), hwndbar.into(), fbroadcast.into(), umsg, wparam.into(), lparam.into()).ok()
}
pub unsafe fn GetFolderSetData(&self, pfsd: *mut FOLDERSETDATA) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.GetFolderSetData)(::windows::core::Vtable::as_raw(self), pfsd).ok()
}
pub unsafe fn _OnFocusChange(&self, itb: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__._OnFocusChange)(::windows::core::Vtable::as_raw(self), itb).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn v_ShowHideChildWindows<P0>(&self, fchildonly: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.v_ShowHideChildWindows)(::windows::core::Vtable::as_raw(self), fchildonly.into()).ok()
}
pub unsafe fn _get_itbLastFocus(&self) -> u32 {
(::windows::core::Vtable::vtable(self).base__.base__._get_itbLastFocus)(::windows::core::Vtable::as_raw(self))
}
pub unsafe fn _put_itbLastFocus(&self, itblastfocus: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__._put_itbLastFocus)(::windows::core::Vtable::as_raw(self), itblastfocus).ok()
}
pub unsafe fn _UIActivateView(&self, ustate: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__._UIActivateView)(::windows::core::Vtable::as_raw(self), ustate).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _GetViewBorderRect(&self, prc: *mut super::super::Foundation::RECT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__._GetViewBorderRect)(::windows::core::Vtable::as_raw(self), prc).ok()
}
pub unsafe fn _UpdateViewRectSize(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__._UpdateViewRectSize)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn _ResizeNextBorder(&self, itb: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__._ResizeNextBorder)(::windows::core::Vtable::as_raw(self), itb).ok()
}
pub unsafe fn _ResizeView(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__._ResizeView)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
pub unsafe fn _GetEffectiveClientArea<P0>(&self, lprectborder: *mut super::super::Foundation::RECT, hmon: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Graphics::Gdi::HMONITOR>,
{
(::windows::core::Vtable::vtable(self).base__.base__._GetEffectiveClientArea)(::windows::core::Vtable::as_raw(self), lprectborder, hmon.into()).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn v_GetViewStream<P0>(&self, pidl: *mut Common::ITEMIDLIST, grfmode: u32, pwszname: P0) -> ::core::option::Option<super::super::System::Com::IStream>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.base__.v_GetViewStream)(::windows::core::Vtable::as_raw(self), pidl, grfmode, pwszname.into().abi())
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ForwardViewMsg<P0, P1>(&self, umsg: u32, wparam: P0, lparam: P1) -> super::super::Foundation::LRESULT
where
P0: ::std::convert::Into<super::super::Foundation::WPARAM>,
P1: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).base__.base__.ForwardViewMsg)(::windows::core::Vtable::as_raw(self), umsg, wparam.into(), lparam.into())
}
#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub unsafe fn SetAcceleratorMenu<P0>(&self, hacc: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::WindowsAndMessaging::HACCEL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.SetAcceleratorMenu)(::windows::core::Vtable::as_raw(self), hacc.into()).ok()
}
pub unsafe fn _GetToolbarCount(&self) -> i32 {
(::windows::core::Vtable::vtable(self).base__.base__._GetToolbarCount)(::windows::core::Vtable::as_raw(self))
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole"))]
pub unsafe fn _GetToolbarItem(&self, itb: i32) -> *mut TOOLBARITEM {
(::windows::core::Vtable::vtable(self).base__.base__._GetToolbarItem)(::windows::core::Vtable::as_raw(self), itb)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn _SaveToolbars<P0>(&self, pstm: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
(::windows::core::Vtable::vtable(self).base__.base__._SaveToolbars)(::windows::core::Vtable::as_raw(self), pstm.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn _LoadToolbars<P0>(&self, pstm: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
(::windows::core::Vtable::vtable(self).base__.base__._LoadToolbars)(::windows::core::Vtable::as_raw(self), pstm.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _CloseAndReleaseToolbars<P0>(&self, fclose: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__._CloseAndReleaseToolbars)(::windows::core::Vtable::as_raw(self), fclose.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn v_MayGetNextToolbarFocus(&self, lpmsg: *const super::WindowsAndMessaging::MSG, itbnext: u32, citb: i32, pptbi: *mut *mut TOOLBARITEM, phwnd: *mut super::super::Foundation::HWND) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.v_MayGetNextToolbarFocus)(::windows::core::Vtable::as_raw(self), lpmsg, itbnext, citb, pptbi, phwnd).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _ResizeNextBorderHelper<P0>(&self, itb: u32, busehmonitor: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__._ResizeNextBorderHelper)(::windows::core::Vtable::as_raw(self), itb, busehmonitor.into()).ok()
}
pub unsafe fn _FindTBar<P0>(&self, punksrc: P0) -> u32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).base__.base__._FindTBar)(::windows::core::Vtable::as_raw(self), punksrc.into().abi())
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn _SetFocus<P0>(&self, ptbi: *const TOOLBARITEM, hwnd: P0, lpmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.base__._SetFocus)(::windows::core::Vtable::as_raw(self), ptbi, hwnd.into(), lpmsg).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn v_MayTranslateAccelerator(&self, pmsg: *mut super::WindowsAndMessaging::MSG) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.v_MayTranslateAccelerator)(::windows::core::Vtable::as_raw(self), pmsg).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _GetBorderDWHelper<P0, P1>(&self, punksrc: P0, lprectborder: *mut super::super::Foundation::RECT, busehmonitor: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__._GetBorderDWHelper)(::windows::core::Vtable::as_raw(self), punksrc.into().abi(), lprectborder, busehmonitor.into()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn v_CheckZoneCrossing(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.v_CheckZoneCrossing)(::windows::core::Vtable::as_raw(self), pidl).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn _PositionViewWindow<P0>(&self, hwnd: P0, prc: *const super::super::Foundation::RECT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__._PositionViewWindow)(::windows::core::Vtable::as_raw(self), hwnd.into(), prc).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn IEParseDisplayNameEx<P0>(&self, uicp: u32, pwszpath: P0, dwflags: u32) -> ::windows::core::Result<*mut Common::ITEMIDLIST>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.IEParseDisplayNameEx)(::windows::core::Vtable::as_raw(self), uicp, pwszpath.into().abi(), dwflags, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ActivateView<P0>(&self, fpendingview: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).ActivateView)(::windows::core::Vtable::as_raw(self), fpendingview.into()).ok()
}
pub unsafe fn SaveViewState(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SaveViewState)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn _ResizeAllBorders(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self)._ResizeAllBorders)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IBrowserService4, ::windows::core::IUnknown, IBrowserService, IBrowserService2, IBrowserService3);
impl ::core::clone::Clone for IBrowserService4 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IBrowserService4 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IBrowserService4 {}
impl ::core::fmt::Debug for IBrowserService4 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IBrowserService4").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IBrowserService4 {
type Vtable = IBrowserService4_Vtbl;
}
unsafe impl ::windows::core::Interface for IBrowserService4 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x639f1bff_e135_4096_abd8_e0f504d649a4);
}
#[repr(C)]
#[doc(hidden)]
pub struct IBrowserService4_Vtbl {
pub base__: IBrowserService3_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub ActivateView: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fpendingview: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
ActivateView: usize,
pub SaveViewState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub _ResizeAllBorders: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICDBurn(::windows::core::IUnknown);
impl ICDBurn {
pub unsafe fn GetRecorderDriveLetter(&self, pszdrive: &mut [u16]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetRecorderDriveLetter)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszdrive.as_ptr()), pszdrive.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Burn<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).Burn)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn HasRecordableDrive(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).HasRecordableDrive)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ICDBurn, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICDBurn {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICDBurn {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICDBurn {}
impl ::core::fmt::Debug for ICDBurn {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICDBurn").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICDBurn {
type Vtable = ICDBurn_Vtbl;
}
unsafe impl ::windows::core::Interface for ICDBurn {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3d73a659_e5d0_4d42_afc0_5121ba425c8d);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICDBurn_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetRecorderDriveLetter: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszdrive: ::windows::core::PWSTR, cch: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub Burn: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Burn: usize,
#[cfg(feature = "Win32_Foundation")]
pub HasRecordableDrive: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfhasrecorder: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
HasRecordableDrive: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICDBurnExt(::windows::core::IUnknown);
impl ICDBurnExt {
pub unsafe fn GetSupportedActionTypes(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSupportedActionTypes)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ICDBurnExt, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICDBurnExt {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICDBurnExt {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICDBurnExt {}
impl ::core::fmt::Debug for ICDBurnExt {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICDBurnExt").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICDBurnExt {
type Vtable = ICDBurnExt_Vtbl;
}
unsafe impl ::windows::core::Interface for ICDBurnExt {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2271dcca_74fc_4414_8fb7_c56b05ace2d7);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICDBurnExt_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetSupportedActionTypes: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwactions: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICategorizer(::windows::core::IUnknown);
impl ICategorizer {
pub unsafe fn GetDescription(&self, pszdesc: &mut [u16]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetDescription)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszdesc.as_ptr()), pszdesc.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetCategory(&self, cidl: u32, apidl: *const *const Common::ITEMIDLIST, rgcategoryids: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetCategory)(::windows::core::Vtable::as_raw(self), cidl, apidl, rgcategoryids).ok()
}
pub unsafe fn GetCategoryInfo(&self, dwcategoryid: u32, pci: *mut CATEGORY_INFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetCategoryInfo)(::windows::core::Vtable::as_raw(self), dwcategoryid, pci).ok()
}
pub unsafe fn CompareCategory(&self, csfflags: CATSORT_FLAGS, dwcategoryid1: u32, dwcategoryid2: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).CompareCategory)(::windows::core::Vtable::as_raw(self), csfflags, dwcategoryid1, dwcategoryid2).ok()
}
}
::windows::core::interface_hierarchy!(ICategorizer, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICategorizer {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICategorizer {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICategorizer {}
impl ::core::fmt::Debug for ICategorizer {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICategorizer").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICategorizer {
type Vtable = ICategorizer_Vtbl;
}
unsafe impl ::windows::core::Interface for ICategorizer {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa3b14589_9174_49a8_89a3_06a1ae2b9ba7);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICategorizer_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetDescription: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszdesc: ::windows::core::PWSTR, cch: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetCategory: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cidl: u32, apidl: *const *const Common::ITEMIDLIST, rgcategoryids: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetCategory: usize,
pub GetCategoryInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwcategoryid: u32, pci: *mut CATEGORY_INFO) -> ::windows::core::HRESULT,
pub CompareCategory: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, csfflags: CATSORT_FLAGS, dwcategoryid1: u32, dwcategoryid2: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICategoryProvider(::windows::core::IUnknown);
impl ICategoryProvider {
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn CanCategorizeOnSCID(&self, pscid: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).CanCategorizeOnSCID)(::windows::core::Vtable::as_raw(self), pscid).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetDefaultCategory(&self, pguid: *mut ::windows::core::GUID, pscid: *mut PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetDefaultCategory)(::windows::core::Vtable::as_raw(self), pguid, pscid).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetCategoryForSCID(&self, pscid: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<::windows::core::GUID> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCategoryForSCID)(::windows::core::Vtable::as_raw(self), pscid, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn EnumCategories(&self) -> ::windows::core::Result<super::super::System::Com::IEnumGUID> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).EnumCategories)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetCategoryName(&self, pguid: *const ::windows::core::GUID, pszname: &mut [u16]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetCategoryName)(::windows::core::Vtable::as_raw(self), pguid, ::core::mem::transmute(pszname.as_ptr()), pszname.len() as _).ok()
}
pub unsafe fn CreateCategory<T>(&self, pguid: *const ::windows::core::GUID) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CreateCategory)(::windows::core::Vtable::as_raw(self), pguid, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ICategoryProvider, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICategoryProvider {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICategoryProvider {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICategoryProvider {}
impl ::core::fmt::Debug for ICategoryProvider {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICategoryProvider").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICategoryProvider {
type Vtable = ICategoryProvider_Vtbl;
}
unsafe impl ::windows::core::Interface for ICategoryProvider {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9af64809_5864_4c26_a720_c1f78c086ee3);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICategoryProvider_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub CanCategorizeOnSCID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pscid: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
CanCategorizeOnSCID: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetDefaultCategory: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pguid: *mut ::windows::core::GUID, pscid: *mut PropertiesSystem::PROPERTYKEY) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetDefaultCategory: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetCategoryForSCID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pscid: *const PropertiesSystem::PROPERTYKEY, pguid: *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetCategoryForSCID: usize,
#[cfg(feature = "Win32_System_Com")]
pub EnumCategories: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, penum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
EnumCategories: usize,
pub GetCategoryName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pguid: *const ::windows::core::GUID, pszname: ::windows::core::PWSTR, cch: u32) -> ::windows::core::HRESULT,
pub CreateCategory: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pguid: *const ::windows::core::GUID, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IColumnManager(::windows::core::IUnknown);
impl IColumnManager {
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn SetColumnInfo(&self, propkey: *const PropertiesSystem::PROPERTYKEY, pcmci: *const CM_COLUMNINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetColumnInfo)(::windows::core::Vtable::as_raw(self), propkey, pcmci).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetColumnInfo(&self, propkey: *const PropertiesSystem::PROPERTYKEY, pcmci: *mut CM_COLUMNINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetColumnInfo)(::windows::core::Vtable::as_raw(self), propkey, pcmci).ok()
}
pub unsafe fn GetColumnCount(&self, dwflags: CM_ENUM_FLAGS) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetColumnCount)(::windows::core::Vtable::as_raw(self), dwflags, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetColumns(&self, dwflags: CM_ENUM_FLAGS, rgkeyorder: &mut [PropertiesSystem::PROPERTYKEY]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetColumns)(::windows::core::Vtable::as_raw(self), dwflags, ::core::mem::transmute(rgkeyorder.as_ptr()), rgkeyorder.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn SetColumns(&self, rgkeyorder: &[PropertiesSystem::PROPERTYKEY]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetColumns)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(rgkeyorder.as_ptr()), rgkeyorder.len() as _).ok()
}
}
::windows::core::interface_hierarchy!(IColumnManager, ::windows::core::IUnknown);
impl ::core::clone::Clone for IColumnManager {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IColumnManager {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IColumnManager {}
impl ::core::fmt::Debug for IColumnManager {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IColumnManager").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IColumnManager {
type Vtable = IColumnManager_Vtbl;
}
unsafe impl ::windows::core::Interface for IColumnManager {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd8ec27bb_3f3b_4042_b10a_4acfd924d453);
}
#[repr(C)]
#[doc(hidden)]
pub struct IColumnManager_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub SetColumnInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, propkey: *const PropertiesSystem::PROPERTYKEY, pcmci: *const CM_COLUMNINFO) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
SetColumnInfo: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetColumnInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, propkey: *const PropertiesSystem::PROPERTYKEY, pcmci: *mut CM_COLUMNINFO) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetColumnInfo: usize,
pub GetColumnCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: CM_ENUM_FLAGS, pucount: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetColumns: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: CM_ENUM_FLAGS, rgkeyorder: *mut PropertiesSystem::PROPERTYKEY, ccolumns: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetColumns: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub SetColumns: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rgkeyorder: *const PropertiesSystem::PROPERTYKEY, cvisible: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
SetColumns: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IColumnProvider(::windows::core::IUnknown);
impl IColumnProvider {
pub unsafe fn Initialize(&self, psci: *const SHCOLUMNINIT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self), psci).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub unsafe fn GetColumnInfo(&self, dwindex: u32, psci: *mut SHCOLUMNINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetColumnInfo)(::windows::core::Vtable::as_raw(self), dwindex, psci).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub unsafe fn GetItemData(&self, pscid: *const PropertiesSystem::PROPERTYKEY, pscd: *const SHCOLUMNDATA) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItemData)(::windows::core::Vtable::as_raw(self), pscid, pscd, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IColumnProvider, ::windows::core::IUnknown);
impl ::core::clone::Clone for IColumnProvider {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IColumnProvider {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IColumnProvider {}
impl ::core::fmt::Debug for IColumnProvider {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IColumnProvider").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IColumnProvider {
type Vtable = IColumnProvider_Vtbl;
}
unsafe impl ::windows::core::Interface for IColumnProvider {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe8025004_1c42_11d2_be2c_00a0c9a83da1);
}
#[repr(C)]
#[doc(hidden)]
pub struct IColumnProvider_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psci: *const SHCOLUMNINIT) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub GetColumnInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwindex: u32, psci: *mut SHCOLUMNINFO) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem")))]
GetColumnInfo: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub GetItemData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pscid: *const PropertiesSystem::PROPERTYKEY, pscd: *const SHCOLUMNDATA, pvardata: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_PropertiesSystem")))]
GetItemData: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICommDlgBrowser(::windows::core::IUnknown);
impl ICommDlgBrowser {
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn OnDefaultCommand<P0>(&self, ppshv: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).OnDefaultCommand)(::windows::core::Vtable::as_raw(self), ppshv.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn OnStateChange<P0>(&self, ppshv: P0, uchange: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).OnStateChange)(::windows::core::Vtable::as_raw(self), ppshv.into().abi(), uchange).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn IncludeObject<P0>(&self, ppshv: P0, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).IncludeObject)(::windows::core::Vtable::as_raw(self), ppshv.into().abi(), pidl).ok()
}
}
::windows::core::interface_hierarchy!(ICommDlgBrowser, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICommDlgBrowser {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICommDlgBrowser {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICommDlgBrowser {}
impl ::core::fmt::Debug for ICommDlgBrowser {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICommDlgBrowser").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICommDlgBrowser {
type Vtable = ICommDlgBrowser_Vtbl;
}
unsafe impl ::windows::core::Interface for ICommDlgBrowser {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214f1_0000_0000_c000_000000000046);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICommDlgBrowser_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_System_Ole")]
pub OnDefaultCommand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppshv: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Ole"))]
OnDefaultCommand: usize,
#[cfg(feature = "Win32_System_Ole")]
pub OnStateChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppshv: *mut ::core::ffi::c_void, uchange: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Ole"))]
OnStateChange: usize,
#[cfg(all(feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub IncludeObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppshv: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common")))]
IncludeObject: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICommDlgBrowser2(::windows::core::IUnknown);
impl ICommDlgBrowser2 {
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn OnDefaultCommand<P0>(&self, ppshv: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).base__.OnDefaultCommand)(::windows::core::Vtable::as_raw(self), ppshv.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn OnStateChange<P0>(&self, ppshv: P0, uchange: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).base__.OnStateChange)(::windows::core::Vtable::as_raw(self), ppshv.into().abi(), uchange).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn IncludeObject<P0>(&self, ppshv: P0, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).base__.IncludeObject)(::windows::core::Vtable::as_raw(self), ppshv.into().abi(), pidl).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn Notify<P0>(&self, ppshv: P0, dwnotifytype: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).Notify)(::windows::core::Vtable::as_raw(self), ppshv.into().abi(), dwnotifytype).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn GetDefaultMenuText<P0>(&self, ppshv: P0, psztext: &mut [u16]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).GetDefaultMenuText)(::windows::core::Vtable::as_raw(self), ppshv.into().abi(), ::core::mem::transmute(psztext.as_ptr()), psztext.len() as _).ok()
}
pub unsafe fn GetViewFlags(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetViewFlags)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ICommDlgBrowser2, ::windows::core::IUnknown, ICommDlgBrowser);
impl ::core::clone::Clone for ICommDlgBrowser2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICommDlgBrowser2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICommDlgBrowser2 {}
impl ::core::fmt::Debug for ICommDlgBrowser2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICommDlgBrowser2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICommDlgBrowser2 {
type Vtable = ICommDlgBrowser2_Vtbl;
}
unsafe impl ::windows::core::Interface for ICommDlgBrowser2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x10339516_2894_11d2_9039_00c04f8eeb3e);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICommDlgBrowser2_Vtbl {
pub base__: ICommDlgBrowser_Vtbl,
#[cfg(feature = "Win32_System_Ole")]
pub Notify: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppshv: *mut ::core::ffi::c_void, dwnotifytype: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Ole"))]
Notify: usize,
#[cfg(feature = "Win32_System_Ole")]
pub GetDefaultMenuText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppshv: *mut ::core::ffi::c_void, psztext: ::windows::core::PWSTR, cchmax: i32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Ole"))]
GetDefaultMenuText: usize,
pub GetViewFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwflags: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICommDlgBrowser3(::windows::core::IUnknown);
impl ICommDlgBrowser3 {
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn OnDefaultCommand<P0>(&self, ppshv: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).base__.base__.OnDefaultCommand)(::windows::core::Vtable::as_raw(self), ppshv.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn OnStateChange<P0>(&self, ppshv: P0, uchange: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).base__.base__.OnStateChange)(::windows::core::Vtable::as_raw(self), ppshv.into().abi(), uchange).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn IncludeObject<P0>(&self, ppshv: P0, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).base__.base__.IncludeObject)(::windows::core::Vtable::as_raw(self), ppshv.into().abi(), pidl).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn Notify<P0>(&self, ppshv: P0, dwnotifytype: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).base__.Notify)(::windows::core::Vtable::as_raw(self), ppshv.into().abi(), dwnotifytype).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn GetDefaultMenuText<P0>(&self, ppshv: P0, psztext: &mut [u16]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).base__.GetDefaultMenuText)(::windows::core::Vtable::as_raw(self), ppshv.into().abi(), ::core::mem::transmute(psztext.as_ptr()), psztext.len() as _).ok()
}
pub unsafe fn GetViewFlags(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetViewFlags)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn OnColumnClicked<P0>(&self, ppshv: P0, icolumn: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).OnColumnClicked)(::windows::core::Vtable::as_raw(self), ppshv.into().abi(), icolumn).ok()
}
pub unsafe fn GetCurrentFilter(&self, pszfilespec: &mut [u16]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetCurrentFilter)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszfilespec.as_ptr()), pszfilespec.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn OnPreViewCreated<P0>(&self, ppshv: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).OnPreViewCreated)(::windows::core::Vtable::as_raw(self), ppshv.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(ICommDlgBrowser3, ::windows::core::IUnknown, ICommDlgBrowser, ICommDlgBrowser2);
impl ::core::clone::Clone for ICommDlgBrowser3 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICommDlgBrowser3 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICommDlgBrowser3 {}
impl ::core::fmt::Debug for ICommDlgBrowser3 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICommDlgBrowser3").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICommDlgBrowser3 {
type Vtable = ICommDlgBrowser3_Vtbl;
}
unsafe impl ::windows::core::Interface for ICommDlgBrowser3 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc8ad25a1_3294_41ee_8165_71174bd01c57);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICommDlgBrowser3_Vtbl {
pub base__: ICommDlgBrowser2_Vtbl,
#[cfg(feature = "Win32_System_Ole")]
pub OnColumnClicked: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppshv: *mut ::core::ffi::c_void, icolumn: i32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Ole"))]
OnColumnClicked: usize,
pub GetCurrentFilter: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszfilespec: ::windows::core::PWSTR, cchfilespec: i32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Ole")]
pub OnPreViewCreated: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppshv: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Ole"))]
OnPreViewCreated: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IComputerInfoChangeNotify(::windows::core::IUnknown);
impl IComputerInfoChangeNotify {
pub unsafe fn ComputerInfoChanged(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ComputerInfoChanged)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IComputerInfoChangeNotify, ::windows::core::IUnknown);
impl ::core::clone::Clone for IComputerInfoChangeNotify {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IComputerInfoChangeNotify {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IComputerInfoChangeNotify {}
impl ::core::fmt::Debug for IComputerInfoChangeNotify {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IComputerInfoChangeNotify").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IComputerInfoChangeNotify {
type Vtable = IComputerInfoChangeNotify_Vtbl;
}
unsafe impl ::windows::core::Interface for IComputerInfoChangeNotify {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0df60d92_6818_46d6_b358_d66170dde466);
}
#[repr(C)]
#[doc(hidden)]
pub struct IComputerInfoChangeNotify_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub ComputerInfoChanged: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IConnectableCredentialProviderCredential(::windows::core::IUnknown);
impl IConnectableCredentialProviderCredential {
pub unsafe fn Advise<P0>(&self, pcpce: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredentialEvents>>,
{
(::windows::core::Vtable::vtable(self).base__.Advise)(::windows::core::Vtable::as_raw(self), pcpce.into().abi()).ok()
}
pub unsafe fn UnAdvise(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.UnAdvise)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetSelected(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.SetSelected)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetDeselected(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetDeselected)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GetFieldState(&self, dwfieldid: u32, pcpfs: *mut CREDENTIAL_PROVIDER_FIELD_STATE, pcpfis: *mut CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetFieldState)(::windows::core::Vtable::as_raw(self), dwfieldid, pcpfs, pcpfis).ok()
}
pub unsafe fn GetStringValue(&self, dwfieldid: u32) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetStringValue)(::windows::core::Vtable::as_raw(self), dwfieldid, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn GetBitmapValue(&self, dwfieldid: u32) -> ::windows::core::Result<super::super::Graphics::Gdi::HBITMAP> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetBitmapValue)(::windows::core::Vtable::as_raw(self), dwfieldid, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetCheckboxValue(&self, dwfieldid: u32, pbchecked: *mut super::super::Foundation::BOOL, ppszlabel: *mut ::windows::core::PWSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetCheckboxValue)(::windows::core::Vtable::as_raw(self), dwfieldid, pbchecked, ppszlabel).ok()
}
pub unsafe fn GetSubmitButtonValue(&self, dwfieldid: u32) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetSubmitButtonValue)(::windows::core::Vtable::as_raw(self), dwfieldid, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetComboBoxValueCount(&self, dwfieldid: u32, pcitems: *mut u32, pdwselecteditem: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetComboBoxValueCount)(::windows::core::Vtable::as_raw(self), dwfieldid, pcitems, pdwselecteditem).ok()
}
pub unsafe fn GetComboBoxValueAt(&self, dwfieldid: u32, dwitem: u32) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetComboBoxValueAt)(::windows::core::Vtable::as_raw(self), dwfieldid, dwitem, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetStringValue<P0>(&self, dwfieldid: u32, psz: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetStringValue)(::windows::core::Vtable::as_raw(self), dwfieldid, psz.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetCheckboxValue<P0>(&self, dwfieldid: u32, bchecked: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.SetCheckboxValue)(::windows::core::Vtable::as_raw(self), dwfieldid, bchecked.into()).ok()
}
pub unsafe fn SetComboBoxSelectedValue(&self, dwfieldid: u32, dwselecteditem: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetComboBoxSelectedValue)(::windows::core::Vtable::as_raw(self), dwfieldid, dwselecteditem).ok()
}
pub unsafe fn CommandLinkClicked(&self, dwfieldid: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.CommandLinkClicked)(::windows::core::Vtable::as_raw(self), dwfieldid).ok()
}
pub unsafe fn GetSerialization(&self, pcpgsr: *mut CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE, pcpcs: *mut CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION, ppszoptionalstatustext: *mut ::windows::core::PWSTR, pcpsioptionalstatusicon: *mut CREDENTIAL_PROVIDER_STATUS_ICON) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetSerialization)(::windows::core::Vtable::as_raw(self), pcpgsr, pcpcs, ppszoptionalstatustext, pcpsioptionalstatusicon).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ReportResult<P0, P1>(&self, ntsstatus: P0, ntssubstatus: P1, ppszoptionalstatustext: *mut ::windows::core::PWSTR, pcpsioptionalstatusicon: *mut CREDENTIAL_PROVIDER_STATUS_ICON) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::NTSTATUS>,
P1: ::std::convert::Into<super::super::Foundation::NTSTATUS>,
{
(::windows::core::Vtable::vtable(self).base__.ReportResult)(::windows::core::Vtable::as_raw(self), ntsstatus.into(), ntssubstatus.into(), ppszoptionalstatustext, pcpsioptionalstatusicon).ok()
}
pub unsafe fn Connect<P0>(&self, pqcws: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IQueryContinueWithStatus>>,
{
(::windows::core::Vtable::vtable(self).Connect)(::windows::core::Vtable::as_raw(self), pqcws.into().abi()).ok()
}
pub unsafe fn Disconnect(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Disconnect)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IConnectableCredentialProviderCredential, ::windows::core::IUnknown, ICredentialProviderCredential);
impl ::core::clone::Clone for IConnectableCredentialProviderCredential {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IConnectableCredentialProviderCredential {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IConnectableCredentialProviderCredential {}
impl ::core::fmt::Debug for IConnectableCredentialProviderCredential {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IConnectableCredentialProviderCredential").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IConnectableCredentialProviderCredential {
type Vtable = IConnectableCredentialProviderCredential_Vtbl;
}
unsafe impl ::windows::core::Interface for IConnectableCredentialProviderCredential {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9387928b_ac75_4bf9_8ab2_2b93c4a55290);
}
#[repr(C)]
#[doc(hidden)]
pub struct IConnectableCredentialProviderCredential_Vtbl {
pub base__: ICredentialProviderCredential_Vtbl,
pub Connect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pqcws: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Disconnect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IContactManagerInterop(::windows::core::IUnknown);
impl IContactManagerInterop {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ShowContactCardForWindow<P0, P1>(&self, appwindow: P0, contact: P1, selection: *const super::super::Foundation::RECT, preferredplacement: FLYOUT_PLACEMENT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).ShowContactCardForWindow)(::windows::core::Vtable::as_raw(self), appwindow.into(), contact.into().abi(), selection, preferredplacement).ok()
}
}
::windows::core::interface_hierarchy!(IContactManagerInterop, ::windows::core::IUnknown);
impl ::core::clone::Clone for IContactManagerInterop {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IContactManagerInterop {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IContactManagerInterop {}
impl ::core::fmt::Debug for IContactManagerInterop {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IContactManagerInterop").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IContactManagerInterop {
type Vtable = IContactManagerInterop_Vtbl;
}
unsafe impl ::windows::core::Interface for IContactManagerInterop {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x99eacba7_e073_43b6_a896_55afe48a0833);
}
#[repr(C)]
#[doc(hidden)]
pub struct IContactManagerInterop_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub ShowContactCardForWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, appwindow: super::super::Foundation::HWND, contact: *mut ::core::ffi::c_void, selection: *const super::super::Foundation::RECT, preferredplacement: FLYOUT_PLACEMENT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
ShowContactCardForWindow: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IContextMenu(::windows::core::IUnknown);
impl IContextMenu {
#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub unsafe fn QueryContextMenu<P0>(&self, hmenu: P0, indexmenu: u32, idcmdfirst: u32, idcmdlast: u32, uflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::WindowsAndMessaging::HMENU>,
{
(::windows::core::Vtable::vtable(self).QueryContextMenu)(::windows::core::Vtable::as_raw(self), hmenu.into(), indexmenu, idcmdfirst, idcmdlast, uflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn InvokeCommand(&self, pici: *const CMINVOKECOMMANDINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).InvokeCommand)(::windows::core::Vtable::as_raw(self), pici).ok()
}
pub unsafe fn GetCommandString(&self, idcmd: usize, utype: u32, preserved: ::core::option::Option<*mut u32>, pszname: ::windows::core::PSTR, cchmax: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetCommandString)(::windows::core::Vtable::as_raw(self), idcmd, utype, ::core::mem::transmute(preserved.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pszname), cchmax).ok()
}
}
::windows::core::interface_hierarchy!(IContextMenu, ::windows::core::IUnknown);
impl ::core::clone::Clone for IContextMenu {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IContextMenu {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IContextMenu {}
impl ::core::fmt::Debug for IContextMenu {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IContextMenu").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IContextMenu {
type Vtable = IContextMenu_Vtbl;
}
unsafe impl ::windows::core::Interface for IContextMenu {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214e4_0000_0000_c000_000000000046);
}
#[repr(C)]
#[doc(hidden)]
pub struct IContextMenu_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub QueryContextMenu: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hmenu: super::WindowsAndMessaging::HMENU, indexmenu: u32, idcmdfirst: u32, idcmdlast: u32, uflags: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_WindowsAndMessaging"))]
QueryContextMenu: usize,
#[cfg(feature = "Win32_Foundation")]
pub InvokeCommand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pici: *const CMINVOKECOMMANDINFO) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
InvokeCommand: usize,
pub GetCommandString: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, idcmd: usize, utype: u32, preserved: *mut u32, pszname: ::windows::core::PSTR, cchmax: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IContextMenu2(::windows::core::IUnknown);
impl IContextMenu2 {
#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub unsafe fn QueryContextMenu<P0>(&self, hmenu: P0, indexmenu: u32, idcmdfirst: u32, idcmdlast: u32, uflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::WindowsAndMessaging::HMENU>,
{
(::windows::core::Vtable::vtable(self).base__.QueryContextMenu)(::windows::core::Vtable::as_raw(self), hmenu.into(), indexmenu, idcmdfirst, idcmdlast, uflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn InvokeCommand(&self, pici: *const CMINVOKECOMMANDINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.InvokeCommand)(::windows::core::Vtable::as_raw(self), pici).ok()
}
pub unsafe fn GetCommandString(&self, idcmd: usize, utype: u32, preserved: ::core::option::Option<*mut u32>, pszname: ::windows::core::PSTR, cchmax: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetCommandString)(::windows::core::Vtable::as_raw(self), idcmd, utype, ::core::mem::transmute(preserved.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pszname), cchmax).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn HandleMenuMsg<P0, P1>(&self, umsg: u32, wparam: P0, lparam: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::WPARAM>,
P1: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).HandleMenuMsg)(::windows::core::Vtable::as_raw(self), umsg, wparam.into(), lparam.into()).ok()
}
}
::windows::core::interface_hierarchy!(IContextMenu2, ::windows::core::IUnknown, IContextMenu);
impl ::core::clone::Clone for IContextMenu2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IContextMenu2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IContextMenu2 {}
impl ::core::fmt::Debug for IContextMenu2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IContextMenu2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IContextMenu2 {
type Vtable = IContextMenu2_Vtbl;
}
unsafe impl ::windows::core::Interface for IContextMenu2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214f4_0000_0000_c000_000000000046);
}
#[repr(C)]
#[doc(hidden)]
pub struct IContextMenu2_Vtbl {
pub base__: IContextMenu_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub HandleMenuMsg: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, umsg: u32, wparam: super::super::Foundation::WPARAM, lparam: super::super::Foundation::LPARAM) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
HandleMenuMsg: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IContextMenu3(::windows::core::IUnknown);
impl IContextMenu3 {
#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub unsafe fn QueryContextMenu<P0>(&self, hmenu: P0, indexmenu: u32, idcmdfirst: u32, idcmdlast: u32, uflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::WindowsAndMessaging::HMENU>,
{
(::windows::core::Vtable::vtable(self).base__.base__.QueryContextMenu)(::windows::core::Vtable::as_raw(self), hmenu.into(), indexmenu, idcmdfirst, idcmdlast, uflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn InvokeCommand(&self, pici: *const CMINVOKECOMMANDINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.InvokeCommand)(::windows::core::Vtable::as_raw(self), pici).ok()
}
pub unsafe fn GetCommandString(&self, idcmd: usize, utype: u32, preserved: ::core::option::Option<*mut u32>, pszname: ::windows::core::PSTR, cchmax: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.GetCommandString)(::windows::core::Vtable::as_raw(self), idcmd, utype, ::core::mem::transmute(preserved.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pszname), cchmax).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn HandleMenuMsg<P0, P1>(&self, umsg: u32, wparam: P0, lparam: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::WPARAM>,
P1: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).base__.HandleMenuMsg)(::windows::core::Vtable::as_raw(self), umsg, wparam.into(), lparam.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn HandleMenuMsg2<P0, P1>(&self, umsg: u32, wparam: P0, lparam: P1, plresult: ::core::option::Option<*mut super::super::Foundation::LRESULT>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::WPARAM>,
P1: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).HandleMenuMsg2)(::windows::core::Vtable::as_raw(self), umsg, wparam.into(), lparam.into(), ::core::mem::transmute(plresult.unwrap_or(::std::ptr::null_mut()))).ok()
}
}
::windows::core::interface_hierarchy!(IContextMenu3, ::windows::core::IUnknown, IContextMenu, IContextMenu2);
impl ::core::clone::Clone for IContextMenu3 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IContextMenu3 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IContextMenu3 {}
impl ::core::fmt::Debug for IContextMenu3 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IContextMenu3").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IContextMenu3 {
type Vtable = IContextMenu3_Vtbl;
}
unsafe impl ::windows::core::Interface for IContextMenu3 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbcfce0a0_ec17_11d0_8d10_00a0c90f2719);
}
#[repr(C)]
#[doc(hidden)]
pub struct IContextMenu3_Vtbl {
pub base__: IContextMenu2_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub HandleMenuMsg2: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, umsg: u32, wparam: super::super::Foundation::WPARAM, lparam: super::super::Foundation::LPARAM, plresult: *mut super::super::Foundation::LRESULT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
HandleMenuMsg2: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IContextMenuCB(::windows::core::IUnknown);
impl IContextMenuCB {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
pub unsafe fn CallBack<P0, P1, P2, P3, P4>(&self, psf: P0, hwndowner: P1, pdtobj: P2, umsg: u32, wparam: P3, lparam: P4) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
P2: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
P3: ::std::convert::Into<super::super::Foundation::WPARAM>,
P4: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).CallBack)(::windows::core::Vtable::as_raw(self), psf.into().abi(), hwndowner.into(), pdtobj.into().abi(), umsg, wparam.into(), lparam.into()).ok()
}
}
::windows::core::interface_hierarchy!(IContextMenuCB, ::windows::core::IUnknown);
impl ::core::clone::Clone for IContextMenuCB {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IContextMenuCB {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IContextMenuCB {}
impl ::core::fmt::Debug for IContextMenuCB {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IContextMenuCB").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IContextMenuCB {
type Vtable = IContextMenuCB_Vtbl;
}
unsafe impl ::windows::core::Interface for IContextMenuCB {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3409e930_5a39_11d1_83fa_00a0c90dc849);
}
#[repr(C)]
#[doc(hidden)]
pub struct IContextMenuCB_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
pub CallBack: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psf: *mut ::core::ffi::c_void, hwndowner: super::super::Foundation::HWND, pdtobj: *mut ::core::ffi::c_void, umsg: u32, wparam: super::super::Foundation::WPARAM, lparam: super::super::Foundation::LPARAM) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com")))]
CallBack: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IContextMenuSite(::windows::core::IUnknown);
impl IContextMenuSite {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn DoContextMenuPopup<P0>(&self, punkcontextmenu: P0, fflags: u32, pt: super::super::Foundation::POINT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).DoContextMenuPopup)(::windows::core::Vtable::as_raw(self), punkcontextmenu.into().abi(), fflags, ::core::mem::transmute(pt)).ok()
}
}
::windows::core::interface_hierarchy!(IContextMenuSite, ::windows::core::IUnknown);
impl ::core::clone::Clone for IContextMenuSite {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IContextMenuSite {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IContextMenuSite {}
impl ::core::fmt::Debug for IContextMenuSite {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IContextMenuSite").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IContextMenuSite {
type Vtable = IContextMenuSite_Vtbl;
}
unsafe impl ::windows::core::Interface for IContextMenuSite {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0811aebe_0b87_4c54_9e72_548cf649016b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IContextMenuSite_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub DoContextMenuPopup: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punkcontextmenu: *mut ::core::ffi::c_void, fflags: u32, pt: super::super::Foundation::POINT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
DoContextMenuPopup: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICopyHookA(::windows::core::IUnknown);
impl ICopyHookA {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CopyCallback<P0, P1, P2>(&self, hwnd: P0, wfunc: u32, wflags: u32, pszsrcfile: P1, dwsrcattribs: u32, pszdestfile: P2, dwdestattribs: u32) -> u32
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
(::windows::core::Vtable::vtable(self).CopyCallback)(::windows::core::Vtable::as_raw(self), hwnd.into(), wfunc, wflags, pszsrcfile.into().abi(), dwsrcattribs, pszdestfile.into().abi(), dwdestattribs)
}
}
::windows::core::interface_hierarchy!(ICopyHookA, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICopyHookA {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICopyHookA {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICopyHookA {}
impl ::core::fmt::Debug for ICopyHookA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICopyHookA").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICopyHookA {
type Vtable = ICopyHookA_Vtbl;
}
unsafe impl ::windows::core::Interface for ICopyHookA {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214ef_0000_0000_c000_000000000046);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICopyHookA_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub CopyCallback: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, wfunc: u32, wflags: u32, pszsrcfile: ::windows::core::PCSTR, dwsrcattribs: u32, pszdestfile: ::windows::core::PCSTR, dwdestattribs: u32) -> u32,
#[cfg(not(feature = "Win32_Foundation"))]
CopyCallback: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICopyHookW(::windows::core::IUnknown);
impl ICopyHookW {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CopyCallback<P0, P1, P2>(&self, hwnd: P0, wfunc: u32, wflags: u32, pszsrcfile: P1, dwsrcattribs: u32, pszdestfile: P2, dwdestattribs: u32) -> u32
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).CopyCallback)(::windows::core::Vtable::as_raw(self), hwnd.into(), wfunc, wflags, pszsrcfile.into().abi(), dwsrcattribs, pszdestfile.into().abi(), dwdestattribs)
}
}
::windows::core::interface_hierarchy!(ICopyHookW, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICopyHookW {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICopyHookW {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICopyHookW {}
impl ::core::fmt::Debug for ICopyHookW {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICopyHookW").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICopyHookW {
type Vtable = ICopyHookW_Vtbl;
}
unsafe impl ::windows::core::Interface for ICopyHookW {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214fc_0000_0000_c000_000000000046);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICopyHookW_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub CopyCallback: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, wfunc: u32, wflags: u32, pszsrcfile: ::windows::core::PCWSTR, dwsrcattribs: u32, pszdestfile: ::windows::core::PCWSTR, dwdestattribs: u32) -> u32,
#[cfg(not(feature = "Win32_Foundation"))]
CopyCallback: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICreateProcessInputs(::windows::core::IUnknown);
impl ICreateProcessInputs {
pub unsafe fn GetCreateFlags(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCreateFlags)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetCreateFlags(&self, dwcreationflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetCreateFlags)(::windows::core::Vtable::as_raw(self), dwcreationflags).ok()
}
pub unsafe fn AddCreateFlags(&self, dwcreationflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AddCreateFlags)(::windows::core::Vtable::as_raw(self), dwcreationflags).ok()
}
pub unsafe fn SetHotKey(&self, whotkey: u16) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetHotKey)(::windows::core::Vtable::as_raw(self), whotkey).ok()
}
pub unsafe fn AddStartupFlags(&self, dwstartupinfoflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AddStartupFlags)(::windows::core::Vtable::as_raw(self), dwstartupinfoflags).ok()
}
pub unsafe fn SetTitle<P0>(&self, psztitle: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetTitle)(::windows::core::Vtable::as_raw(self), psztitle.into().abi()).ok()
}
pub unsafe fn SetEnvironmentVariable<P0, P1>(&self, pszname: P0, pszvalue: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetEnvironmentVariable)(::windows::core::Vtable::as_raw(self), pszname.into().abi(), pszvalue.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(ICreateProcessInputs, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICreateProcessInputs {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICreateProcessInputs {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICreateProcessInputs {}
impl ::core::fmt::Debug for ICreateProcessInputs {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICreateProcessInputs").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICreateProcessInputs {
type Vtable = ICreateProcessInputs_Vtbl;
}
unsafe impl ::windows::core::Interface for ICreateProcessInputs {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf6ef6140_e26f_4d82_bac4_e9ba5fd239a8);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICreateProcessInputs_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetCreateFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwcreationflags: *mut u32) -> ::windows::core::HRESULT,
pub SetCreateFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwcreationflags: u32) -> ::windows::core::HRESULT,
pub AddCreateFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwcreationflags: u32) -> ::windows::core::HRESULT,
pub SetHotKey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, whotkey: u16) -> ::windows::core::HRESULT,
pub AddStartupFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwstartupinfoflags: u32) -> ::windows::core::HRESULT,
pub SetTitle: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psztitle: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub SetEnvironmentVariable: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszname: ::windows::core::PCWSTR, pszvalue: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICreatingProcess(::windows::core::IUnknown);
impl ICreatingProcess {
pub unsafe fn OnCreating<P0>(&self, pcpi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICreateProcessInputs>>,
{
(::windows::core::Vtable::vtable(self).OnCreating)(::windows::core::Vtable::as_raw(self), pcpi.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(ICreatingProcess, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICreatingProcess {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICreatingProcess {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICreatingProcess {}
impl ::core::fmt::Debug for ICreatingProcess {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICreatingProcess").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICreatingProcess {
type Vtable = ICreatingProcess_Vtbl;
}
unsafe impl ::windows::core::Interface for ICreatingProcess {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc2b937a9_3110_4398_8a56_f34c6342d244);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICreatingProcess_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub OnCreating: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcpi: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICredentialProvider(::windows::core::IUnknown);
impl ICredentialProvider {
pub unsafe fn SetUsageScenario(&self, cpus: CREDENTIAL_PROVIDER_USAGE_SCENARIO, dwflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetUsageScenario)(::windows::core::Vtable::as_raw(self), cpus, dwflags).ok()
}
pub unsafe fn SetSerialization(&self, pcpcs: *const CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetSerialization)(::windows::core::Vtable::as_raw(self), pcpcs).ok()
}
pub unsafe fn Advise<P0>(&self, pcpe: P0, upadvisecontext: usize) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderEvents>>,
{
(::windows::core::Vtable::vtable(self).Advise)(::windows::core::Vtable::as_raw(self), pcpe.into().abi(), upadvisecontext).ok()
}
pub unsafe fn UnAdvise(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UnAdvise)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GetFieldDescriptorCount(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFieldDescriptorCount)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetFieldDescriptorAt(&self, dwindex: u32) -> ::windows::core::Result<*mut CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFieldDescriptorAt)(::windows::core::Vtable::as_raw(self), dwindex, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetCredentialCount(&self, pdwcount: *mut u32, pdwdefault: *mut u32, pbautologonwithdefault: *mut super::super::Foundation::BOOL) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetCredentialCount)(::windows::core::Vtable::as_raw(self), pdwcount, pdwdefault, pbautologonwithdefault).ok()
}
pub unsafe fn GetCredentialAt(&self, dwindex: u32) -> ::windows::core::Result<ICredentialProviderCredential> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCredentialAt)(::windows::core::Vtable::as_raw(self), dwindex, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ICredentialProvider, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICredentialProvider {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICredentialProvider {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICredentialProvider {}
impl ::core::fmt::Debug for ICredentialProvider {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICredentialProvider").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICredentialProvider {
type Vtable = ICredentialProvider_Vtbl;
}
unsafe impl ::windows::core::Interface for ICredentialProvider {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd27c3481_5a1c_45b2_8aaa_c20ebbe8229e);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICredentialProvider_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetUsageScenario: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cpus: CREDENTIAL_PROVIDER_USAGE_SCENARIO, dwflags: u32) -> ::windows::core::HRESULT,
pub SetSerialization: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcpcs: *const CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION) -> ::windows::core::HRESULT,
pub Advise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcpe: *mut ::core::ffi::c_void, upadvisecontext: usize) -> ::windows::core::HRESULT,
pub UnAdvise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetFieldDescriptorCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwcount: *mut u32) -> ::windows::core::HRESULT,
pub GetFieldDescriptorAt: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwindex: u32, ppcpfd: *mut *mut CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetCredentialCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwcount: *mut u32, pdwdefault: *mut u32, pbautologonwithdefault: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetCredentialCount: usize,
pub GetCredentialAt: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwindex: u32, ppcpc: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICredentialProviderCredential(::windows::core::IUnknown);
impl ICredentialProviderCredential {
pub unsafe fn Advise<P0>(&self, pcpce: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredentialEvents>>,
{
(::windows::core::Vtable::vtable(self).Advise)(::windows::core::Vtable::as_raw(self), pcpce.into().abi()).ok()
}
pub unsafe fn UnAdvise(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UnAdvise)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetSelected(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).SetSelected)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetDeselected(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetDeselected)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GetFieldState(&self, dwfieldid: u32, pcpfs: *mut CREDENTIAL_PROVIDER_FIELD_STATE, pcpfis: *mut CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetFieldState)(::windows::core::Vtable::as_raw(self), dwfieldid, pcpfs, pcpfis).ok()
}
pub unsafe fn GetStringValue(&self, dwfieldid: u32) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetStringValue)(::windows::core::Vtable::as_raw(self), dwfieldid, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn GetBitmapValue(&self, dwfieldid: u32) -> ::windows::core::Result<super::super::Graphics::Gdi::HBITMAP> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetBitmapValue)(::windows::core::Vtable::as_raw(self), dwfieldid, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetCheckboxValue(&self, dwfieldid: u32, pbchecked: *mut super::super::Foundation::BOOL, ppszlabel: *mut ::windows::core::PWSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetCheckboxValue)(::windows::core::Vtable::as_raw(self), dwfieldid, pbchecked, ppszlabel).ok()
}
pub unsafe fn GetSubmitButtonValue(&self, dwfieldid: u32) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSubmitButtonValue)(::windows::core::Vtable::as_raw(self), dwfieldid, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetComboBoxValueCount(&self, dwfieldid: u32, pcitems: *mut u32, pdwselecteditem: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetComboBoxValueCount)(::windows::core::Vtable::as_raw(self), dwfieldid, pcitems, pdwselecteditem).ok()
}
pub unsafe fn GetComboBoxValueAt(&self, dwfieldid: u32, dwitem: u32) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetComboBoxValueAt)(::windows::core::Vtable::as_raw(self), dwfieldid, dwitem, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetStringValue<P0>(&self, dwfieldid: u32, psz: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetStringValue)(::windows::core::Vtable::as_raw(self), dwfieldid, psz.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetCheckboxValue<P0>(&self, dwfieldid: u32, bchecked: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetCheckboxValue)(::windows::core::Vtable::as_raw(self), dwfieldid, bchecked.into()).ok()
}
pub unsafe fn SetComboBoxSelectedValue(&self, dwfieldid: u32, dwselecteditem: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetComboBoxSelectedValue)(::windows::core::Vtable::as_raw(self), dwfieldid, dwselecteditem).ok()
}
pub unsafe fn CommandLinkClicked(&self, dwfieldid: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).CommandLinkClicked)(::windows::core::Vtable::as_raw(self), dwfieldid).ok()
}
pub unsafe fn GetSerialization(&self, pcpgsr: *mut CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE, pcpcs: *mut CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION, ppszoptionalstatustext: *mut ::windows::core::PWSTR, pcpsioptionalstatusicon: *mut CREDENTIAL_PROVIDER_STATUS_ICON) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetSerialization)(::windows::core::Vtable::as_raw(self), pcpgsr, pcpcs, ppszoptionalstatustext, pcpsioptionalstatusicon).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ReportResult<P0, P1>(&self, ntsstatus: P0, ntssubstatus: P1, ppszoptionalstatustext: *mut ::windows::core::PWSTR, pcpsioptionalstatusicon: *mut CREDENTIAL_PROVIDER_STATUS_ICON) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::NTSTATUS>,
P1: ::std::convert::Into<super::super::Foundation::NTSTATUS>,
{
(::windows::core::Vtable::vtable(self).ReportResult)(::windows::core::Vtable::as_raw(self), ntsstatus.into(), ntssubstatus.into(), ppszoptionalstatustext, pcpsioptionalstatusicon).ok()
}
}
::windows::core::interface_hierarchy!(ICredentialProviderCredential, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICredentialProviderCredential {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICredentialProviderCredential {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICredentialProviderCredential {}
impl ::core::fmt::Debug for ICredentialProviderCredential {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICredentialProviderCredential").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICredentialProviderCredential {
type Vtable = ICredentialProviderCredential_Vtbl;
}
unsafe impl ::windows::core::Interface for ICredentialProviderCredential {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x63913a93_40c1_481a_818d_4072ff8c70cc);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICredentialProviderCredential_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Advise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcpce: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub UnAdvise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub SetSelected: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbautologon: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetSelected: usize,
pub SetDeselected: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetFieldState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwfieldid: u32, pcpfs: *mut CREDENTIAL_PROVIDER_FIELD_STATE, pcpfis: *mut CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE) -> ::windows::core::HRESULT,
pub GetStringValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwfieldid: u32, ppsz: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Graphics_Gdi")]
pub GetBitmapValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwfieldid: u32, phbmp: *mut super::super::Graphics::Gdi::HBITMAP) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Gdi"))]
GetBitmapValue: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetCheckboxValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwfieldid: u32, pbchecked: *mut super::super::Foundation::BOOL, ppszlabel: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetCheckboxValue: usize,
pub GetSubmitButtonValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwfieldid: u32, pdwadjacentto: *mut u32) -> ::windows::core::HRESULT,
pub GetComboBoxValueCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwfieldid: u32, pcitems: *mut u32, pdwselecteditem: *mut u32) -> ::windows::core::HRESULT,
pub GetComboBoxValueAt: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwfieldid: u32, dwitem: u32, ppszitem: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub SetStringValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwfieldid: u32, psz: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub SetCheckboxValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwfieldid: u32, bchecked: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetCheckboxValue: usize,
pub SetComboBoxSelectedValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwfieldid: u32, dwselecteditem: u32) -> ::windows::core::HRESULT,
pub CommandLinkClicked: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwfieldid: u32) -> ::windows::core::HRESULT,
pub GetSerialization: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcpgsr: *mut CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE, pcpcs: *mut CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION, ppszoptionalstatustext: *mut ::windows::core::PWSTR, pcpsioptionalstatusicon: *mut CREDENTIAL_PROVIDER_STATUS_ICON) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub ReportResult: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ntsstatus: super::super::Foundation::NTSTATUS, ntssubstatus: super::super::Foundation::NTSTATUS, ppszoptionalstatustext: *mut ::windows::core::PWSTR, pcpsioptionalstatusicon: *mut CREDENTIAL_PROVIDER_STATUS_ICON) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
ReportResult: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICredentialProviderCredential2(::windows::core::IUnknown);
impl ICredentialProviderCredential2 {
pub unsafe fn Advise<P0>(&self, pcpce: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredentialEvents>>,
{
(::windows::core::Vtable::vtable(self).base__.Advise)(::windows::core::Vtable::as_raw(self), pcpce.into().abi()).ok()
}
pub unsafe fn UnAdvise(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.UnAdvise)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetSelected(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.SetSelected)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetDeselected(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetDeselected)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GetFieldState(&self, dwfieldid: u32, pcpfs: *mut CREDENTIAL_PROVIDER_FIELD_STATE, pcpfis: *mut CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetFieldState)(::windows::core::Vtable::as_raw(self), dwfieldid, pcpfs, pcpfis).ok()
}
pub unsafe fn GetStringValue(&self, dwfieldid: u32) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetStringValue)(::windows::core::Vtable::as_raw(self), dwfieldid, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn GetBitmapValue(&self, dwfieldid: u32) -> ::windows::core::Result<super::super::Graphics::Gdi::HBITMAP> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetBitmapValue)(::windows::core::Vtable::as_raw(self), dwfieldid, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetCheckboxValue(&self, dwfieldid: u32, pbchecked: *mut super::super::Foundation::BOOL, ppszlabel: *mut ::windows::core::PWSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetCheckboxValue)(::windows::core::Vtable::as_raw(self), dwfieldid, pbchecked, ppszlabel).ok()
}
pub unsafe fn GetSubmitButtonValue(&self, dwfieldid: u32) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetSubmitButtonValue)(::windows::core::Vtable::as_raw(self), dwfieldid, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetComboBoxValueCount(&self, dwfieldid: u32, pcitems: *mut u32, pdwselecteditem: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetComboBoxValueCount)(::windows::core::Vtable::as_raw(self), dwfieldid, pcitems, pdwselecteditem).ok()
}
pub unsafe fn GetComboBoxValueAt(&self, dwfieldid: u32, dwitem: u32) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetComboBoxValueAt)(::windows::core::Vtable::as_raw(self), dwfieldid, dwitem, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetStringValue<P0>(&self, dwfieldid: u32, psz: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetStringValue)(::windows::core::Vtable::as_raw(self), dwfieldid, psz.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetCheckboxValue<P0>(&self, dwfieldid: u32, bchecked: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.SetCheckboxValue)(::windows::core::Vtable::as_raw(self), dwfieldid, bchecked.into()).ok()
}
pub unsafe fn SetComboBoxSelectedValue(&self, dwfieldid: u32, dwselecteditem: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetComboBoxSelectedValue)(::windows::core::Vtable::as_raw(self), dwfieldid, dwselecteditem).ok()
}
pub unsafe fn CommandLinkClicked(&self, dwfieldid: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.CommandLinkClicked)(::windows::core::Vtable::as_raw(self), dwfieldid).ok()
}
pub unsafe fn GetSerialization(&self, pcpgsr: *mut CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE, pcpcs: *mut CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION, ppszoptionalstatustext: *mut ::windows::core::PWSTR, pcpsioptionalstatusicon: *mut CREDENTIAL_PROVIDER_STATUS_ICON) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetSerialization)(::windows::core::Vtable::as_raw(self), pcpgsr, pcpcs, ppszoptionalstatustext, pcpsioptionalstatusicon).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ReportResult<P0, P1>(&self, ntsstatus: P0, ntssubstatus: P1, ppszoptionalstatustext: *mut ::windows::core::PWSTR, pcpsioptionalstatusicon: *mut CREDENTIAL_PROVIDER_STATUS_ICON) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::NTSTATUS>,
P1: ::std::convert::Into<super::super::Foundation::NTSTATUS>,
{
(::windows::core::Vtable::vtable(self).base__.ReportResult)(::windows::core::Vtable::as_raw(self), ntsstatus.into(), ntssubstatus.into(), ppszoptionalstatustext, pcpsioptionalstatusicon).ok()
}
pub unsafe fn GetUserSid(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetUserSid)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ICredentialProviderCredential2, ::windows::core::IUnknown, ICredentialProviderCredential);
impl ::core::clone::Clone for ICredentialProviderCredential2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICredentialProviderCredential2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICredentialProviderCredential2 {}
impl ::core::fmt::Debug for ICredentialProviderCredential2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICredentialProviderCredential2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICredentialProviderCredential2 {
type Vtable = ICredentialProviderCredential2_Vtbl;
}
unsafe impl ::windows::core::Interface for ICredentialProviderCredential2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfd672c54_40ea_4d6e_9b49_cfb1a7507bd7);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICredentialProviderCredential2_Vtbl {
pub base__: ICredentialProviderCredential_Vtbl,
pub GetUserSid: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, sid: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICredentialProviderCredentialEvents(::windows::core::IUnknown);
impl ICredentialProviderCredentialEvents {
pub unsafe fn SetFieldState<P0>(&self, pcpc: P0, dwfieldid: u32, cpfs: CREDENTIAL_PROVIDER_FIELD_STATE) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredential>>,
{
(::windows::core::Vtable::vtable(self).SetFieldState)(::windows::core::Vtable::as_raw(self), pcpc.into().abi(), dwfieldid, cpfs).ok()
}
pub unsafe fn SetFieldInteractiveState<P0>(&self, pcpc: P0, dwfieldid: u32, cpfis: CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredential>>,
{
(::windows::core::Vtable::vtable(self).SetFieldInteractiveState)(::windows::core::Vtable::as_raw(self), pcpc.into().abi(), dwfieldid, cpfis).ok()
}
pub unsafe fn SetFieldString<P0, P1>(&self, pcpc: P0, dwfieldid: u32, psz: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredential>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetFieldString)(::windows::core::Vtable::as_raw(self), pcpc.into().abi(), dwfieldid, psz.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetFieldCheckbox<P0, P1, P2>(&self, pcpc: P0, dwfieldid: u32, bchecked: P1, pszlabel: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredential>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetFieldCheckbox)(::windows::core::Vtable::as_raw(self), pcpc.into().abi(), dwfieldid, bchecked.into(), pszlabel.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn SetFieldBitmap<P0, P1>(&self, pcpc: P0, dwfieldid: u32, hbmp: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredential>>,
P1: ::std::convert::Into<super::super::Graphics::Gdi::HBITMAP>,
{
(::windows::core::Vtable::vtable(self).SetFieldBitmap)(::windows::core::Vtable::as_raw(self), pcpc.into().abi(), dwfieldid, hbmp.into()).ok()
}
pub unsafe fn SetFieldComboBoxSelectedItem<P0>(&self, pcpc: P0, dwfieldid: u32, dwselecteditem: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredential>>,
{
(::windows::core::Vtable::vtable(self).SetFieldComboBoxSelectedItem)(::windows::core::Vtable::as_raw(self), pcpc.into().abi(), dwfieldid, dwselecteditem).ok()
}
pub unsafe fn DeleteFieldComboBoxItem<P0>(&self, pcpc: P0, dwfieldid: u32, dwitem: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredential>>,
{
(::windows::core::Vtable::vtable(self).DeleteFieldComboBoxItem)(::windows::core::Vtable::as_raw(self), pcpc.into().abi(), dwfieldid, dwitem).ok()
}
pub unsafe fn AppendFieldComboBoxItem<P0, P1>(&self, pcpc: P0, dwfieldid: u32, pszitem: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredential>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).AppendFieldComboBoxItem)(::windows::core::Vtable::as_raw(self), pcpc.into().abi(), dwfieldid, pszitem.into().abi()).ok()
}
pub unsafe fn SetFieldSubmitButton<P0>(&self, pcpc: P0, dwfieldid: u32, dwadjacentto: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredential>>,
{
(::windows::core::Vtable::vtable(self).SetFieldSubmitButton)(::windows::core::Vtable::as_raw(self), pcpc.into().abi(), dwfieldid, dwadjacentto).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnCreatingWindow(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).OnCreatingWindow)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ICredentialProviderCredentialEvents, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICredentialProviderCredentialEvents {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICredentialProviderCredentialEvents {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICredentialProviderCredentialEvents {}
impl ::core::fmt::Debug for ICredentialProviderCredentialEvents {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICredentialProviderCredentialEvents").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICredentialProviderCredentialEvents {
type Vtable = ICredentialProviderCredentialEvents_Vtbl;
}
unsafe impl ::windows::core::Interface for ICredentialProviderCredentialEvents {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfa6fa76b_66b7_4b11_95f1_86171118e816);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICredentialProviderCredentialEvents_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetFieldState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcpc: *mut ::core::ffi::c_void, dwfieldid: u32, cpfs: CREDENTIAL_PROVIDER_FIELD_STATE) -> ::windows::core::HRESULT,
pub SetFieldInteractiveState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcpc: *mut ::core::ffi::c_void, dwfieldid: u32, cpfis: CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE) -> ::windows::core::HRESULT,
pub SetFieldString: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcpc: *mut ::core::ffi::c_void, dwfieldid: u32, psz: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub SetFieldCheckbox: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcpc: *mut ::core::ffi::c_void, dwfieldid: u32, bchecked: super::super::Foundation::BOOL, pszlabel: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetFieldCheckbox: usize,
#[cfg(feature = "Win32_Graphics_Gdi")]
pub SetFieldBitmap: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcpc: *mut ::core::ffi::c_void, dwfieldid: u32, hbmp: super::super::Graphics::Gdi::HBITMAP) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Gdi"))]
SetFieldBitmap: usize,
pub SetFieldComboBoxSelectedItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcpc: *mut ::core::ffi::c_void, dwfieldid: u32, dwselecteditem: u32) -> ::windows::core::HRESULT,
pub DeleteFieldComboBoxItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcpc: *mut ::core::ffi::c_void, dwfieldid: u32, dwitem: u32) -> ::windows::core::HRESULT,
pub AppendFieldComboBoxItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcpc: *mut ::core::ffi::c_void, dwfieldid: u32, pszitem: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub SetFieldSubmitButton: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcpc: *mut ::core::ffi::c_void, dwfieldid: u32, dwadjacentto: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub OnCreatingWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phwndowner: *mut super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
OnCreatingWindow: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICredentialProviderCredentialEvents2(::windows::core::IUnknown);
impl ICredentialProviderCredentialEvents2 {
pub unsafe fn SetFieldState<P0>(&self, pcpc: P0, dwfieldid: u32, cpfs: CREDENTIAL_PROVIDER_FIELD_STATE) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredential>>,
{
(::windows::core::Vtable::vtable(self).base__.SetFieldState)(::windows::core::Vtable::as_raw(self), pcpc.into().abi(), dwfieldid, cpfs).ok()
}
pub unsafe fn SetFieldInteractiveState<P0>(&self, pcpc: P0, dwfieldid: u32, cpfis: CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredential>>,
{
(::windows::core::Vtable::vtable(self).base__.SetFieldInteractiveState)(::windows::core::Vtable::as_raw(self), pcpc.into().abi(), dwfieldid, cpfis).ok()
}
pub unsafe fn SetFieldString<P0, P1>(&self, pcpc: P0, dwfieldid: u32, psz: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredential>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetFieldString)(::windows::core::Vtable::as_raw(self), pcpc.into().abi(), dwfieldid, psz.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetFieldCheckbox<P0, P1, P2>(&self, pcpc: P0, dwfieldid: u32, bchecked: P1, pszlabel: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredential>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetFieldCheckbox)(::windows::core::Vtable::as_raw(self), pcpc.into().abi(), dwfieldid, bchecked.into(), pszlabel.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn SetFieldBitmap<P0, P1>(&self, pcpc: P0, dwfieldid: u32, hbmp: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredential>>,
P1: ::std::convert::Into<super::super::Graphics::Gdi::HBITMAP>,
{
(::windows::core::Vtable::vtable(self).base__.SetFieldBitmap)(::windows::core::Vtable::as_raw(self), pcpc.into().abi(), dwfieldid, hbmp.into()).ok()
}
pub unsafe fn SetFieldComboBoxSelectedItem<P0>(&self, pcpc: P0, dwfieldid: u32, dwselecteditem: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredential>>,
{
(::windows::core::Vtable::vtable(self).base__.SetFieldComboBoxSelectedItem)(::windows::core::Vtable::as_raw(self), pcpc.into().abi(), dwfieldid, dwselecteditem).ok()
}
pub unsafe fn DeleteFieldComboBoxItem<P0>(&self, pcpc: P0, dwfieldid: u32, dwitem: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredential>>,
{
(::windows::core::Vtable::vtable(self).base__.DeleteFieldComboBoxItem)(::windows::core::Vtable::as_raw(self), pcpc.into().abi(), dwfieldid, dwitem).ok()
}
pub unsafe fn AppendFieldComboBoxItem<P0, P1>(&self, pcpc: P0, dwfieldid: u32, pszitem: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredential>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.AppendFieldComboBoxItem)(::windows::core::Vtable::as_raw(self), pcpc.into().abi(), dwfieldid, pszitem.into().abi()).ok()
}
pub unsafe fn SetFieldSubmitButton<P0>(&self, pcpc: P0, dwfieldid: u32, dwadjacentto: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredential>>,
{
(::windows::core::Vtable::vtable(self).base__.SetFieldSubmitButton)(::windows::core::Vtable::as_raw(self), pcpc.into().abi(), dwfieldid, dwadjacentto).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnCreatingWindow(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.OnCreatingWindow)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn BeginFieldUpdates(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).BeginFieldUpdates)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn EndFieldUpdates(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).EndFieldUpdates)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetFieldOptions<P0>(&self, credential: P0, fieldid: u32, options: CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderCredential>>,
{
(::windows::core::Vtable::vtable(self).SetFieldOptions)(::windows::core::Vtable::as_raw(self), credential.into().abi(), fieldid, options).ok()
}
}
::windows::core::interface_hierarchy!(ICredentialProviderCredentialEvents2, ::windows::core::IUnknown, ICredentialProviderCredentialEvents);
impl ::core::clone::Clone for ICredentialProviderCredentialEvents2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICredentialProviderCredentialEvents2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICredentialProviderCredentialEvents2 {}
impl ::core::fmt::Debug for ICredentialProviderCredentialEvents2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICredentialProviderCredentialEvents2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICredentialProviderCredentialEvents2 {
type Vtable = ICredentialProviderCredentialEvents2_Vtbl;
}
unsafe impl ::windows::core::Interface for ICredentialProviderCredentialEvents2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb53c00b6_9922_4b78_b1f4_ddfe774dc39b);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICredentialProviderCredentialEvents2_Vtbl {
pub base__: ICredentialProviderCredentialEvents_Vtbl,
pub BeginFieldUpdates: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub EndFieldUpdates: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetFieldOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, credential: *mut ::core::ffi::c_void, fieldid: u32, options: CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICredentialProviderCredentialWithFieldOptions(::windows::core::IUnknown);
impl ICredentialProviderCredentialWithFieldOptions {
pub unsafe fn GetFieldOptions(&self, fieldid: u32) -> ::windows::core::Result<CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFieldOptions)(::windows::core::Vtable::as_raw(self), fieldid, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ICredentialProviderCredentialWithFieldOptions, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICredentialProviderCredentialWithFieldOptions {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICredentialProviderCredentialWithFieldOptions {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICredentialProviderCredentialWithFieldOptions {}
impl ::core::fmt::Debug for ICredentialProviderCredentialWithFieldOptions {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICredentialProviderCredentialWithFieldOptions").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICredentialProviderCredentialWithFieldOptions {
type Vtable = ICredentialProviderCredentialWithFieldOptions_Vtbl;
}
unsafe impl ::windows::core::Interface for ICredentialProviderCredentialWithFieldOptions {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdbc6fb30_c843_49e3_a645_573e6f39446a);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICredentialProviderCredentialWithFieldOptions_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetFieldOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fieldid: u32, options: *mut CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICredentialProviderEvents(::windows::core::IUnknown);
impl ICredentialProviderEvents {
pub unsafe fn CredentialsChanged(&self, upadvisecontext: usize) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).CredentialsChanged)(::windows::core::Vtable::as_raw(self), upadvisecontext).ok()
}
}
::windows::core::interface_hierarchy!(ICredentialProviderEvents, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICredentialProviderEvents {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICredentialProviderEvents {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICredentialProviderEvents {}
impl ::core::fmt::Debug for ICredentialProviderEvents {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICredentialProviderEvents").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICredentialProviderEvents {
type Vtable = ICredentialProviderEvents_Vtbl;
}
unsafe impl ::windows::core::Interface for ICredentialProviderEvents {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x34201e5a_a787_41a3_a5a4_bd6dcf2a854e);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICredentialProviderEvents_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub CredentialsChanged: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, upadvisecontext: usize) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICredentialProviderFilter(::windows::core::IUnknown);
impl ICredentialProviderFilter {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Filter(&self, cpus: CREDENTIAL_PROVIDER_USAGE_SCENARIO, dwflags: u32, rgclsidproviders: *const ::windows::core::GUID, rgballow: *mut super::super::Foundation::BOOL, cproviders: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Filter)(::windows::core::Vtable::as_raw(self), cpus, dwflags, rgclsidproviders, rgballow, cproviders).ok()
}
pub unsafe fn UpdateRemoteCredential(&self, pcpcsin: *const CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION, pcpcsout: *mut CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UpdateRemoteCredential)(::windows::core::Vtable::as_raw(self), pcpcsin, pcpcsout).ok()
}
}
::windows::core::interface_hierarchy!(ICredentialProviderFilter, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICredentialProviderFilter {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICredentialProviderFilter {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICredentialProviderFilter {}
impl ::core::fmt::Debug for ICredentialProviderFilter {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICredentialProviderFilter").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICredentialProviderFilter {
type Vtable = ICredentialProviderFilter_Vtbl;
}
unsafe impl ::windows::core::Interface for ICredentialProviderFilter {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa5da53f9_d475_4080_a120_910c4a739880);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICredentialProviderFilter_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub Filter: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cpus: CREDENTIAL_PROVIDER_USAGE_SCENARIO, dwflags: u32, rgclsidproviders: *const ::windows::core::GUID, rgballow: *mut super::super::Foundation::BOOL, cproviders: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Filter: usize,
pub UpdateRemoteCredential: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcpcsin: *const CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION, pcpcsout: *mut CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICredentialProviderSetUserArray(::windows::core::IUnknown);
impl ICredentialProviderSetUserArray {
pub unsafe fn SetUserArray<P0>(&self, users: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ICredentialProviderUserArray>>,
{
(::windows::core::Vtable::vtable(self).SetUserArray)(::windows::core::Vtable::as_raw(self), users.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(ICredentialProviderSetUserArray, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICredentialProviderSetUserArray {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICredentialProviderSetUserArray {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICredentialProviderSetUserArray {}
impl ::core::fmt::Debug for ICredentialProviderSetUserArray {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICredentialProviderSetUserArray").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICredentialProviderSetUserArray {
type Vtable = ICredentialProviderSetUserArray_Vtbl;
}
unsafe impl ::windows::core::Interface for ICredentialProviderSetUserArray {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x095c1484_1c0c_4388_9c6d_500e61bf84bd);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICredentialProviderSetUserArray_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetUserArray: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, users: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICredentialProviderUser(::windows::core::IUnknown);
impl ICredentialProviderUser {
pub unsafe fn GetSid(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSid)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetProviderID(&self) -> ::windows::core::Result<::windows::core::GUID> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetProviderID)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetStringValue(&self, key: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetStringValue)(::windows::core::Vtable::as_raw(self), key, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub unsafe fn GetValue(&self, key: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<super::super::System::Com::StructuredStorage::PROPVARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetValue)(::windows::core::Vtable::as_raw(self), key, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ICredentialProviderUser, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICredentialProviderUser {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICredentialProviderUser {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICredentialProviderUser {}
impl ::core::fmt::Debug for ICredentialProviderUser {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICredentialProviderUser").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICredentialProviderUser {
type Vtable = ICredentialProviderUser_Vtbl;
}
unsafe impl ::windows::core::Interface for ICredentialProviderUser {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x13793285_3ea6_40fd_b420_15f47da41fbb);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICredentialProviderUser_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetSid: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, sid: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetProviderID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, providerid: *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetStringValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, key: *const PropertiesSystem::PROPERTYKEY, stringvalue: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetStringValue: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub GetValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, key: *const PropertiesSystem::PROPERTYKEY, value: *mut super::super::System::Com::StructuredStorage::PROPVARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_UI_Shell_PropertiesSystem")))]
GetValue: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICredentialProviderUserArray(::windows::core::IUnknown);
impl ICredentialProviderUserArray {
pub unsafe fn SetProviderFilter(&self, guidprovidertofilterto: *const ::windows::core::GUID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetProviderFilter)(::windows::core::Vtable::as_raw(self), guidprovidertofilterto).ok()
}
pub unsafe fn GetAccountOptions(&self) -> ::windows::core::Result<CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetAccountOptions)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetCount(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCount)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetAt(&self, userindex: u32) -> ::windows::core::Result<ICredentialProviderUser> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetAt)(::windows::core::Vtable::as_raw(self), userindex, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ICredentialProviderUserArray, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICredentialProviderUserArray {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICredentialProviderUserArray {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICredentialProviderUserArray {}
impl ::core::fmt::Debug for ICredentialProviderUserArray {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICredentialProviderUserArray").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICredentialProviderUserArray {
type Vtable = ICredentialProviderUserArray_Vtbl;
}
unsafe impl ::windows::core::Interface for ICredentialProviderUserArray {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x90c119ae_0f18_4520_a1f1_114366a40fe8);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICredentialProviderUserArray_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetProviderFilter: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, guidprovidertofilterto: *const ::windows::core::GUID) -> ::windows::core::HRESULT,
pub GetAccountOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, credentialprovideraccountoptions: *mut CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS) -> ::windows::core::HRESULT,
pub GetCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, usercount: *mut u32) -> ::windows::core::HRESULT,
pub GetAt: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, userindex: u32, user: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICurrentItem(::windows::core::IUnknown);
impl ICurrentItem {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetItemIDList(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItemIDList)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetItem(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItem)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ICurrentItem, ::windows::core::IUnknown, IRelatedItem);
impl ::core::clone::Clone for ICurrentItem {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICurrentItem {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICurrentItem {}
impl ::core::fmt::Debug for ICurrentItem {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICurrentItem").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICurrentItem {
type Vtable = ICurrentItem_Vtbl;
}
unsafe impl ::windows::core::Interface for ICurrentItem {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x240a7174_d653_4a1d_a6d3_d4943cfbfe3d);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICurrentItem_Vtbl {
pub base__: IRelatedItem_Vtbl,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICurrentWorkingDirectory(::windows::core::IUnknown);
impl ICurrentWorkingDirectory {
pub unsafe fn GetDirectory(&self, pwzpath: &mut [u16]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetDirectory)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pwzpath.as_ptr()), pwzpath.len() as _).ok()
}
pub unsafe fn SetDirectory<P0>(&self, pwzpath: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetDirectory)(::windows::core::Vtable::as_raw(self), pwzpath.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(ICurrentWorkingDirectory, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICurrentWorkingDirectory {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICurrentWorkingDirectory {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICurrentWorkingDirectory {}
impl ::core::fmt::Debug for ICurrentWorkingDirectory {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICurrentWorkingDirectory").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICurrentWorkingDirectory {
type Vtable = ICurrentWorkingDirectory_Vtbl;
}
unsafe impl ::windows::core::Interface for ICurrentWorkingDirectory {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x91956d21_9276_11d1_921a_006097df5bd4);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICurrentWorkingDirectory_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetDirectory: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwzpath: ::windows::core::PWSTR, cchsize: u32) -> ::windows::core::HRESULT,
pub SetDirectory: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwzpath: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ICustomDestinationList(::windows::core::IUnknown);
impl ICustomDestinationList {
pub unsafe fn SetAppID<P0>(&self, pszappid: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetAppID)(::windows::core::Vtable::as_raw(self), pszappid.into().abi()).ok()
}
pub unsafe fn BeginList<T>(&self, pcminslots: *mut u32) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).BeginList)(::windows::core::Vtable::as_raw(self), pcminslots, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn AppendCategory<P0, P1>(&self, pszcategory: P0, poa: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<Common::IObjectArray>>,
{
(::windows::core::Vtable::vtable(self).AppendCategory)(::windows::core::Vtable::as_raw(self), pszcategory.into().abi(), poa.into().abi()).ok()
}
pub unsafe fn AppendKnownCategory(&self, category: KNOWNDESTCATEGORY) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AppendKnownCategory)(::windows::core::Vtable::as_raw(self), category).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn AddUserTasks<P0>(&self, poa: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<Common::IObjectArray>>,
{
(::windows::core::Vtable::vtable(self).AddUserTasks)(::windows::core::Vtable::as_raw(self), poa.into().abi()).ok()
}
pub unsafe fn CommitList(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).CommitList)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GetRemovedDestinations<T>(&self) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetRemovedDestinations)(::windows::core::Vtable::as_raw(self), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn DeleteList<P0>(&self, pszappid: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).DeleteList)(::windows::core::Vtable::as_raw(self), pszappid.into().abi()).ok()
}
pub unsafe fn AbortList(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AbortList)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(ICustomDestinationList, ::windows::core::IUnknown);
impl ::core::clone::Clone for ICustomDestinationList {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ICustomDestinationList {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ICustomDestinationList {}
impl ::core::fmt::Debug for ICustomDestinationList {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ICustomDestinationList").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ICustomDestinationList {
type Vtable = ICustomDestinationList_Vtbl;
}
unsafe impl ::windows::core::Interface for ICustomDestinationList {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6332debf_87b5_4670_90c0_5e57b408a49e);
}
#[repr(C)]
#[doc(hidden)]
pub struct ICustomDestinationList_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetAppID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszappid: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub BeginList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcminslots: *mut u32, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub AppendCategory: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszcategory: ::windows::core::PCWSTR, poa: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
AppendCategory: usize,
pub AppendKnownCategory: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, category: KNOWNDESTCATEGORY) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub AddUserTasks: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, poa: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
AddUserTasks: usize,
pub CommitList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetRemovedDestinations: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub DeleteList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszappid: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub AbortList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IDataObjectAsyncCapability(::windows::core::IUnknown);
impl IDataObjectAsyncCapability {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetAsyncMode<P0>(&self, fdoopasync: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetAsyncMode)(::windows::core::Vtable::as_raw(self), fdoopasync.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetAsyncMode(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetAsyncMode)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn StartOperation<P0>(&self, pbcreserved: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
{
(::windows::core::Vtable::vtable(self).StartOperation)(::windows::core::Vtable::as_raw(self), pbcreserved.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn InOperation(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).InOperation)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn EndOperation<P0>(&self, hresult: ::windows::core::HRESULT, pbcreserved: P0, dweffects: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
{
(::windows::core::Vtable::vtable(self).EndOperation)(::windows::core::Vtable::as_raw(self), hresult, pbcreserved.into().abi(), dweffects).ok()
}
}
::windows::core::interface_hierarchy!(IDataObjectAsyncCapability, ::windows::core::IUnknown);
impl ::core::clone::Clone for IDataObjectAsyncCapability {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IDataObjectAsyncCapability {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IDataObjectAsyncCapability {}
impl ::core::fmt::Debug for IDataObjectAsyncCapability {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDataObjectAsyncCapability").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IDataObjectAsyncCapability {
type Vtable = IDataObjectAsyncCapability_Vtbl;
}
unsafe impl ::windows::core::Interface for IDataObjectAsyncCapability {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3d8b0590_f691_11d2_8ea9_006097df5bd4);
}
#[repr(C)]
#[doc(hidden)]
pub struct IDataObjectAsyncCapability_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub SetAsyncMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fdoopasync: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetAsyncMode: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetAsyncMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfisopasync: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetAsyncMode: usize,
#[cfg(feature = "Win32_System_Com")]
pub StartOperation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbcreserved: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
StartOperation: usize,
#[cfg(feature = "Win32_Foundation")]
pub InOperation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfinasyncop: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
InOperation: usize,
#[cfg(feature = "Win32_System_Com")]
pub EndOperation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hresult: ::windows::core::HRESULT, pbcreserved: *mut ::core::ffi::c_void, dweffects: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
EndOperation: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IDataObjectProvider(::windows::core::IUnknown);
impl IDataObjectProvider {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn GetDataObject(&self) -> ::windows::core::Result<super::super::System::Com::IDataObject> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetDataObject)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn SetDataObject<P0>(&self, dataobject: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
{
(::windows::core::Vtable::vtable(self).SetDataObject)(::windows::core::Vtable::as_raw(self), dataobject.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IDataObjectProvider, ::windows::core::IUnknown);
impl ::core::clone::Clone for IDataObjectProvider {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IDataObjectProvider {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IDataObjectProvider {}
impl ::core::fmt::Debug for IDataObjectProvider {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDataObjectProvider").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IDataObjectProvider {
type Vtable = IDataObjectProvider_Vtbl;
}
unsafe impl ::windows::core::Interface for IDataObjectProvider {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3d25f6d6_4b2a_433c_9184_7c33ad35d001);
}
#[repr(C)]
#[doc(hidden)]
pub struct IDataObjectProvider_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub GetDataObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dataobject: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
GetDataObject: usize,
#[cfg(feature = "Win32_System_Com")]
pub SetDataObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dataobject: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
SetDataObject: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IDataTransferManagerInterop(::windows::core::IUnknown);
impl IDataTransferManagerInterop {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetForWindow<P0, T>(&self, appwindow: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetForWindow)(::windows::core::Vtable::as_raw(self), appwindow.into(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ShowShareUIForWindow<P0>(&self, appwindow: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).ShowShareUIForWindow)(::windows::core::Vtable::as_raw(self), appwindow.into()).ok()
}
}
::windows::core::interface_hierarchy!(IDataTransferManagerInterop, ::windows::core::IUnknown);
impl ::core::clone::Clone for IDataTransferManagerInterop {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IDataTransferManagerInterop {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IDataTransferManagerInterop {}
impl ::core::fmt::Debug for IDataTransferManagerInterop {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDataTransferManagerInterop").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IDataTransferManagerInterop {
type Vtable = IDataTransferManagerInterop_Vtbl;
}
unsafe impl ::windows::core::Interface for IDataTransferManagerInterop {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3a3dcd6c_3eab_43dc_bcde_45671ce800c8);
}
#[repr(C)]
#[doc(hidden)]
pub struct IDataTransferManagerInterop_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub GetForWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, appwindow: super::super::Foundation::HWND, riid: *const ::windows::core::GUID, datatransfermanager: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetForWindow: usize,
#[cfg(feature = "Win32_Foundation")]
pub ShowShareUIForWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, appwindow: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
ShowShareUIForWindow: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IDefaultExtractIconInit(::windows::core::IUnknown);
impl IDefaultExtractIconInit {
pub unsafe fn SetFlags(&self, uflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetFlags)(::windows::core::Vtable::as_raw(self), uflags).ok()
}
#[doc = "*Required features: `\"Win32_System_Registry\"`*"]
#[cfg(feature = "Win32_System_Registry")]
pub unsafe fn SetKey<P0>(&self, hkey: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::System::Registry::HKEY>,
{
(::windows::core::Vtable::vtable(self).SetKey)(::windows::core::Vtable::as_raw(self), hkey.into()).ok()
}
pub unsafe fn SetNormalIcon<P0>(&self, pszfile: P0, iicon: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetNormalIcon)(::windows::core::Vtable::as_raw(self), pszfile.into().abi(), iicon).ok()
}
pub unsafe fn SetOpenIcon<P0>(&self, pszfile: P0, iicon: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetOpenIcon)(::windows::core::Vtable::as_raw(self), pszfile.into().abi(), iicon).ok()
}
pub unsafe fn SetShortcutIcon<P0>(&self, pszfile: P0, iicon: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetShortcutIcon)(::windows::core::Vtable::as_raw(self), pszfile.into().abi(), iicon).ok()
}
pub unsafe fn SetDefaultIcon<P0>(&self, pszfile: P0, iicon: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetDefaultIcon)(::windows::core::Vtable::as_raw(self), pszfile.into().abi(), iicon).ok()
}
}
::windows::core::interface_hierarchy!(IDefaultExtractIconInit, ::windows::core::IUnknown);
impl ::core::clone::Clone for IDefaultExtractIconInit {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IDefaultExtractIconInit {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IDefaultExtractIconInit {}
impl ::core::fmt::Debug for IDefaultExtractIconInit {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDefaultExtractIconInit").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IDefaultExtractIconInit {
type Vtable = IDefaultExtractIconInit_Vtbl;
}
unsafe impl ::windows::core::Interface for IDefaultExtractIconInit {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x41ded17d_d6b3_4261_997d_88c60e4b1d58);
}
#[repr(C)]
#[doc(hidden)]
pub struct IDefaultExtractIconInit_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uflags: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Registry")]
pub SetKey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hkey: super::super::System::Registry::HKEY) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Registry"))]
SetKey: usize,
pub SetNormalIcon: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszfile: ::windows::core::PCWSTR, iicon: i32) -> ::windows::core::HRESULT,
pub SetOpenIcon: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszfile: ::windows::core::PCWSTR, iicon: i32) -> ::windows::core::HRESULT,
pub SetShortcutIcon: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszfile: ::windows::core::PCWSTR, iicon: i32) -> ::windows::core::HRESULT,
pub SetDefaultIcon: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszfile: ::windows::core::PCWSTR, iicon: i32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IDefaultFolderMenuInitialize(::windows::core::IUnknown);
impl IDefaultFolderMenuInitialize {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn Initialize<P0, P1, P2, P3>(&self, hwnd: P0, pcmcb: P1, pidlfolder: ::core::option::Option<*const Common::ITEMIDLIST>, psf: P2, apidl: &[*const Common::ITEMIDLIST], punkassociation: P3, ckeys: u32, akeys: ::core::option::Option<*const super::super::System::Registry::HKEY>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<IContextMenuCB>>,
P2: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self), hwnd.into(), pcmcb.into().abi(), ::core::mem::transmute(pidlfolder.unwrap_or(::std::ptr::null())), psf.into().abi(), apidl.len() as _, ::core::mem::transmute(apidl.as_ptr()), punkassociation.into().abi(), ckeys, ::core::mem::transmute(akeys.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn SetMenuRestrictions(&self, dfmrvalues: DEFAULT_FOLDER_MENU_RESTRICTIONS) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetMenuRestrictions)(::windows::core::Vtable::as_raw(self), dfmrvalues).ok()
}
pub unsafe fn GetMenuRestrictions(&self, dfmrmask: DEFAULT_FOLDER_MENU_RESTRICTIONS) -> ::windows::core::Result<DEFAULT_FOLDER_MENU_RESTRICTIONS> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetMenuRestrictions)(::windows::core::Vtable::as_raw(self), dfmrmask, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetHandlerClsid(&self, rclsid: *const ::windows::core::GUID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetHandlerClsid)(::windows::core::Vtable::as_raw(self), rclsid).ok()
}
}
::windows::core::interface_hierarchy!(IDefaultFolderMenuInitialize, ::windows::core::IUnknown);
impl ::core::clone::Clone for IDefaultFolderMenuInitialize {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IDefaultFolderMenuInitialize {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IDefaultFolderMenuInitialize {}
impl ::core::fmt::Debug for IDefaultFolderMenuInitialize {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDefaultFolderMenuInitialize").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IDefaultFolderMenuInitialize {
type Vtable = IDefaultFolderMenuInitialize_Vtbl;
}
unsafe impl ::windows::core::Interface for IDefaultFolderMenuInitialize {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7690aa79_f8fc_4615_a327_36f7d18f5d91);
}
#[repr(C)]
#[doc(hidden)]
pub struct IDefaultFolderMenuInitialize_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry", feature = "Win32_UI_Shell_Common"))]
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, pcmcb: *mut ::core::ffi::c_void, pidlfolder: *const Common::ITEMIDLIST, psf: *mut ::core::ffi::c_void, cidl: u32, apidl: *const *const Common::ITEMIDLIST, punkassociation: *mut ::core::ffi::c_void, ckeys: u32, akeys: *const super::super::System::Registry::HKEY) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Registry", feature = "Win32_UI_Shell_Common")))]
Initialize: usize,
pub SetMenuRestrictions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dfmrvalues: DEFAULT_FOLDER_MENU_RESTRICTIONS) -> ::windows::core::HRESULT,
pub GetMenuRestrictions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dfmrmask: DEFAULT_FOLDER_MENU_RESTRICTIONS, pdfmrvalues: *mut DEFAULT_FOLDER_MENU_RESTRICTIONS) -> ::windows::core::HRESULT,
pub SetHandlerClsid: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rclsid: *const ::windows::core::GUID) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IDelegateFolder(::windows::core::IUnknown);
impl IDelegateFolder {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn SetItemAlloc<P0>(&self, pmalloc: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IMalloc>>,
{
(::windows::core::Vtable::vtable(self).SetItemAlloc)(::windows::core::Vtable::as_raw(self), pmalloc.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IDelegateFolder, ::windows::core::IUnknown);
impl ::core::clone::Clone for IDelegateFolder {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IDelegateFolder {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IDelegateFolder {}
impl ::core::fmt::Debug for IDelegateFolder {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDelegateFolder").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IDelegateFolder {
type Vtable = IDelegateFolder_Vtbl;
}
unsafe impl ::windows::core::Interface for IDelegateFolder {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xadd8ba80_002b_11d0_8f0f_00c04fd7d062);
}
#[repr(C)]
#[doc(hidden)]
pub struct IDelegateFolder_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub SetItemAlloc: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pmalloc: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
SetItemAlloc: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IDelegateItem(::windows::core::IUnknown);
impl IDelegateItem {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetItemIDList(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItemIDList)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetItem(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItem)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IDelegateItem, ::windows::core::IUnknown, IRelatedItem);
impl ::core::clone::Clone for IDelegateItem {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IDelegateItem {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IDelegateItem {}
impl ::core::fmt::Debug for IDelegateItem {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDelegateItem").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IDelegateItem {
type Vtable = IDelegateItem_Vtbl;
}
unsafe impl ::windows::core::Interface for IDelegateItem {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3c5a1c94_c951_4cb7_bb6d_3b93f30cce93);
}
#[repr(C)]
#[doc(hidden)]
pub struct IDelegateItem_Vtbl {
pub base__: IRelatedItem_Vtbl,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
#[repr(transparent)]
pub struct IDeskBand(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Ole")]
impl IDeskBand {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn GetWindow(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetWindow)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn ContextSensitiveHelp<P0>(&self, fentermode: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.ContextSensitiveHelp)(::windows::core::Vtable::as_raw(self), fentermode.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ShowDW<P0>(&self, fshow: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.ShowDW)(::windows::core::Vtable::as_raw(self), fshow.into()).ok()
}
pub unsafe fn CloseDW(&self, dwreserved: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.CloseDW)(::windows::core::Vtable::as_raw(self), dwreserved).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ResizeBorderDW<P0, P1>(&self, prcborder: *const super::super::Foundation::RECT, punktoolbarsite: P0, freserved: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.ResizeBorderDW)(::windows::core::Vtable::as_raw(self), prcborder, punktoolbarsite.into().abi(), freserved.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetBandInfo(&self, dwbandid: u32, dwviewmode: u32, pdbi: *mut DESKBANDINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetBandInfo)(::windows::core::Vtable::as_raw(self), dwbandid, dwviewmode, pdbi).ok()
}
}
#[cfg(feature = "Win32_System_Ole")]
::windows::core::interface_hierarchy!(IDeskBand, ::windows::core::IUnknown, super::super::System::Ole::IOleWindow, IDockingWindow);
#[cfg(feature = "Win32_System_Ole")]
impl ::core::clone::Clone for IDeskBand {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::PartialEq for IDeskBand {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::Eq for IDeskBand {}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::fmt::Debug for IDeskBand {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDeskBand").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Vtable for IDeskBand {
type Vtable = IDeskBand_Vtbl;
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Interface for IDeskBand {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xeb0fe172_1a3a_11d0_89b3_00a0c90a90ac);
}
#[cfg(feature = "Win32_System_Ole")]
#[repr(C)]
#[doc(hidden)]
pub struct IDeskBand_Vtbl {
pub base__: IDockingWindow_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub GetBandInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwbandid: u32, dwviewmode: u32, pdbi: *mut DESKBANDINFO) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetBandInfo: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
#[repr(transparent)]
pub struct IDeskBand2(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Ole")]
impl IDeskBand2 {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn GetWindow(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.GetWindow)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn ContextSensitiveHelp<P0>(&self, fentermode: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.ContextSensitiveHelp)(::windows::core::Vtable::as_raw(self), fentermode.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ShowDW<P0>(&self, fshow: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.ShowDW)(::windows::core::Vtable::as_raw(self), fshow.into()).ok()
}
pub unsafe fn CloseDW(&self, dwreserved: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.CloseDW)(::windows::core::Vtable::as_raw(self), dwreserved).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ResizeBorderDW<P0, P1>(&self, prcborder: *const super::super::Foundation::RECT, punktoolbarsite: P0, freserved: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.ResizeBorderDW)(::windows::core::Vtable::as_raw(self), prcborder, punktoolbarsite.into().abi(), freserved.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetBandInfo(&self, dwbandid: u32, dwviewmode: u32, pdbi: *mut DESKBANDINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetBandInfo)(::windows::core::Vtable::as_raw(self), dwbandid, dwviewmode, pdbi).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CanRenderComposited(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CanRenderComposited)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetCompositionState<P0>(&self, fcompositionenabled: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetCompositionState)(::windows::core::Vtable::as_raw(self), fcompositionenabled.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetCompositionState(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCompositionState)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Ole")]
::windows::core::interface_hierarchy!(IDeskBand2, ::windows::core::IUnknown, super::super::System::Ole::IOleWindow, IDockingWindow, IDeskBand);
#[cfg(feature = "Win32_System_Ole")]
impl ::core::clone::Clone for IDeskBand2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::PartialEq for IDeskBand2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::Eq for IDeskBand2 {}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::fmt::Debug for IDeskBand2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDeskBand2").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Vtable for IDeskBand2 {
type Vtable = IDeskBand2_Vtbl;
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Interface for IDeskBand2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x79d16de4_abee_4021_8d9d_9169b261d657);
}
#[cfg(feature = "Win32_System_Ole")]
#[repr(C)]
#[doc(hidden)]
pub struct IDeskBand2_Vtbl {
pub base__: IDeskBand_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub CanRenderComposited: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfcanrendercomposited: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
CanRenderComposited: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetCompositionState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fcompositionenabled: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetCompositionState: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetCompositionState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfcompositionenabled: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetCompositionState: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IDeskBandInfo(::windows::core::IUnknown);
impl IDeskBandInfo {
pub unsafe fn GetDefaultBandWidth(&self, dwbandid: u32, dwviewmode: u32) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetDefaultBandWidth)(::windows::core::Vtable::as_raw(self), dwbandid, dwviewmode, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IDeskBandInfo, ::windows::core::IUnknown);
impl ::core::clone::Clone for IDeskBandInfo {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IDeskBandInfo {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IDeskBandInfo {}
impl ::core::fmt::Debug for IDeskBandInfo {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDeskBandInfo").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IDeskBandInfo {
type Vtable = IDeskBandInfo_Vtbl;
}
unsafe impl ::windows::core::Interface for IDeskBandInfo {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x77e425fc_cbf9_4307_ba6a_bb5727745661);
}
#[repr(C)]
#[doc(hidden)]
pub struct IDeskBandInfo_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetDefaultBandWidth: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwbandid: u32, dwviewmode: u32, pnwidth: *mut i32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
#[repr(transparent)]
pub struct IDeskBar(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Ole")]
impl IDeskBar {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn GetWindow(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetWindow)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn ContextSensitiveHelp<P0>(&self, fentermode: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.ContextSensitiveHelp)(::windows::core::Vtable::as_raw(self), fentermode.into()).ok()
}
pub unsafe fn SetClient<P0>(&self, punkclient: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).SetClient)(::windows::core::Vtable::as_raw(self), punkclient.into().abi()).ok()
}
pub unsafe fn GetClient(&self) -> ::windows::core::Result<::windows::core::IUnknown> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetClient)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnPosRectChangeDB(&self, prc: *const super::super::Foundation::RECT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OnPosRectChangeDB)(::windows::core::Vtable::as_raw(self), prc).ok()
}
}
#[cfg(feature = "Win32_System_Ole")]
::windows::core::interface_hierarchy!(IDeskBar, ::windows::core::IUnknown, super::super::System::Ole::IOleWindow);
#[cfg(feature = "Win32_System_Ole")]
impl ::core::clone::Clone for IDeskBar {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::PartialEq for IDeskBar {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::Eq for IDeskBar {}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::fmt::Debug for IDeskBar {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDeskBar").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Vtable for IDeskBar {
type Vtable = IDeskBar_Vtbl;
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Interface for IDeskBar {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xeb0fe173_1a3a_11d0_89b3_00a0c90a90ac);
}
#[cfg(feature = "Win32_System_Ole")]
#[repr(C)]
#[doc(hidden)]
pub struct IDeskBar_Vtbl {
pub base__: super::super::System::Ole::IOleWindow_Vtbl,
pub SetClient: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punkclient: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetClient: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppunkclient: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub OnPosRectChangeDB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, prc: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
OnPosRectChangeDB: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
#[repr(transparent)]
pub struct IDeskBarClient(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Ole")]
impl IDeskBarClient {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn GetWindow(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetWindow)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn ContextSensitiveHelp<P0>(&self, fentermode: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.ContextSensitiveHelp)(::windows::core::Vtable::as_raw(self), fentermode.into()).ok()
}
pub unsafe fn SetDeskBarSite<P0>(&self, punksite: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).SetDeskBarSite)(::windows::core::Vtable::as_raw(self), punksite.into().abi()).ok()
}
pub unsafe fn SetModeDBC(&self, dwmode: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetModeDBC)(::windows::core::Vtable::as_raw(self), dwmode).ok()
}
pub unsafe fn UIActivateDBC(&self, dwstate: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UIActivateDBC)(::windows::core::Vtable::as_raw(self), dwstate).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetSize(&self, dwwhich: u32) -> ::windows::core::Result<super::super::Foundation::RECT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSize)(::windows::core::Vtable::as_raw(self), dwwhich, result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Ole")]
::windows::core::interface_hierarchy!(IDeskBarClient, ::windows::core::IUnknown, super::super::System::Ole::IOleWindow);
#[cfg(feature = "Win32_System_Ole")]
impl ::core::clone::Clone for IDeskBarClient {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::PartialEq for IDeskBarClient {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::Eq for IDeskBarClient {}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::fmt::Debug for IDeskBarClient {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDeskBarClient").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Vtable for IDeskBarClient {
type Vtable = IDeskBarClient_Vtbl;
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Interface for IDeskBarClient {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xeb0fe175_1a3a_11d0_89b3_00a0c90a90ac);
}
#[cfg(feature = "Win32_System_Ole")]
#[repr(C)]
#[doc(hidden)]
pub struct IDeskBarClient_Vtbl {
pub base__: super::super::System::Ole::IOleWindow_Vtbl,
pub SetDeskBarSite: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punksite: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetModeDBC: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwmode: u32) -> ::windows::core::HRESULT,
pub UIActivateDBC: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwstate: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwwhich: u32, prc: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetSize: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IDesktopGadget(::windows::core::IUnknown);
impl IDesktopGadget {
pub unsafe fn RunGadget<P0>(&self, gadgetpath: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).RunGadget)(::windows::core::Vtable::as_raw(self), gadgetpath.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IDesktopGadget, ::windows::core::IUnknown);
impl ::core::clone::Clone for IDesktopGadget {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IDesktopGadget {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IDesktopGadget {}
impl ::core::fmt::Debug for IDesktopGadget {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDesktopGadget").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IDesktopGadget {
type Vtable = IDesktopGadget_Vtbl;
}
unsafe impl ::windows::core::Interface for IDesktopGadget {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc1646bc4_f298_4f91_a204_eb2dd1709d1a);
}
#[repr(C)]
#[doc(hidden)]
pub struct IDesktopGadget_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub RunGadget: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, gadgetpath: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IDesktopWallpaper(::windows::core::IUnknown);
impl IDesktopWallpaper {
pub unsafe fn SetWallpaper<P0, P1>(&self, monitorid: P0, wallpaper: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetWallpaper)(::windows::core::Vtable::as_raw(self), monitorid.into().abi(), wallpaper.into().abi()).ok()
}
pub unsafe fn GetWallpaper<P0>(&self, monitorid: P0) -> ::windows::core::Result<::windows::core::PWSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetWallpaper)(::windows::core::Vtable::as_raw(self), monitorid.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetMonitorDevicePathAt(&self, monitorindex: u32) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetMonitorDevicePathAt)(::windows::core::Vtable::as_raw(self), monitorindex, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetMonitorDevicePathCount(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetMonitorDevicePathCount)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetMonitorRECT<P0>(&self, monitorid: P0) -> ::windows::core::Result<super::super::Foundation::RECT>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetMonitorRECT)(::windows::core::Vtable::as_raw(self), monitorid.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetBackgroundColor<P0>(&self, color: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::COLORREF>,
{
(::windows::core::Vtable::vtable(self).SetBackgroundColor)(::windows::core::Vtable::as_raw(self), color.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetBackgroundColor(&self) -> ::windows::core::Result<super::super::Foundation::COLORREF> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetBackgroundColor)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetPosition(&self, position: DESKTOP_WALLPAPER_POSITION) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetPosition)(::windows::core::Vtable::as_raw(self), position).ok()
}
pub unsafe fn GetPosition(&self) -> ::windows::core::Result<DESKTOP_WALLPAPER_POSITION> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPosition)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetSlideshow<P0>(&self, items: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItemArray>>,
{
(::windows::core::Vtable::vtable(self).SetSlideshow)(::windows::core::Vtable::as_raw(self), items.into().abi()).ok()
}
pub unsafe fn GetSlideshow(&self) -> ::windows::core::Result<IShellItemArray> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSlideshow)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetSlideshowOptions(&self, options: DESKTOP_SLIDESHOW_OPTIONS, slideshowtick: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetSlideshowOptions)(::windows::core::Vtable::as_raw(self), options, slideshowtick).ok()
}
pub unsafe fn GetSlideshowOptions(&self, options: *mut DESKTOP_SLIDESHOW_OPTIONS, slideshowtick: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetSlideshowOptions)(::windows::core::Vtable::as_raw(self), options, slideshowtick).ok()
}
pub unsafe fn AdvanceSlideshow<P0>(&self, monitorid: P0, direction: DESKTOP_SLIDESHOW_DIRECTION) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).AdvanceSlideshow)(::windows::core::Vtable::as_raw(self), monitorid.into().abi(), direction).ok()
}
pub unsafe fn GetStatus(&self) -> ::windows::core::Result<DESKTOP_SLIDESHOW_STATE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetStatus)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Enable<P0>(&self, enable: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).Enable)(::windows::core::Vtable::as_raw(self), enable.into()).ok()
}
}
::windows::core::interface_hierarchy!(IDesktopWallpaper, ::windows::core::IUnknown);
impl ::core::clone::Clone for IDesktopWallpaper {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IDesktopWallpaper {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IDesktopWallpaper {}
impl ::core::fmt::Debug for IDesktopWallpaper {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDesktopWallpaper").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IDesktopWallpaper {
type Vtable = IDesktopWallpaper_Vtbl;
}
unsafe impl ::windows::core::Interface for IDesktopWallpaper {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb92b56a9_8b55_4e14_9a89_0199bbb6f93b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IDesktopWallpaper_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetWallpaper: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, monitorid: ::windows::core::PCWSTR, wallpaper: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub GetWallpaper: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, monitorid: ::windows::core::PCWSTR, wallpaper: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetMonitorDevicePathAt: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, monitorindex: u32, monitorid: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetMonitorDevicePathCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, count: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetMonitorRECT: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, monitorid: ::windows::core::PCWSTR, displayrect: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetMonitorRECT: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetBackgroundColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, color: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetBackgroundColor: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetBackgroundColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, color: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetBackgroundColor: usize,
pub SetPosition: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, position: DESKTOP_WALLPAPER_POSITION) -> ::windows::core::HRESULT,
pub GetPosition: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, position: *mut DESKTOP_WALLPAPER_POSITION) -> ::windows::core::HRESULT,
pub SetSlideshow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, items: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetSlideshow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, items: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetSlideshowOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, options: DESKTOP_SLIDESHOW_OPTIONS, slideshowtick: u32) -> ::windows::core::HRESULT,
pub GetSlideshowOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, options: *mut DESKTOP_SLIDESHOW_OPTIONS, slideshowtick: *mut u32) -> ::windows::core::HRESULT,
pub AdvanceSlideshow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, monitorid: ::windows::core::PCWSTR, direction: DESKTOP_SLIDESHOW_DIRECTION) -> ::windows::core::HRESULT,
pub GetStatus: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, state: *mut DESKTOP_SLIDESHOW_STATE) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub Enable: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, enable: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Enable: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IDestinationStreamFactory(::windows::core::IUnknown);
impl IDestinationStreamFactory {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn GetDestinationStream(&self) -> ::windows::core::Result<super::super::System::Com::IStream> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetDestinationStream)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IDestinationStreamFactory, ::windows::core::IUnknown);
impl ::core::clone::Clone for IDestinationStreamFactory {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IDestinationStreamFactory {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IDestinationStreamFactory {}
impl ::core::fmt::Debug for IDestinationStreamFactory {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDestinationStreamFactory").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IDestinationStreamFactory {
type Vtable = IDestinationStreamFactory_Vtbl;
}
unsafe impl ::windows::core::Interface for IDestinationStreamFactory {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8a87781b_39a7_4a1f_aab3_a39b9c34a7d9);
}
#[repr(C)]
#[doc(hidden)]
pub struct IDestinationStreamFactory_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub GetDestinationStream: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppstm: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
GetDestinationStream: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IDisplayItem(::windows::core::IUnknown);
impl IDisplayItem {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetItemIDList(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItemIDList)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetItem(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItem)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IDisplayItem, ::windows::core::IUnknown, IRelatedItem);
impl ::core::clone::Clone for IDisplayItem {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IDisplayItem {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IDisplayItem {}
impl ::core::fmt::Debug for IDisplayItem {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDisplayItem").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IDisplayItem {
type Vtable = IDisplayItem_Vtbl;
}
unsafe impl ::windows::core::Interface for IDisplayItem {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc6fd5997_9f6b_4888_8703_94e80e8cde3f);
}
#[repr(C)]
#[doc(hidden)]
pub struct IDisplayItem_Vtbl {
pub base__: IRelatedItem_Vtbl,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IDocViewSite(::windows::core::IUnknown);
impl IDocViewSite {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn OnSetTitle(&self, pvtitle: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OnSetTitle)(::windows::core::Vtable::as_raw(self), pvtitle).ok()
}
}
::windows::core::interface_hierarchy!(IDocViewSite, ::windows::core::IUnknown);
impl ::core::clone::Clone for IDocViewSite {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IDocViewSite {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IDocViewSite {}
impl ::core::fmt::Debug for IDocViewSite {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDocViewSite").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IDocViewSite {
type Vtable = IDocViewSite_Vtbl;
}
unsafe impl ::windows::core::Interface for IDocViewSite {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x87d605e0_c511_11cf_89a9_00a0c9054129);
}
#[repr(C)]
#[doc(hidden)]
pub struct IDocViewSite_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub OnSetTitle: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pvtitle: *const super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
OnSetTitle: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
#[repr(transparent)]
pub struct IDockingWindow(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Ole")]
impl IDockingWindow {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn GetWindow(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetWindow)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn ContextSensitiveHelp<P0>(&self, fentermode: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.ContextSensitiveHelp)(::windows::core::Vtable::as_raw(self), fentermode.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ShowDW<P0>(&self, fshow: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).ShowDW)(::windows::core::Vtable::as_raw(self), fshow.into()).ok()
}
pub unsafe fn CloseDW(&self, dwreserved: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).CloseDW)(::windows::core::Vtable::as_raw(self), dwreserved).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ResizeBorderDW<P0, P1>(&self, prcborder: *const super::super::Foundation::RECT, punktoolbarsite: P0, freserved: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).ResizeBorderDW)(::windows::core::Vtable::as_raw(self), prcborder, punktoolbarsite.into().abi(), freserved.into()).ok()
}
}
#[cfg(feature = "Win32_System_Ole")]
::windows::core::interface_hierarchy!(IDockingWindow, ::windows::core::IUnknown, super::super::System::Ole::IOleWindow);
#[cfg(feature = "Win32_System_Ole")]
impl ::core::clone::Clone for IDockingWindow {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::PartialEq for IDockingWindow {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::Eq for IDockingWindow {}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::fmt::Debug for IDockingWindow {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDockingWindow").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Vtable for IDockingWindow {
type Vtable = IDockingWindow_Vtbl;
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Interface for IDockingWindow {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x012dd920_7b26_11d0_8ca9_00a0c92dbfe8);
}
#[cfg(feature = "Win32_System_Ole")]
#[repr(C)]
#[doc(hidden)]
pub struct IDockingWindow_Vtbl {
pub base__: super::super::System::Ole::IOleWindow_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub ShowDW: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fshow: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
ShowDW: usize,
pub CloseDW: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwreserved: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub ResizeBorderDW: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, prcborder: *const super::super::Foundation::RECT, punktoolbarsite: *mut ::core::ffi::c_void, freserved: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
ResizeBorderDW: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
#[repr(transparent)]
pub struct IDockingWindowFrame(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Ole")]
impl IDockingWindowFrame {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn GetWindow(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetWindow)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn ContextSensitiveHelp<P0>(&self, fentermode: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.ContextSensitiveHelp)(::windows::core::Vtable::as_raw(self), fentermode.into()).ok()
}
pub unsafe fn AddToolbar<P0, P1>(&self, punksrc: P0, pwszitem: P1, dwaddflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).AddToolbar)(::windows::core::Vtable::as_raw(self), punksrc.into().abi(), pwszitem.into().abi(), dwaddflags).ok()
}
pub unsafe fn RemoveToolbar<P0>(&self, punksrc: P0, dwremoveflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).RemoveToolbar)(::windows::core::Vtable::as_raw(self), punksrc.into().abi(), dwremoveflags).ok()
}
pub unsafe fn FindToolbar<P0>(&self, pwszitem: P0, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).FindToolbar)(::windows::core::Vtable::as_raw(self), pwszitem.into().abi(), riid, ppv).ok()
}
}
#[cfg(feature = "Win32_System_Ole")]
::windows::core::interface_hierarchy!(IDockingWindowFrame, ::windows::core::IUnknown, super::super::System::Ole::IOleWindow);
#[cfg(feature = "Win32_System_Ole")]
impl ::core::clone::Clone for IDockingWindowFrame {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::PartialEq for IDockingWindowFrame {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::Eq for IDockingWindowFrame {}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::fmt::Debug for IDockingWindowFrame {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDockingWindowFrame").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Vtable for IDockingWindowFrame {
type Vtable = IDockingWindowFrame_Vtbl;
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Interface for IDockingWindowFrame {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x47d2657a_7b27_11d0_8ca9_00a0c92dbfe8);
}
#[cfg(feature = "Win32_System_Ole")]
#[repr(C)]
#[doc(hidden)]
pub struct IDockingWindowFrame_Vtbl {
pub base__: super::super::System::Ole::IOleWindow_Vtbl,
pub AddToolbar: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punksrc: *mut ::core::ffi::c_void, pwszitem: ::windows::core::PCWSTR, dwaddflags: u32) -> ::windows::core::HRESULT,
pub RemoveToolbar: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punksrc: *mut ::core::ffi::c_void, dwremoveflags: u32) -> ::windows::core::HRESULT,
pub FindToolbar: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwszitem: ::windows::core::PCWSTR, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
#[repr(transparent)]
pub struct IDockingWindowSite(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Ole")]
impl IDockingWindowSite {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn GetWindow(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetWindow)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn ContextSensitiveHelp<P0>(&self, fentermode: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.ContextSensitiveHelp)(::windows::core::Vtable::as_raw(self), fentermode.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetBorderDW<P0>(&self, punkobj: P0) -> ::windows::core::Result<super::super::Foundation::RECT>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetBorderDW)(::windows::core::Vtable::as_raw(self), punkobj.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RequestBorderSpaceDW<P0>(&self, punkobj: P0, pbw: *const super::super::Foundation::RECT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).RequestBorderSpaceDW)(::windows::core::Vtable::as_raw(self), punkobj.into().abi(), pbw).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetBorderSpaceDW<P0>(&self, punkobj: P0, pbw: *const super::super::Foundation::RECT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).SetBorderSpaceDW)(::windows::core::Vtable::as_raw(self), punkobj.into().abi(), pbw).ok()
}
}
#[cfg(feature = "Win32_System_Ole")]
::windows::core::interface_hierarchy!(IDockingWindowSite, ::windows::core::IUnknown, super::super::System::Ole::IOleWindow);
#[cfg(feature = "Win32_System_Ole")]
impl ::core::clone::Clone for IDockingWindowSite {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::PartialEq for IDockingWindowSite {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::Eq for IDockingWindowSite {}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::fmt::Debug for IDockingWindowSite {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDockingWindowSite").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Vtable for IDockingWindowSite {
type Vtable = IDockingWindowSite_Vtbl;
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Interface for IDockingWindowSite {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2a342fc2_7b26_11d0_8ca9_00a0c92dbfe8);
}
#[cfg(feature = "Win32_System_Ole")]
#[repr(C)]
#[doc(hidden)]
pub struct IDockingWindowSite_Vtbl {
pub base__: super::super::System::Ole::IOleWindow_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub GetBorderDW: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punkobj: *mut ::core::ffi::c_void, prcborder: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetBorderDW: usize,
#[cfg(feature = "Win32_Foundation")]
pub RequestBorderSpaceDW: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punkobj: *mut ::core::ffi::c_void, pbw: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
RequestBorderSpaceDW: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetBorderSpaceDW: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punkobj: *mut ::core::ffi::c_void, pbw: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetBorderSpaceDW: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IDragSourceHelper(::windows::core::IUnknown);
impl IDragSourceHelper {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_System_Com\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Com"))]
pub unsafe fn InitializeFromBitmap<P0>(&self, pshdi: *const SHDRAGIMAGE, pdataobject: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
{
(::windows::core::Vtable::vtable(self).InitializeFromBitmap)(::windows::core::Vtable::as_raw(self), pshdi, pdataobject.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
pub unsafe fn InitializeFromWindow<P0, P1>(&self, hwnd: P0, ppt: ::core::option::Option<*const super::super::Foundation::POINT>, pdataobject: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
{
(::windows::core::Vtable::vtable(self).InitializeFromWindow)(::windows::core::Vtable::as_raw(self), hwnd.into(), ::core::mem::transmute(ppt.unwrap_or(::std::ptr::null())), pdataobject.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IDragSourceHelper, ::windows::core::IUnknown);
impl ::core::clone::Clone for IDragSourceHelper {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IDragSourceHelper {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IDragSourceHelper {}
impl ::core::fmt::Debug for IDragSourceHelper {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDragSourceHelper").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IDragSourceHelper {
type Vtable = IDragSourceHelper_Vtbl;
}
unsafe impl ::windows::core::Interface for IDragSourceHelper {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xde5bf786_477a_11d2_839d_00c04fd918d0);
}
#[repr(C)]
#[doc(hidden)]
pub struct IDragSourceHelper_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Com"))]
pub InitializeFromBitmap: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pshdi: *const SHDRAGIMAGE, pdataobject: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Com")))]
InitializeFromBitmap: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
pub InitializeFromWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, ppt: *const super::super::Foundation::POINT, pdataobject: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com")))]
InitializeFromWindow: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IDragSourceHelper2(::windows::core::IUnknown);
impl IDragSourceHelper2 {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_System_Com\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Com"))]
pub unsafe fn InitializeFromBitmap<P0>(&self, pshdi: *const SHDRAGIMAGE, pdataobject: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
{
(::windows::core::Vtable::vtable(self).base__.InitializeFromBitmap)(::windows::core::Vtable::as_raw(self), pshdi, pdataobject.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
pub unsafe fn InitializeFromWindow<P0, P1>(&self, hwnd: P0, ppt: ::core::option::Option<*const super::super::Foundation::POINT>, pdataobject: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
{
(::windows::core::Vtable::vtable(self).base__.InitializeFromWindow)(::windows::core::Vtable::as_raw(self), hwnd.into(), ::core::mem::transmute(ppt.unwrap_or(::std::ptr::null())), pdataobject.into().abi()).ok()
}
pub unsafe fn SetFlags(&self, dwflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetFlags)(::windows::core::Vtable::as_raw(self), dwflags).ok()
}
}
::windows::core::interface_hierarchy!(IDragSourceHelper2, ::windows::core::IUnknown, IDragSourceHelper);
impl ::core::clone::Clone for IDragSourceHelper2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IDragSourceHelper2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IDragSourceHelper2 {}
impl ::core::fmt::Debug for IDragSourceHelper2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDragSourceHelper2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IDragSourceHelper2 {
type Vtable = IDragSourceHelper2_Vtbl;
}
unsafe impl ::windows::core::Interface for IDragSourceHelper2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x83e07d0d_0c5f_4163_bf1a_60b274051e40);
}
#[repr(C)]
#[doc(hidden)]
pub struct IDragSourceHelper2_Vtbl {
pub base__: IDragSourceHelper_Vtbl,
pub SetFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IDropTargetHelper(::windows::core::IUnknown);
impl IDropTargetHelper {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn DragEnter<P0, P1>(&self, hwndtarget: P0, pdataobject: P1, ppt: *const super::super::Foundation::POINT, dweffect: super::super::System::Ole::DROPEFFECT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
{
(::windows::core::Vtable::vtable(self).DragEnter)(::windows::core::Vtable::as_raw(self), hwndtarget.into(), pdataobject.into().abi(), ppt, dweffect).ok()
}
pub unsafe fn DragLeave(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).DragLeave)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn DragOver(&self, ppt: *const super::super::Foundation::POINT, dweffect: super::super::System::Ole::DROPEFFECT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).DragOver)(::windows::core::Vtable::as_raw(self), ppt, dweffect).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Drop<P0>(&self, pdataobject: P0, ppt: *const super::super::Foundation::POINT, dweffect: super::super::System::Ole::DROPEFFECT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
{
(::windows::core::Vtable::vtable(self).Drop)(::windows::core::Vtable::as_raw(self), pdataobject.into().abi(), ppt, dweffect).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Show<P0>(&self, fshow: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).Show)(::windows::core::Vtable::as_raw(self), fshow.into()).ok()
}
}
::windows::core::interface_hierarchy!(IDropTargetHelper, ::windows::core::IUnknown);
impl ::core::clone::Clone for IDropTargetHelper {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IDropTargetHelper {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IDropTargetHelper {}
impl ::core::fmt::Debug for IDropTargetHelper {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDropTargetHelper").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IDropTargetHelper {
type Vtable = IDropTargetHelper_Vtbl;
}
unsafe impl ::windows::core::Interface for IDropTargetHelper {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4657278b_411b_11d2_839a_00c04fd918d0);
}
#[repr(C)]
#[doc(hidden)]
pub struct IDropTargetHelper_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub DragEnter: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndtarget: super::super::Foundation::HWND, pdataobject: *mut ::core::ffi::c_void, ppt: *const super::super::Foundation::POINT, dweffect: super::super::System::Ole::DROPEFFECT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
DragEnter: usize,
pub DragLeave: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub DragOver: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppt: *const super::super::Foundation::POINT, dweffect: super::super::System::Ole::DROPEFFECT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Ole")))]
DragOver: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub Drop: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdataobject: *mut ::core::ffi::c_void, ppt: *const super::super::Foundation::POINT, dweffect: super::super::System::Ole::DROPEFFECT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
Drop: usize,
#[cfg(feature = "Win32_Foundation")]
pub Show: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fshow: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Show: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IDynamicHWHandler(::windows::core::IUnknown);
impl IDynamicHWHandler {
pub unsafe fn GetDynamicInfo<P0>(&self, pszdeviceid: P0, dwcontenttype: u32) -> ::windows::core::Result<::windows::core::PWSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetDynamicInfo)(::windows::core::Vtable::as_raw(self), pszdeviceid.into().abi(), dwcontenttype, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IDynamicHWHandler, ::windows::core::IUnknown);
impl ::core::clone::Clone for IDynamicHWHandler {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IDynamicHWHandler {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IDynamicHWHandler {}
impl ::core::fmt::Debug for IDynamicHWHandler {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IDynamicHWHandler").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IDynamicHWHandler {
type Vtable = IDynamicHWHandler_Vtbl;
}
unsafe impl ::windows::core::Interface for IDynamicHWHandler {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdc2601d7_059e_42fc_a09d_2afd21b6d5f7);
}
#[repr(C)]
#[doc(hidden)]
pub struct IDynamicHWHandler_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetDynamicInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszdeviceid: ::windows::core::PCWSTR, dwcontenttype: u32, ppszaction: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IEnumACString(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IEnumACString {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Next(&self, rgelt: &mut [::windows::core::PWSTR], pceltfetched: ::core::option::Option<*mut u32>) -> ::windows::core::HRESULT {
(::windows::core::Vtable::vtable(self).base__.Next)(::windows::core::Vtable::as_raw(self), rgelt.len() as _, ::core::mem::transmute(rgelt.as_ptr()), ::core::mem::transmute(pceltfetched.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Skip(&self, celt: u32) -> ::windows::core::HRESULT {
(::windows::core::Vtable::vtable(self).base__.Skip)(::windows::core::Vtable::as_raw(self), celt)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Reset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Reset)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Clone(&self) -> ::windows::core::Result<super::super::System::Com::IEnumString> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Clone)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn NextItem(&self, pszurl: ::core::option::Option<&mut [u16]>, pulsortindex: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).NextItem)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszurl.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pszurl.as_deref().map_or(0, |slice| slice.len() as _), pulsortindex).ok()
}
pub unsafe fn SetEnumOptions(&self, dwoptions: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetEnumOptions)(::windows::core::Vtable::as_raw(self), dwoptions).ok()
}
pub unsafe fn GetEnumOptions(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetEnumOptions)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IEnumACString, ::windows::core::IUnknown, super::super::System::Com::IEnumString);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IEnumACString {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IEnumACString {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IEnumACString {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IEnumACString {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IEnumACString").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IEnumACString {
type Vtable = IEnumACString_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IEnumACString {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8e74c210_cf9d_4eaf_a403_7356428f0a5a);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IEnumACString_Vtbl {
pub base__: super::super::System::Com::IEnumString_Vtbl,
pub NextItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszurl: ::windows::core::PWSTR, cchmax: u32, pulsortindex: *mut u32) -> ::windows::core::HRESULT,
pub SetEnumOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwoptions: u32) -> ::windows::core::HRESULT,
pub GetEnumOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwoptions: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IEnumAssocHandlers(::windows::core::IUnknown);
impl IEnumAssocHandlers {
pub unsafe fn Next(&self, rgelt: &mut [::core::option::Option<IAssocHandler>], pceltfetched: ::core::option::Option<*mut u32>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Next)(::windows::core::Vtable::as_raw(self), rgelt.len() as _, ::core::mem::transmute(rgelt.as_ptr()), ::core::mem::transmute(pceltfetched.unwrap_or(::std::ptr::null_mut()))).ok()
}
}
::windows::core::interface_hierarchy!(IEnumAssocHandlers, ::windows::core::IUnknown);
impl ::core::clone::Clone for IEnumAssocHandlers {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IEnumAssocHandlers {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IEnumAssocHandlers {}
impl ::core::fmt::Debug for IEnumAssocHandlers {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IEnumAssocHandlers").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IEnumAssocHandlers {
type Vtable = IEnumAssocHandlers_Vtbl;
}
unsafe impl ::windows::core::Interface for IEnumAssocHandlers {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x973810ae_9599_4b88_9e4d_6ee98c9552da);
}
#[repr(C)]
#[doc(hidden)]
pub struct IEnumAssocHandlers_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Next: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32, rgelt: *mut *mut ::core::ffi::c_void, pceltfetched: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IEnumExplorerCommand(::windows::core::IUnknown);
impl IEnumExplorerCommand {
pub unsafe fn Next(&self, puicommand: &mut [::core::option::Option<IExplorerCommand>], pceltfetched: ::core::option::Option<*mut u32>) -> ::windows::core::HRESULT {
(::windows::core::Vtable::vtable(self).Next)(::windows::core::Vtable::as_raw(self), puicommand.len() as _, ::core::mem::transmute(puicommand.as_ptr()), ::core::mem::transmute(pceltfetched.unwrap_or(::std::ptr::null_mut())))
}
pub unsafe fn Skip(&self, celt: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Skip)(::windows::core::Vtable::as_raw(self), celt).ok()
}
pub unsafe fn Reset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Reset)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Clone(&self) -> ::windows::core::Result<IEnumExplorerCommand> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Clone)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IEnumExplorerCommand, ::windows::core::IUnknown);
impl ::core::clone::Clone for IEnumExplorerCommand {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IEnumExplorerCommand {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IEnumExplorerCommand {}
impl ::core::fmt::Debug for IEnumExplorerCommand {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IEnumExplorerCommand").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IEnumExplorerCommand {
type Vtable = IEnumExplorerCommand_Vtbl;
}
unsafe impl ::windows::core::Interface for IEnumExplorerCommand {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa88826f8_186f_4987_aade_ea0cef8fbfe8);
}
#[repr(C)]
#[doc(hidden)]
pub struct IEnumExplorerCommand_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Next: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32, puicommand: *mut *mut ::core::ffi::c_void, pceltfetched: *mut u32) -> ::windows::core::HRESULT,
pub Skip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32) -> ::windows::core::HRESULT,
pub Reset: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Clone: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IEnumExtraSearch(::windows::core::IUnknown);
impl IEnumExtraSearch {
pub unsafe fn Next(&self, rgelt: &mut [EXTRASEARCH], pceltfetched: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Next)(::windows::core::Vtable::as_raw(self), rgelt.len() as _, ::core::mem::transmute(rgelt.as_ptr()), pceltfetched).ok()
}
pub unsafe fn Skip(&self, celt: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Skip)(::windows::core::Vtable::as_raw(self), celt).ok()
}
pub unsafe fn Reset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Reset)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Clone(&self) -> ::windows::core::Result<IEnumExtraSearch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Clone)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IEnumExtraSearch, ::windows::core::IUnknown);
impl ::core::clone::Clone for IEnumExtraSearch {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IEnumExtraSearch {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IEnumExtraSearch {}
impl ::core::fmt::Debug for IEnumExtraSearch {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IEnumExtraSearch").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IEnumExtraSearch {
type Vtable = IEnumExtraSearch_Vtbl;
}
unsafe impl ::windows::core::Interface for IEnumExtraSearch {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0e700be1_9db6_11d1_a1ce_00c04fd75d13);
}
#[repr(C)]
#[doc(hidden)]
pub struct IEnumExtraSearch_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Next: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32, rgelt: *mut EXTRASEARCH, pceltfetched: *mut u32) -> ::windows::core::HRESULT,
pub Skip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32) -> ::windows::core::HRESULT,
pub Reset: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Clone: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IEnumFullIDList(::windows::core::IUnknown);
impl IEnumFullIDList {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn Next(&self, rgelt: &mut [*mut Common::ITEMIDLIST], pceltfetched: ::core::option::Option<*mut u32>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Next)(::windows::core::Vtable::as_raw(self), rgelt.len() as _, ::core::mem::transmute(rgelt.as_ptr()), ::core::mem::transmute(pceltfetched.unwrap_or(::std::ptr::null_mut()))).ok()
}
pub unsafe fn Skip(&self, celt: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Skip)(::windows::core::Vtable::as_raw(self), celt).ok()
}
pub unsafe fn Reset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Reset)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Clone(&self) -> ::windows::core::Result<IEnumFullIDList> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Clone)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IEnumFullIDList, ::windows::core::IUnknown);
impl ::core::clone::Clone for IEnumFullIDList {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IEnumFullIDList {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IEnumFullIDList {}
impl ::core::fmt::Debug for IEnumFullIDList {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IEnumFullIDList").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IEnumFullIDList {
type Vtable = IEnumFullIDList_Vtbl;
}
unsafe impl ::windows::core::Interface for IEnumFullIDList {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd0191542_7954_4908_bc06_b2360bbe45ba);
}
#[repr(C)]
#[doc(hidden)]
pub struct IEnumFullIDList_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub Next: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32, rgelt: *mut *mut Common::ITEMIDLIST, pceltfetched: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
Next: usize,
pub Skip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32) -> ::windows::core::HRESULT,
pub Reset: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Clone: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IEnumHLITEM(::windows::core::IUnknown);
impl IEnumHLITEM {
pub unsafe fn Next(&self, celt: u32, rgelt: *mut HLITEM, pceltfetched: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Next)(::windows::core::Vtable::as_raw(self), celt, rgelt, pceltfetched).ok()
}
pub unsafe fn Skip(&self, celt: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Skip)(::windows::core::Vtable::as_raw(self), celt).ok()
}
pub unsafe fn Reset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Reset)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Clone(&self) -> ::windows::core::Result<IEnumHLITEM> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Clone)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IEnumHLITEM, ::windows::core::IUnknown);
impl ::core::clone::Clone for IEnumHLITEM {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IEnumHLITEM {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IEnumHLITEM {}
impl ::core::fmt::Debug for IEnumHLITEM {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IEnumHLITEM").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IEnumHLITEM {
type Vtable = IEnumHLITEM_Vtbl;
}
unsafe impl ::windows::core::Interface for IEnumHLITEM {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x79eac9c6_baf9_11ce_8c82_00aa004ba90b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IEnumHLITEM_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Next: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32, rgelt: *mut HLITEM, pceltfetched: *mut u32) -> ::windows::core::HRESULT,
pub Skip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32) -> ::windows::core::HRESULT,
pub Reset: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Clone: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppienumhlitem: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IEnumIDList(::windows::core::IUnknown);
impl IEnumIDList {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn Next(&self, rgelt: &mut [*mut Common::ITEMIDLIST], pceltfetched: ::core::option::Option<*mut u32>) -> ::windows::core::HRESULT {
(::windows::core::Vtable::vtable(self).Next)(::windows::core::Vtable::as_raw(self), rgelt.len() as _, ::core::mem::transmute(rgelt.as_ptr()), ::core::mem::transmute(pceltfetched.unwrap_or(::std::ptr::null_mut())))
}
pub unsafe fn Skip(&self, celt: u32) -> ::windows::core::HRESULT {
(::windows::core::Vtable::vtable(self).Skip)(::windows::core::Vtable::as_raw(self), celt)
}
pub unsafe fn Reset(&self) -> ::windows::core::HRESULT {
(::windows::core::Vtable::vtable(self).Reset)(::windows::core::Vtable::as_raw(self))
}
pub unsafe fn Clone(&self, ppenum: *mut ::core::option::Option<IEnumIDList>) -> ::windows::core::HRESULT {
(::windows::core::Vtable::vtable(self).Clone)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(ppenum))
}
}
::windows::core::interface_hierarchy!(IEnumIDList, ::windows::core::IUnknown);
impl ::core::clone::Clone for IEnumIDList {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IEnumIDList {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IEnumIDList {}
impl ::core::fmt::Debug for IEnumIDList {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IEnumIDList").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IEnumIDList {
type Vtable = IEnumIDList_Vtbl;
}
unsafe impl ::windows::core::Interface for IEnumIDList {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214f2_0000_0000_c000_000000000046);
}
#[repr(C)]
#[doc(hidden)]
pub struct IEnumIDList_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub Next: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32, rgelt: *mut *mut Common::ITEMIDLIST, pceltfetched: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
Next: usize,
pub Skip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32) -> ::windows::core::HRESULT,
pub Reset: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Clone: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IEnumObjects(::windows::core::IUnknown);
impl IEnumObjects {
pub unsafe fn Next(&self, riid: *const ::windows::core::GUID, rgelt: &mut [*mut ::core::ffi::c_void], pceltfetched: ::core::option::Option<*mut u32>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Next)(::windows::core::Vtable::as_raw(self), rgelt.len() as _, riid, ::core::mem::transmute(rgelt.as_ptr()), ::core::mem::transmute(pceltfetched.unwrap_or(::std::ptr::null_mut()))).ok()
}
pub unsafe fn Skip(&self, celt: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Skip)(::windows::core::Vtable::as_raw(self), celt).ok()
}
pub unsafe fn Reset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Reset)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Clone(&self) -> ::windows::core::Result<IEnumObjects> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Clone)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IEnumObjects, ::windows::core::IUnknown);
impl ::core::clone::Clone for IEnumObjects {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IEnumObjects {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IEnumObjects {}
impl ::core::fmt::Debug for IEnumObjects {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IEnumObjects").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IEnumObjects {
type Vtable = IEnumObjects_Vtbl;
}
unsafe impl ::windows::core::Interface for IEnumObjects {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2c1c7e2e_2d0e_4059_831e_1e6f82335c2e);
}
#[repr(C)]
#[doc(hidden)]
pub struct IEnumObjects_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Next: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32, riid: *const ::windows::core::GUID, rgelt: *mut *mut ::core::ffi::c_void, pceltfetched: *mut u32) -> ::windows::core::HRESULT,
pub Skip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32) -> ::windows::core::HRESULT,
pub Reset: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Clone: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IEnumPublishedApps(::windows::core::IUnknown);
impl IEnumPublishedApps {
pub unsafe fn Next(&self) -> ::windows::core::Result<IPublishedApp> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Next)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Reset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Reset)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IEnumPublishedApps, ::windows::core::IUnknown);
impl ::core::clone::Clone for IEnumPublishedApps {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IEnumPublishedApps {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IEnumPublishedApps {}
impl ::core::fmt::Debug for IEnumPublishedApps {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IEnumPublishedApps").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IEnumPublishedApps {
type Vtable = IEnumPublishedApps_Vtbl;
}
unsafe impl ::windows::core::Interface for IEnumPublishedApps {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0b124f8c_91f0_11d1_b8b5_006008059382);
}
#[repr(C)]
#[doc(hidden)]
pub struct IEnumPublishedApps_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Next: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pia: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Reset: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IEnumReadyCallback(::windows::core::IUnknown);
impl IEnumReadyCallback {
pub unsafe fn EnumReady(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).EnumReady)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IEnumReadyCallback, ::windows::core::IUnknown);
impl ::core::clone::Clone for IEnumReadyCallback {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IEnumReadyCallback {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IEnumReadyCallback {}
impl ::core::fmt::Debug for IEnumReadyCallback {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IEnumReadyCallback").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IEnumReadyCallback {
type Vtable = IEnumReadyCallback_Vtbl;
}
unsafe impl ::windows::core::Interface for IEnumReadyCallback {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x61e00d45_8fff_4e60_924e_6537b61612dd);
}
#[repr(C)]
#[doc(hidden)]
pub struct IEnumReadyCallback_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub EnumReady: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IEnumResources(::windows::core::IUnknown);
impl IEnumResources {
pub unsafe fn Next(&self, psir: &mut [SHELL_ITEM_RESOURCE], pceltfetched: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Next)(::windows::core::Vtable::as_raw(self), psir.len() as _, ::core::mem::transmute(psir.as_ptr()), pceltfetched).ok()
}
pub unsafe fn Skip(&self, celt: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Skip)(::windows::core::Vtable::as_raw(self), celt).ok()
}
pub unsafe fn Reset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Reset)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Clone(&self) -> ::windows::core::Result<IEnumResources> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Clone)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IEnumResources, ::windows::core::IUnknown);
impl ::core::clone::Clone for IEnumResources {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IEnumResources {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IEnumResources {}
impl ::core::fmt::Debug for IEnumResources {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IEnumResources").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IEnumResources {
type Vtable = IEnumResources_Vtbl;
}
unsafe impl ::windows::core::Interface for IEnumResources {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2dd81fe3_a83c_4da9_a330_47249d345ba1);
}
#[repr(C)]
#[doc(hidden)]
pub struct IEnumResources_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Next: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32, psir: *mut SHELL_ITEM_RESOURCE, pceltfetched: *mut u32) -> ::windows::core::HRESULT,
pub Skip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32) -> ::windows::core::HRESULT,
pub Reset: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Clone: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenumr: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IEnumShellItems(::windows::core::IUnknown);
impl IEnumShellItems {
pub unsafe fn Next(&self, rgelt: &mut [::core::option::Option<IShellItem>], pceltfetched: ::core::option::Option<*mut u32>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Next)(::windows::core::Vtable::as_raw(self), rgelt.len() as _, ::core::mem::transmute(rgelt.as_ptr()), ::core::mem::transmute(pceltfetched.unwrap_or(::std::ptr::null_mut()))).ok()
}
pub unsafe fn Skip(&self, celt: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Skip)(::windows::core::Vtable::as_raw(self), celt).ok()
}
pub unsafe fn Reset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Reset)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Clone(&self) -> ::windows::core::Result<IEnumShellItems> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Clone)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IEnumShellItems, ::windows::core::IUnknown);
impl ::core::clone::Clone for IEnumShellItems {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IEnumShellItems {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IEnumShellItems {}
impl ::core::fmt::Debug for IEnumShellItems {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IEnumShellItems").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IEnumShellItems {
type Vtable = IEnumShellItems_Vtbl;
}
unsafe impl ::windows::core::Interface for IEnumShellItems {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x70629033_e363_4a28_a567_0db78006e6d7);
}
#[repr(C)]
#[doc(hidden)]
pub struct IEnumShellItems_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Next: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32, rgelt: *mut *mut ::core::ffi::c_void, pceltfetched: *mut u32) -> ::windows::core::HRESULT,
pub Skip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32) -> ::windows::core::HRESULT,
pub Reset: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Clone: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IEnumSyncMgrConflict(::windows::core::IUnknown);
impl IEnumSyncMgrConflict {
pub unsafe fn Next(&self, rgelt: &mut [::core::option::Option<ISyncMgrConflict>], pceltfetched: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Next)(::windows::core::Vtable::as_raw(self), rgelt.len() as _, ::core::mem::transmute(rgelt.as_ptr()), pceltfetched).ok()
}
pub unsafe fn Skip(&self, celt: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Skip)(::windows::core::Vtable::as_raw(self), celt).ok()
}
pub unsafe fn Reset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Reset)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Clone(&self) -> ::windows::core::Result<IEnumSyncMgrConflict> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Clone)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IEnumSyncMgrConflict, ::windows::core::IUnknown);
impl ::core::clone::Clone for IEnumSyncMgrConflict {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IEnumSyncMgrConflict {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IEnumSyncMgrConflict {}
impl ::core::fmt::Debug for IEnumSyncMgrConflict {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IEnumSyncMgrConflict").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IEnumSyncMgrConflict {
type Vtable = IEnumSyncMgrConflict_Vtbl;
}
unsafe impl ::windows::core::Interface for IEnumSyncMgrConflict {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x82705914_dda3_4893_ba99_49de6c8c8036);
}
#[repr(C)]
#[doc(hidden)]
pub struct IEnumSyncMgrConflict_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Next: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32, rgelt: *mut *mut ::core::ffi::c_void, pceltfetched: *mut u32) -> ::windows::core::HRESULT,
pub Skip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32) -> ::windows::core::HRESULT,
pub Reset: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Clone: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IEnumSyncMgrEvents(::windows::core::IUnknown);
impl IEnumSyncMgrEvents {
pub unsafe fn Next(&self, rgelt: &mut [::core::option::Option<ISyncMgrEvent>], pceltfetched: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Next)(::windows::core::Vtable::as_raw(self), rgelt.len() as _, ::core::mem::transmute(rgelt.as_ptr()), pceltfetched).ok()
}
pub unsafe fn Skip(&self, celt: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Skip)(::windows::core::Vtable::as_raw(self), celt).ok()
}
pub unsafe fn Reset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Reset)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Clone(&self) -> ::windows::core::Result<IEnumSyncMgrEvents> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Clone)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IEnumSyncMgrEvents, ::windows::core::IUnknown);
impl ::core::clone::Clone for IEnumSyncMgrEvents {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IEnumSyncMgrEvents {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IEnumSyncMgrEvents {}
impl ::core::fmt::Debug for IEnumSyncMgrEvents {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IEnumSyncMgrEvents").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IEnumSyncMgrEvents {
type Vtable = IEnumSyncMgrEvents_Vtbl;
}
unsafe impl ::windows::core::Interface for IEnumSyncMgrEvents {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc81a1d4e_8cf7_4683_80e0_bcae88d677b6);
}
#[repr(C)]
#[doc(hidden)]
pub struct IEnumSyncMgrEvents_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Next: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32, rgelt: *mut *mut ::core::ffi::c_void, pceltfetched: *mut u32) -> ::windows::core::HRESULT,
pub Skip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32) -> ::windows::core::HRESULT,
pub Reset: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Clone: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IEnumSyncMgrSyncItems(::windows::core::IUnknown);
impl IEnumSyncMgrSyncItems {
pub unsafe fn Next(&self, rgelt: &mut [::core::option::Option<ISyncMgrSyncItem>], pceltfetched: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Next)(::windows::core::Vtable::as_raw(self), rgelt.len() as _, ::core::mem::transmute(rgelt.as_ptr()), pceltfetched).ok()
}
pub unsafe fn Skip(&self, celt: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Skip)(::windows::core::Vtable::as_raw(self), celt).ok()
}
pub unsafe fn Reset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Reset)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Clone(&self) -> ::windows::core::Result<IEnumSyncMgrSyncItems> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Clone)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IEnumSyncMgrSyncItems, ::windows::core::IUnknown);
impl ::core::clone::Clone for IEnumSyncMgrSyncItems {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IEnumSyncMgrSyncItems {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IEnumSyncMgrSyncItems {}
impl ::core::fmt::Debug for IEnumSyncMgrSyncItems {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IEnumSyncMgrSyncItems").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IEnumSyncMgrSyncItems {
type Vtable = IEnumSyncMgrSyncItems_Vtbl;
}
unsafe impl ::windows::core::Interface for IEnumSyncMgrSyncItems {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x54b3abf3_f085_4181_b546_e29c403c726b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IEnumSyncMgrSyncItems_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Next: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32, rgelt: *mut *mut ::core::ffi::c_void, pceltfetched: *mut u32) -> ::windows::core::HRESULT,
pub Skip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32) -> ::windows::core::HRESULT,
pub Reset: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Clone: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IEnumTravelLogEntry(::windows::core::IUnknown);
impl IEnumTravelLogEntry {
pub unsafe fn Next(&self, celt: u32, rgelt: *mut ::core::option::Option<ITravelLogEntry>, pceltfetched: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Next)(::windows::core::Vtable::as_raw(self), celt, ::core::mem::transmute(rgelt), pceltfetched).ok()
}
pub unsafe fn Skip(&self, celt: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Skip)(::windows::core::Vtable::as_raw(self), celt).ok()
}
pub unsafe fn Reset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Reset)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Clone(&self) -> ::windows::core::Result<IEnumTravelLogEntry> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Clone)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IEnumTravelLogEntry, ::windows::core::IUnknown);
impl ::core::clone::Clone for IEnumTravelLogEntry {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IEnumTravelLogEntry {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IEnumTravelLogEntry {}
impl ::core::fmt::Debug for IEnumTravelLogEntry {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IEnumTravelLogEntry").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IEnumTravelLogEntry {
type Vtable = IEnumTravelLogEntry_Vtbl;
}
unsafe impl ::windows::core::Interface for IEnumTravelLogEntry {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7ebfdd85_ad18_11d3_a4c5_00c04f72d6b8);
}
#[repr(C)]
#[doc(hidden)]
pub struct IEnumTravelLogEntry_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Next: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32, rgelt: *mut *mut ::core::ffi::c_void, pceltfetched: *mut u32) -> ::windows::core::HRESULT,
pub Skip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32) -> ::windows::core::HRESULT,
pub Reset: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Clone: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IEnumerableView(::windows::core::IUnknown);
impl IEnumerableView {
pub unsafe fn SetEnumReadyCallback<P0>(&self, percb: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IEnumReadyCallback>>,
{
(::windows::core::Vtable::vtable(self).SetEnumReadyCallback)(::windows::core::Vtable::as_raw(self), percb.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn CreateEnumIDListFromContents(&self, pidlfolder: *const Common::ITEMIDLIST, dwenumflags: u32) -> ::windows::core::Result<IEnumIDList> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CreateEnumIDListFromContents)(::windows::core::Vtable::as_raw(self), pidlfolder, dwenumflags, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IEnumerableView, ::windows::core::IUnknown);
impl ::core::clone::Clone for IEnumerableView {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IEnumerableView {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IEnumerableView {}
impl ::core::fmt::Debug for IEnumerableView {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IEnumerableView").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IEnumerableView {
type Vtable = IEnumerableView_Vtbl;
}
unsafe impl ::windows::core::Interface for IEnumerableView {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8c8bf236_1aec_495f_9894_91d57c3c686f);
}
#[repr(C)]
#[doc(hidden)]
pub struct IEnumerableView_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetEnumReadyCallback: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, percb: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub CreateEnumIDListFromContents: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidlfolder: *const Common::ITEMIDLIST, dwenumflags: u32, ppenumidlist: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
CreateEnumIDListFromContents: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IExecuteCommand(::windows::core::IUnknown);
impl IExecuteCommand {
pub unsafe fn SetKeyState(&self, grfkeystate: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetKeyState)(::windows::core::Vtable::as_raw(self), grfkeystate).ok()
}
pub unsafe fn SetParameters<P0>(&self, pszparameters: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetParameters)(::windows::core::Vtable::as_raw(self), pszparameters.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetPosition(&self, pt: super::super::Foundation::POINT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetPosition)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pt)).ok()
}
pub unsafe fn SetShowWindow(&self, nshow: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetShowWindow)(::windows::core::Vtable::as_raw(self), nshow).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetNoShowUI<P0>(&self, fnoshowui: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetNoShowUI)(::windows::core::Vtable::as_raw(self), fnoshowui.into()).ok()
}
pub unsafe fn SetDirectory<P0>(&self, pszdirectory: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetDirectory)(::windows::core::Vtable::as_raw(self), pszdirectory.into().abi()).ok()
}
pub unsafe fn Execute(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Execute)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IExecuteCommand, ::windows::core::IUnknown);
impl ::core::clone::Clone for IExecuteCommand {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IExecuteCommand {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IExecuteCommand {}
impl ::core::fmt::Debug for IExecuteCommand {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IExecuteCommand").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IExecuteCommand {
type Vtable = IExecuteCommand_Vtbl;
}
unsafe impl ::windows::core::Interface for IExecuteCommand {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7f9185b0_cb92_43c5_80a9_92277a4f7b54);
}
#[repr(C)]
#[doc(hidden)]
pub struct IExecuteCommand_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetKeyState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, grfkeystate: u32) -> ::windows::core::HRESULT,
pub SetParameters: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszparameters: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub SetPosition: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pt: super::super::Foundation::POINT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetPosition: usize,
pub SetShowWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, nshow: i32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub SetNoShowUI: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fnoshowui: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetNoShowUI: usize,
pub SetDirectory: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszdirectory: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub Execute: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IExecuteCommandApplicationHostEnvironment(::windows::core::IUnknown);
impl IExecuteCommandApplicationHostEnvironment {
pub unsafe fn GetValue(&self) -> ::windows::core::Result<AHE_TYPE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetValue)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IExecuteCommandApplicationHostEnvironment, ::windows::core::IUnknown);
impl ::core::clone::Clone for IExecuteCommandApplicationHostEnvironment {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IExecuteCommandApplicationHostEnvironment {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IExecuteCommandApplicationHostEnvironment {}
impl ::core::fmt::Debug for IExecuteCommandApplicationHostEnvironment {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IExecuteCommandApplicationHostEnvironment").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IExecuteCommandApplicationHostEnvironment {
type Vtable = IExecuteCommandApplicationHostEnvironment_Vtbl;
}
unsafe impl ::windows::core::Interface for IExecuteCommandApplicationHostEnvironment {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x18b21aa9_e184_4ff0_9f5e_f882d03771b3);
}
#[repr(C)]
#[doc(hidden)]
pub struct IExecuteCommandApplicationHostEnvironment_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pahe: *mut AHE_TYPE) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IExecuteCommandHost(::windows::core::IUnknown);
impl IExecuteCommandHost {
pub unsafe fn GetUIMode(&self) -> ::windows::core::Result<EC_HOST_UI_MODE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetUIMode)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IExecuteCommandHost, ::windows::core::IUnknown);
impl ::core::clone::Clone for IExecuteCommandHost {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IExecuteCommandHost {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IExecuteCommandHost {}
impl ::core::fmt::Debug for IExecuteCommandHost {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IExecuteCommandHost").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IExecuteCommandHost {
type Vtable = IExecuteCommandHost_Vtbl;
}
unsafe impl ::windows::core::Interface for IExecuteCommandHost {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4b6832a2_5f04_4c9d_b89d_727a15d103e7);
}
#[repr(C)]
#[doc(hidden)]
pub struct IExecuteCommandHost_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetUIMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, puimode: *mut EC_HOST_UI_MODE) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IExpDispSupport(::windows::core::IUnknown);
impl IExpDispSupport {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn FindConnectionPoint(&self, riid: *const ::windows::core::GUID) -> ::windows::core::Result<super::super::System::Com::IConnectionPoint> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).FindConnectionPoint)(::windows::core::Vtable::as_raw(self), riid, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn OnTranslateAccelerator(&self, pmsg: *const super::WindowsAndMessaging::MSG, grfmodifiers: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OnTranslateAccelerator)(::windows::core::Vtable::as_raw(self), pmsg, grfmodifiers).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn OnInvoke(&self, dispidmember: i32, iid: *const ::windows::core::GUID, lcid: u32, wflags: u16, pdispparams: *const super::super::System::Com::DISPPARAMS, pvarresult: *mut super::super::System::Com::VARIANT, pexcepinfo: *mut super::super::System::Com::EXCEPINFO, puargerr: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OnInvoke)(::windows::core::Vtable::as_raw(self), dispidmember, iid, lcid, wflags, pdispparams, pvarresult, pexcepinfo, puargerr).ok()
}
}
::windows::core::interface_hierarchy!(IExpDispSupport, ::windows::core::IUnknown);
impl ::core::clone::Clone for IExpDispSupport {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IExpDispSupport {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IExpDispSupport {}
impl ::core::fmt::Debug for IExpDispSupport {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IExpDispSupport").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IExpDispSupport {
type Vtable = IExpDispSupport_Vtbl;
}
unsafe impl ::windows::core::Interface for IExpDispSupport {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0d7d1d00_6fc0_11d0_a974_00c04fd705a2);
}
#[repr(C)]
#[doc(hidden)]
pub struct IExpDispSupport_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub FindConnectionPoint: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppccp: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
FindConnectionPoint: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub OnTranslateAccelerator: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pmsg: *const super::WindowsAndMessaging::MSG, grfmodifiers: u32) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
OnTranslateAccelerator: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub OnInvoke: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dispidmember: i32, iid: *const ::windows::core::GUID, lcid: u32, wflags: u16, pdispparams: *const super::super::System::Com::DISPPARAMS, pvarresult: *mut super::super::System::Com::VARIANT, pexcepinfo: *mut super::super::System::Com::EXCEPINFO, puargerr: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
OnInvoke: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IExpDispSupportXP(::windows::core::IUnknown);
impl IExpDispSupportXP {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn FindCIE4ConnectionPoint(&self, riid: *const ::windows::core::GUID) -> ::windows::core::Result<CIE4ConnectionPoint> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).FindCIE4ConnectionPoint)(::windows::core::Vtable::as_raw(self), riid, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn OnTranslateAccelerator(&self, pmsg: *const super::WindowsAndMessaging::MSG, grfmodifiers: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OnTranslateAccelerator)(::windows::core::Vtable::as_raw(self), pmsg, grfmodifiers).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn OnInvoke(&self, dispidmember: i32, iid: *const ::windows::core::GUID, lcid: u32, wflags: u16, pdispparams: *const super::super::System::Com::DISPPARAMS, pvarresult: *mut super::super::System::Com::VARIANT, pexcepinfo: *mut super::super::System::Com::EXCEPINFO, puargerr: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OnInvoke)(::windows::core::Vtable::as_raw(self), dispidmember, iid, lcid, wflags, pdispparams, pvarresult, pexcepinfo, puargerr).ok()
}
}
::windows::core::interface_hierarchy!(IExpDispSupportXP, ::windows::core::IUnknown);
impl ::core::clone::Clone for IExpDispSupportXP {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IExpDispSupportXP {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IExpDispSupportXP {}
impl ::core::fmt::Debug for IExpDispSupportXP {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IExpDispSupportXP").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IExpDispSupportXP {
type Vtable = IExpDispSupportXP_Vtbl;
}
unsafe impl ::windows::core::Interface for IExpDispSupportXP {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2f0dd58c_f789_4f14_99fb_9293b3c9c212);
}
#[repr(C)]
#[doc(hidden)]
pub struct IExpDispSupportXP_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub FindCIE4ConnectionPoint: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppccp: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
FindCIE4ConnectionPoint: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub OnTranslateAccelerator: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pmsg: *const super::WindowsAndMessaging::MSG, grfmodifiers: u32) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
OnTranslateAccelerator: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub OnInvoke: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dispidmember: i32, iid: *const ::windows::core::GUID, lcid: u32, wflags: u16, pdispparams: *const super::super::System::Com::DISPPARAMS, pvarresult: *mut super::super::System::Com::VARIANT, pexcepinfo: *mut super::super::System::Com::EXCEPINFO, puargerr: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
OnInvoke: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IExplorerBrowser(::windows::core::IUnknown);
impl IExplorerBrowser {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Initialize<P0>(&self, hwndparent: P0, prc: *const super::super::Foundation::RECT, pfs: ::core::option::Option<*const FOLDERSETTINGS>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self), hwndparent.into(), prc, ::core::mem::transmute(pfs.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn Destroy(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Destroy)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn SetRect(&self, phdwp: ::core::option::Option<*mut super::WindowsAndMessaging::HDWP>, rcbrowser: super::super::Foundation::RECT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetRect)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(phdwp.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(rcbrowser)).ok()
}
pub unsafe fn SetPropertyBag<P0>(&self, pszpropertybag: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetPropertyBag)(::windows::core::Vtable::as_raw(self), pszpropertybag.into().abi()).ok()
}
pub unsafe fn SetEmptyText<P0>(&self, pszemptytext: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetEmptyText)(::windows::core::Vtable::as_raw(self), pszemptytext.into().abi()).ok()
}
pub unsafe fn SetFolderSettings(&self, pfs: *const FOLDERSETTINGS) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetFolderSettings)(::windows::core::Vtable::as_raw(self), pfs).ok()
}
pub unsafe fn Advise<P0>(&self, psbe: P0) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<IExplorerBrowserEvents>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Advise)(::windows::core::Vtable::as_raw(self), psbe.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Unadvise(&self, dwcookie: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Unadvise)(::windows::core::Vtable::as_raw(self), dwcookie).ok()
}
pub unsafe fn SetOptions(&self, dwflag: EXPLORER_BROWSER_OPTIONS) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetOptions)(::windows::core::Vtable::as_raw(self), dwflag).ok()
}
pub unsafe fn GetOptions(&self) -> ::windows::core::Result<EXPLORER_BROWSER_OPTIONS> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetOptions)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn BrowseToIDList(&self, pidl: *const Common::ITEMIDLIST, uflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).BrowseToIDList)(::windows::core::Vtable::as_raw(self), pidl, uflags).ok()
}
pub unsafe fn BrowseToObject<P0>(&self, punk: P0, uflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).BrowseToObject)(::windows::core::Vtable::as_raw(self), punk.into().abi(), uflags).ok()
}
pub unsafe fn FillFromObject<P0>(&self, punk: P0, dwflags: EXPLORER_BROWSER_FILL_FLAGS) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).FillFromObject)(::windows::core::Vtable::as_raw(self), punk.into().abi(), dwflags).ok()
}
pub unsafe fn RemoveAll(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RemoveAll)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GetCurrentView<T>(&self) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCurrentView)(::windows::core::Vtable::as_raw(self), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IExplorerBrowser, ::windows::core::IUnknown);
impl ::core::clone::Clone for IExplorerBrowser {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IExplorerBrowser {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IExplorerBrowser {}
impl ::core::fmt::Debug for IExplorerBrowser {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IExplorerBrowser").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IExplorerBrowser {
type Vtable = IExplorerBrowser_Vtbl;
}
unsafe impl ::windows::core::Interface for IExplorerBrowser {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdfd3b6b5_c10c_4be9_85f6_a66969f402f6);
}
#[repr(C)]
#[doc(hidden)]
pub struct IExplorerBrowser_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndparent: super::super::Foundation::HWND, prc: *const super::super::Foundation::RECT, pfs: *const FOLDERSETTINGS) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Initialize: usize,
pub Destroy: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub SetRect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phdwp: *mut super::WindowsAndMessaging::HDWP, rcbrowser: super::super::Foundation::RECT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
SetRect: usize,
pub SetPropertyBag: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszpropertybag: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub SetEmptyText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszemptytext: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub SetFolderSettings: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfs: *const FOLDERSETTINGS) -> ::windows::core::HRESULT,
pub Advise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psbe: *mut ::core::ffi::c_void, pdwcookie: *mut u32) -> ::windows::core::HRESULT,
pub Unadvise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwcookie: u32) -> ::windows::core::HRESULT,
pub SetOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflag: EXPLORER_BROWSER_OPTIONS) -> ::windows::core::HRESULT,
pub GetOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwflag: *mut EXPLORER_BROWSER_OPTIONS) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub BrowseToIDList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, uflags: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
BrowseToIDList: usize,
pub BrowseToObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void, uflags: u32) -> ::windows::core::HRESULT,
pub FillFromObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void, dwflags: EXPLORER_BROWSER_FILL_FLAGS) -> ::windows::core::HRESULT,
pub RemoveAll: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetCurrentView: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IExplorerBrowserEvents(::windows::core::IUnknown);
impl IExplorerBrowserEvents {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn OnNavigationPending(&self, pidlfolder: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OnNavigationPending)(::windows::core::Vtable::as_raw(self), pidlfolder).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn OnViewCreated<P0>(&self, psv: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).OnViewCreated)(::windows::core::Vtable::as_raw(self), psv.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn OnNavigationComplete(&self, pidlfolder: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OnNavigationComplete)(::windows::core::Vtable::as_raw(self), pidlfolder).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn OnNavigationFailed(&self, pidlfolder: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OnNavigationFailed)(::windows::core::Vtable::as_raw(self), pidlfolder).ok()
}
}
::windows::core::interface_hierarchy!(IExplorerBrowserEvents, ::windows::core::IUnknown);
impl ::core::clone::Clone for IExplorerBrowserEvents {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IExplorerBrowserEvents {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IExplorerBrowserEvents {}
impl ::core::fmt::Debug for IExplorerBrowserEvents {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IExplorerBrowserEvents").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IExplorerBrowserEvents {
type Vtable = IExplorerBrowserEvents_Vtbl;
}
unsafe impl ::windows::core::Interface for IExplorerBrowserEvents {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x361bbdc7_e6ee_4e13_be58_58e2240c810f);
}
#[repr(C)]
#[doc(hidden)]
pub struct IExplorerBrowserEvents_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub OnNavigationPending: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidlfolder: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
OnNavigationPending: usize,
#[cfg(feature = "Win32_System_Ole")]
pub OnViewCreated: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psv: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Ole"))]
OnViewCreated: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub OnNavigationComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidlfolder: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
OnNavigationComplete: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub OnNavigationFailed: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidlfolder: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
OnNavigationFailed: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IExplorerCommand(::windows::core::IUnknown);
impl IExplorerCommand {
pub unsafe fn GetTitle<P0>(&self, psiitemarray: P0) -> ::windows::core::Result<::windows::core::PWSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItemArray>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetTitle)(::windows::core::Vtable::as_raw(self), psiitemarray.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetIcon<P0>(&self, psiitemarray: P0) -> ::windows::core::Result<::windows::core::PWSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItemArray>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetIcon)(::windows::core::Vtable::as_raw(self), psiitemarray.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetToolTip<P0>(&self, psiitemarray: P0) -> ::windows::core::Result<::windows::core::PWSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItemArray>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetToolTip)(::windows::core::Vtable::as_raw(self), psiitemarray.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetCanonicalName(&self) -> ::windows::core::Result<::windows::core::GUID> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCanonicalName)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetState<P0, P1>(&self, psiitemarray: P0, foktobeslow: P1) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItemArray>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetState)(::windows::core::Vtable::as_raw(self), psiitemarray.into().abi(), foktobeslow.into(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Invoke<P0, P1>(&self, psiitemarray: P0, pbc: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItemArray>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
{
(::windows::core::Vtable::vtable(self).Invoke)(::windows::core::Vtable::as_raw(self), psiitemarray.into().abi(), pbc.into().abi()).ok()
}
pub unsafe fn GetFlags(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFlags)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn EnumSubCommands(&self) -> ::windows::core::Result<IEnumExplorerCommand> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).EnumSubCommands)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IExplorerCommand, ::windows::core::IUnknown);
impl ::core::clone::Clone for IExplorerCommand {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IExplorerCommand {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IExplorerCommand {}
impl ::core::fmt::Debug for IExplorerCommand {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IExplorerCommand").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IExplorerCommand {
type Vtable = IExplorerCommand_Vtbl;
}
unsafe impl ::windows::core::Interface for IExplorerCommand {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa08ce4d0_fa25_44ab_b57c_c7b1c323e0b9);
}
#[repr(C)]
#[doc(hidden)]
pub struct IExplorerCommand_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetTitle: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiitemarray: *mut ::core::ffi::c_void, ppszname: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetIcon: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiitemarray: *mut ::core::ffi::c_void, ppszicon: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetToolTip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiitemarray: *mut ::core::ffi::c_void, ppszinfotip: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetCanonicalName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pguidcommandname: *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiitemarray: *mut ::core::ffi::c_void, foktobeslow: super::super::Foundation::BOOL, pcmdstate: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetState: usize,
#[cfg(feature = "Win32_System_Com")]
pub Invoke: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiitemarray: *mut ::core::ffi::c_void, pbc: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Invoke: usize,
pub GetFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pflags: *mut u32) -> ::windows::core::HRESULT,
pub EnumSubCommands: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IExplorerCommandProvider(::windows::core::IUnknown);
impl IExplorerCommandProvider {
pub unsafe fn GetCommands<P0, T>(&self, punksite: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCommands)(::windows::core::Vtable::as_raw(self), punksite.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetCommand<T>(&self, rguidcommandid: *const ::windows::core::GUID) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCommand)(::windows::core::Vtable::as_raw(self), rguidcommandid, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IExplorerCommandProvider, ::windows::core::IUnknown);
impl ::core::clone::Clone for IExplorerCommandProvider {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IExplorerCommandProvider {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IExplorerCommandProvider {}
impl ::core::fmt::Debug for IExplorerCommandProvider {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IExplorerCommandProvider").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IExplorerCommandProvider {
type Vtable = IExplorerCommandProvider_Vtbl;
}
unsafe impl ::windows::core::Interface for IExplorerCommandProvider {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x64961751_0835_43c0_8ffe_d57686530e64);
}
#[repr(C)]
#[doc(hidden)]
pub struct IExplorerCommandProvider_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetCommands: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punksite: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetCommand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rguidcommandid: *const ::windows::core::GUID, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IExplorerCommandState(::windows::core::IUnknown);
impl IExplorerCommandState {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetState<P0, P1>(&self, psiitemarray: P0, foktobeslow: P1) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItemArray>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetState)(::windows::core::Vtable::as_raw(self), psiitemarray.into().abi(), foktobeslow.into(), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IExplorerCommandState, ::windows::core::IUnknown);
impl ::core::clone::Clone for IExplorerCommandState {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IExplorerCommandState {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IExplorerCommandState {}
impl ::core::fmt::Debug for IExplorerCommandState {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IExplorerCommandState").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IExplorerCommandState {
type Vtable = IExplorerCommandState_Vtbl;
}
unsafe impl ::windows::core::Interface for IExplorerCommandState {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbddacb60_7657_47ae_8445_d23e1acf82ae);
}
#[repr(C)]
#[doc(hidden)]
pub struct IExplorerCommandState_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub GetState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiitemarray: *mut ::core::ffi::c_void, foktobeslow: super::super::Foundation::BOOL, pcmdstate: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetState: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IExplorerPaneVisibility(::windows::core::IUnknown);
impl IExplorerPaneVisibility {
pub unsafe fn GetPaneState(&self, ep: *const ::windows::core::GUID) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPaneState)(::windows::core::Vtable::as_raw(self), ep, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IExplorerPaneVisibility, ::windows::core::IUnknown);
impl ::core::clone::Clone for IExplorerPaneVisibility {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IExplorerPaneVisibility {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IExplorerPaneVisibility {}
impl ::core::fmt::Debug for IExplorerPaneVisibility {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IExplorerPaneVisibility").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IExplorerPaneVisibility {
type Vtable = IExplorerPaneVisibility_Vtbl;
}
unsafe impl ::windows::core::Interface for IExplorerPaneVisibility {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe07010ec_bc17_44c0_97b0_46c7c95b9edc);
}
#[repr(C)]
#[doc(hidden)]
pub struct IExplorerPaneVisibility_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetPaneState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ep: *const ::windows::core::GUID, peps: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IExtensionServices(::windows::core::IUnknown);
impl IExtensionServices {
pub unsafe fn SetAdditionalHeaders<P0>(&self, pwzadditionalheaders: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetAdditionalHeaders)(::windows::core::Vtable::as_raw(self), pwzadditionalheaders.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetAuthenticateData<P0, P1, P2>(&self, phwnd: P0, pwzusername: P1, pwzpassword: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetAuthenticateData)(::windows::core::Vtable::as_raw(self), phwnd.into(), pwzusername.into().abi(), pwzpassword.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IExtensionServices, ::windows::core::IUnknown);
impl ::core::clone::Clone for IExtensionServices {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IExtensionServices {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IExtensionServices {}
impl ::core::fmt::Debug for IExtensionServices {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IExtensionServices").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IExtensionServices {
type Vtable = IExtensionServices_Vtbl;
}
unsafe impl ::windows::core::Interface for IExtensionServices {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x79eac9cb_baf9_11ce_8c82_00aa004ba90b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IExtensionServices_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetAdditionalHeaders: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwzadditionalheaders: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub SetAuthenticateData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phwnd: super::super::Foundation::HWND, pwzusername: ::windows::core::PCWSTR, pwzpassword: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetAuthenticateData: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IExtractIconA(::windows::core::IUnknown);
impl IExtractIconA {
pub unsafe fn GetIconLocation(&self, uflags: u32, psziconfile: &mut [u8], piindex: *mut i32, pwflags: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetIconLocation)(::windows::core::Vtable::as_raw(self), uflags, ::core::mem::transmute(psziconfile.as_ptr()), psziconfile.len() as _, piindex, pwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub unsafe fn Extract<P0>(&self, pszfile: P0, niconindex: u32, phiconlarge: ::core::option::Option<*mut super::WindowsAndMessaging::HICON>, phiconsmall: ::core::option::Option<*mut super::WindowsAndMessaging::HICON>, niconsize: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
(::windows::core::Vtable::vtable(self).Extract)(::windows::core::Vtable::as_raw(self), pszfile.into().abi(), niconindex, ::core::mem::transmute(phiconlarge.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(phiconsmall.unwrap_or(::std::ptr::null_mut())), niconsize).ok()
}
}
::windows::core::interface_hierarchy!(IExtractIconA, ::windows::core::IUnknown);
impl ::core::clone::Clone for IExtractIconA {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IExtractIconA {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IExtractIconA {}
impl ::core::fmt::Debug for IExtractIconA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IExtractIconA").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IExtractIconA {
type Vtable = IExtractIconA_Vtbl;
}
unsafe impl ::windows::core::Interface for IExtractIconA {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214eb_0000_0000_c000_000000000046);
}
#[repr(C)]
#[doc(hidden)]
pub struct IExtractIconA_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetIconLocation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uflags: u32, psziconfile: ::windows::core::PSTR, cchmax: u32, piindex: *mut i32, pwflags: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub Extract: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszfile: ::windows::core::PCSTR, niconindex: u32, phiconlarge: *mut super::WindowsAndMessaging::HICON, phiconsmall: *mut super::WindowsAndMessaging::HICON, niconsize: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_WindowsAndMessaging"))]
Extract: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IExtractIconW(::windows::core::IUnknown);
impl IExtractIconW {
pub unsafe fn GetIconLocation(&self, uflags: u32, psziconfile: &mut [u16], piindex: *mut i32, pwflags: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetIconLocation)(::windows::core::Vtable::as_raw(self), uflags, ::core::mem::transmute(psziconfile.as_ptr()), psziconfile.len() as _, piindex, pwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub unsafe fn Extract<P0>(&self, pszfile: P0, niconindex: u32, phiconlarge: ::core::option::Option<*mut super::WindowsAndMessaging::HICON>, phiconsmall: ::core::option::Option<*mut super::WindowsAndMessaging::HICON>, niconsize: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).Extract)(::windows::core::Vtable::as_raw(self), pszfile.into().abi(), niconindex, ::core::mem::transmute(phiconlarge.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(phiconsmall.unwrap_or(::std::ptr::null_mut())), niconsize).ok()
}
}
::windows::core::interface_hierarchy!(IExtractIconW, ::windows::core::IUnknown);
impl ::core::clone::Clone for IExtractIconW {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IExtractIconW {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IExtractIconW {}
impl ::core::fmt::Debug for IExtractIconW {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IExtractIconW").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IExtractIconW {
type Vtable = IExtractIconW_Vtbl;
}
unsafe impl ::windows::core::Interface for IExtractIconW {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214fa_0000_0000_c000_000000000046);
}
#[repr(C)]
#[doc(hidden)]
pub struct IExtractIconW_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetIconLocation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uflags: u32, psziconfile: ::windows::core::PWSTR, cchmax: u32, piindex: *mut i32, pwflags: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub Extract: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszfile: ::windows::core::PCWSTR, niconindex: u32, phiconlarge: *mut super::WindowsAndMessaging::HICON, phiconsmall: *mut super::WindowsAndMessaging::HICON, niconsize: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_WindowsAndMessaging"))]
Extract: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IExtractImage(::windows::core::IUnknown);
impl IExtractImage {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetLocation(&self, pszpathbuffer: &mut [u16], pdwpriority: *mut u32, prgsize: *const super::super::Foundation::SIZE, dwrecclrdepth: u32, pdwflags: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetLocation)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszpathbuffer.as_ptr()), pszpathbuffer.len() as _, pdwpriority, prgsize, dwrecclrdepth, pdwflags).ok()
}
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn Extract(&self) -> ::windows::core::Result<super::super::Graphics::Gdi::HBITMAP> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Extract)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IExtractImage, ::windows::core::IUnknown);
impl ::core::clone::Clone for IExtractImage {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IExtractImage {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IExtractImage {}
impl ::core::fmt::Debug for IExtractImage {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IExtractImage").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IExtractImage {
type Vtable = IExtractImage_Vtbl;
}
unsafe impl ::windows::core::Interface for IExtractImage {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbb2e617c_0920_11d1_9a0b_00c04fc2d6c1);
}
#[repr(C)]
#[doc(hidden)]
pub struct IExtractImage_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub GetLocation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszpathbuffer: ::windows::core::PWSTR, cch: u32, pdwpriority: *mut u32, prgsize: *const super::super::Foundation::SIZE, dwrecclrdepth: u32, pdwflags: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetLocation: usize,
#[cfg(feature = "Win32_Graphics_Gdi")]
pub Extract: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phbmpthumbnail: *mut super::super::Graphics::Gdi::HBITMAP) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Gdi"))]
Extract: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IExtractImage2(::windows::core::IUnknown);
impl IExtractImage2 {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetLocation(&self, pszpathbuffer: &mut [u16], pdwpriority: *mut u32, prgsize: *const super::super::Foundation::SIZE, dwrecclrdepth: u32, pdwflags: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetLocation)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszpathbuffer.as_ptr()), pszpathbuffer.len() as _, pdwpriority, prgsize, dwrecclrdepth, pdwflags).ok()
}
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn Extract(&self) -> ::windows::core::Result<super::super::Graphics::Gdi::HBITMAP> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Extract)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetDateStamp(&self) -> ::windows::core::Result<super::super::Foundation::FILETIME> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetDateStamp)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IExtractImage2, ::windows::core::IUnknown, IExtractImage);
impl ::core::clone::Clone for IExtractImage2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IExtractImage2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IExtractImage2 {}
impl ::core::fmt::Debug for IExtractImage2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IExtractImage2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IExtractImage2 {
type Vtable = IExtractImage2_Vtbl;
}
unsafe impl ::windows::core::Interface for IExtractImage2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x953bb1ee_93b4_11d1_98a3_00c04fb687da);
}
#[repr(C)]
#[doc(hidden)]
pub struct IExtractImage2_Vtbl {
pub base__: IExtractImage_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub GetDateStamp: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdatestamp: *mut super::super::Foundation::FILETIME) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetDateStamp: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFileDialog(::windows::core::IUnknown);
impl IFileDialog {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Show<P0>(&self, hwndowner: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.Show)(::windows::core::Vtable::as_raw(self), hwndowner.into()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SetFileTypes(&self, rgfilterspec: &[Common::COMDLG_FILTERSPEC]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetFileTypes)(::windows::core::Vtable::as_raw(self), rgfilterspec.len() as _, ::core::mem::transmute(rgfilterspec.as_ptr())).ok()
}
pub unsafe fn SetFileTypeIndex(&self, ifiletype: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetFileTypeIndex)(::windows::core::Vtable::as_raw(self), ifiletype).ok()
}
pub unsafe fn GetFileTypeIndex(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFileTypeIndex)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Advise<P0>(&self, pfde: P0) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<IFileDialogEvents>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Advise)(::windows::core::Vtable::as_raw(self), pfde.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Unadvise(&self, dwcookie: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Unadvise)(::windows::core::Vtable::as_raw(self), dwcookie).ok()
}
pub unsafe fn SetOptions(&self, fos: FILEOPENDIALOGOPTIONS) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetOptions)(::windows::core::Vtable::as_raw(self), fos).ok()
}
pub unsafe fn GetOptions(&self) -> ::windows::core::Result<FILEOPENDIALOGOPTIONS> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetOptions)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetDefaultFolder<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).SetDefaultFolder)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
pub unsafe fn SetFolder<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).SetFolder)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
pub unsafe fn GetFolder(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFolder)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetCurrentSelection(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCurrentSelection)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetFileName<P0>(&self, pszname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetFileName)(::windows::core::Vtable::as_raw(self), pszname.into().abi()).ok()
}
pub unsafe fn GetFileName(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFileName)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetTitle<P0>(&self, psztitle: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetTitle)(::windows::core::Vtable::as_raw(self), psztitle.into().abi()).ok()
}
pub unsafe fn SetOkButtonLabel<P0>(&self, psztext: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetOkButtonLabel)(::windows::core::Vtable::as_raw(self), psztext.into().abi()).ok()
}
pub unsafe fn SetFileNameLabel<P0>(&self, pszlabel: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetFileNameLabel)(::windows::core::Vtable::as_raw(self), pszlabel.into().abi()).ok()
}
pub unsafe fn GetResult(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetResult)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn AddPlace<P0>(&self, psi: P0, fdap: FDAP) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).AddPlace)(::windows::core::Vtable::as_raw(self), psi.into().abi(), fdap).ok()
}
pub unsafe fn SetDefaultExtension<P0>(&self, pszdefaultextension: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetDefaultExtension)(::windows::core::Vtable::as_raw(self), pszdefaultextension.into().abi()).ok()
}
pub unsafe fn Close(&self, hr: ::windows::core::HRESULT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Close)(::windows::core::Vtable::as_raw(self), hr).ok()
}
pub unsafe fn SetClientGuid(&self, guid: *const ::windows::core::GUID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetClientGuid)(::windows::core::Vtable::as_raw(self), guid).ok()
}
pub unsafe fn ClearClientData(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ClearClientData)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetFilter<P0>(&self, pfilter: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItemFilter>>,
{
(::windows::core::Vtable::vtable(self).SetFilter)(::windows::core::Vtable::as_raw(self), pfilter.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IFileDialog, ::windows::core::IUnknown, IModalWindow);
impl ::core::clone::Clone for IFileDialog {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFileDialog {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFileDialog {}
impl ::core::fmt::Debug for IFileDialog {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFileDialog").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFileDialog {
type Vtable = IFileDialog_Vtbl;
}
unsafe impl ::windows::core::Interface for IFileDialog {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x42f85136_db7e_439c_85f1_e4075d135fc8);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFileDialog_Vtbl {
pub base__: IModalWindow_Vtbl,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub SetFileTypes: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cfiletypes: u32, rgfilterspec: *const Common::COMDLG_FILTERSPEC) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
SetFileTypes: usize,
pub SetFileTypeIndex: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ifiletype: u32) -> ::windows::core::HRESULT,
pub GetFileTypeIndex: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pifiletype: *mut u32) -> ::windows::core::HRESULT,
pub Advise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfde: *mut ::core::ffi::c_void, pdwcookie: *mut u32) -> ::windows::core::HRESULT,
pub Unadvise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwcookie: u32) -> ::windows::core::HRESULT,
pub SetOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fos: FILEOPENDIALOGOPTIONS) -> ::windows::core::HRESULT,
pub GetOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfos: *mut FILEOPENDIALOGOPTIONS) -> ::windows::core::HRESULT,
pub SetDefaultFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppsi: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetCurrentSelection: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppsi: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetFileName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub GetFileName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszname: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub SetTitle: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psztitle: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub SetOkButtonLabel: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psztext: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub SetFileNameLabel: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszlabel: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub GetResult: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppsi: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub AddPlace: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, fdap: FDAP) -> ::windows::core::HRESULT,
pub SetDefaultExtension: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszdefaultextension: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub Close: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hr: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
pub SetClientGuid: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, guid: *const ::windows::core::GUID) -> ::windows::core::HRESULT,
pub ClearClientData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetFilter: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfilter: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFileDialog2(::windows::core::IUnknown);
impl IFileDialog2 {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Show<P0>(&self, hwndowner: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.base__.Show)(::windows::core::Vtable::as_raw(self), hwndowner.into()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SetFileTypes(&self, rgfilterspec: &[Common::COMDLG_FILTERSPEC]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetFileTypes)(::windows::core::Vtable::as_raw(self), rgfilterspec.len() as _, ::core::mem::transmute(rgfilterspec.as_ptr())).ok()
}
pub unsafe fn SetFileTypeIndex(&self, ifiletype: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetFileTypeIndex)(::windows::core::Vtable::as_raw(self), ifiletype).ok()
}
pub unsafe fn GetFileTypeIndex(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetFileTypeIndex)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Advise<P0>(&self, pfde: P0) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<IFileDialogEvents>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Advise)(::windows::core::Vtable::as_raw(self), pfde.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Unadvise(&self, dwcookie: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Unadvise)(::windows::core::Vtable::as_raw(self), dwcookie).ok()
}
pub unsafe fn SetOptions(&self, fos: FILEOPENDIALOGOPTIONS) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetOptions)(::windows::core::Vtable::as_raw(self), fos).ok()
}
pub unsafe fn GetOptions(&self) -> ::windows::core::Result<FILEOPENDIALOGOPTIONS> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetOptions)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetDefaultFolder<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).base__.SetDefaultFolder)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
pub unsafe fn SetFolder<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).base__.SetFolder)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
pub unsafe fn GetFolder(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetFolder)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetCurrentSelection(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetCurrentSelection)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetFileName<P0>(&self, pszname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetFileName)(::windows::core::Vtable::as_raw(self), pszname.into().abi()).ok()
}
pub unsafe fn GetFileName(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetFileName)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetTitle<P0>(&self, psztitle: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetTitle)(::windows::core::Vtable::as_raw(self), psztitle.into().abi()).ok()
}
pub unsafe fn SetOkButtonLabel<P0>(&self, psztext: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetOkButtonLabel)(::windows::core::Vtable::as_raw(self), psztext.into().abi()).ok()
}
pub unsafe fn SetFileNameLabel<P0>(&self, pszlabel: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetFileNameLabel)(::windows::core::Vtable::as_raw(self), pszlabel.into().abi()).ok()
}
pub unsafe fn GetResult(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetResult)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn AddPlace<P0>(&self, psi: P0, fdap: FDAP) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).base__.AddPlace)(::windows::core::Vtable::as_raw(self), psi.into().abi(), fdap).ok()
}
pub unsafe fn SetDefaultExtension<P0>(&self, pszdefaultextension: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetDefaultExtension)(::windows::core::Vtable::as_raw(self), pszdefaultextension.into().abi()).ok()
}
pub unsafe fn Close(&self, hr: ::windows::core::HRESULT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Close)(::windows::core::Vtable::as_raw(self), hr).ok()
}
pub unsafe fn SetClientGuid(&self, guid: *const ::windows::core::GUID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetClientGuid)(::windows::core::Vtable::as_raw(self), guid).ok()
}
pub unsafe fn ClearClientData(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.ClearClientData)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetFilter<P0>(&self, pfilter: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItemFilter>>,
{
(::windows::core::Vtable::vtable(self).base__.SetFilter)(::windows::core::Vtable::as_raw(self), pfilter.into().abi()).ok()
}
pub unsafe fn SetCancelButtonLabel<P0>(&self, pszlabel: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetCancelButtonLabel)(::windows::core::Vtable::as_raw(self), pszlabel.into().abi()).ok()
}
pub unsafe fn SetNavigationRoot<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).SetNavigationRoot)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IFileDialog2, ::windows::core::IUnknown, IModalWindow, IFileDialog);
impl ::core::clone::Clone for IFileDialog2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFileDialog2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFileDialog2 {}
impl ::core::fmt::Debug for IFileDialog2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFileDialog2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFileDialog2 {
type Vtable = IFileDialog2_Vtbl;
}
unsafe impl ::windows::core::Interface for IFileDialog2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x61744fc7_85b5_4791_a9b0_272276309b13);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFileDialog2_Vtbl {
pub base__: IFileDialog_Vtbl,
pub SetCancelButtonLabel: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszlabel: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub SetNavigationRoot: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFileDialogControlEvents(::windows::core::IUnknown);
impl IFileDialogControlEvents {
pub unsafe fn OnItemSelected<P0>(&self, pfdc: P0, dwidctl: u32, dwiditem: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IFileDialogCustomize>>,
{
(::windows::core::Vtable::vtable(self).OnItemSelected)(::windows::core::Vtable::as_raw(self), pfdc.into().abi(), dwidctl, dwiditem).ok()
}
pub unsafe fn OnButtonClicked<P0>(&self, pfdc: P0, dwidctl: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IFileDialogCustomize>>,
{
(::windows::core::Vtable::vtable(self).OnButtonClicked)(::windows::core::Vtable::as_raw(self), pfdc.into().abi(), dwidctl).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnCheckButtonToggled<P0, P1>(&self, pfdc: P0, dwidctl: u32, bchecked: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IFileDialogCustomize>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).OnCheckButtonToggled)(::windows::core::Vtable::as_raw(self), pfdc.into().abi(), dwidctl, bchecked.into()).ok()
}
pub unsafe fn OnControlActivating<P0>(&self, pfdc: P0, dwidctl: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IFileDialogCustomize>>,
{
(::windows::core::Vtable::vtable(self).OnControlActivating)(::windows::core::Vtable::as_raw(self), pfdc.into().abi(), dwidctl).ok()
}
}
::windows::core::interface_hierarchy!(IFileDialogControlEvents, ::windows::core::IUnknown);
impl ::core::clone::Clone for IFileDialogControlEvents {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFileDialogControlEvents {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFileDialogControlEvents {}
impl ::core::fmt::Debug for IFileDialogControlEvents {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFileDialogControlEvents").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFileDialogControlEvents {
type Vtable = IFileDialogControlEvents_Vtbl;
}
unsafe impl ::windows::core::Interface for IFileDialogControlEvents {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x36116642_d713_4b97_9b83_7484a9d00433);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFileDialogControlEvents_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub OnItemSelected: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfdc: *mut ::core::ffi::c_void, dwidctl: u32, dwiditem: u32) -> ::windows::core::HRESULT,
pub OnButtonClicked: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfdc: *mut ::core::ffi::c_void, dwidctl: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub OnCheckButtonToggled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfdc: *mut ::core::ffi::c_void, dwidctl: u32, bchecked: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
OnCheckButtonToggled: usize,
pub OnControlActivating: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfdc: *mut ::core::ffi::c_void, dwidctl: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFileDialogCustomize(::windows::core::IUnknown);
impl IFileDialogCustomize {
pub unsafe fn EnableOpenDropDown(&self, dwidctl: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).EnableOpenDropDown)(::windows::core::Vtable::as_raw(self), dwidctl).ok()
}
pub unsafe fn AddMenu<P0>(&self, dwidctl: u32, pszlabel: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).AddMenu)(::windows::core::Vtable::as_raw(self), dwidctl, pszlabel.into().abi()).ok()
}
pub unsafe fn AddPushButton<P0>(&self, dwidctl: u32, pszlabel: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).AddPushButton)(::windows::core::Vtable::as_raw(self), dwidctl, pszlabel.into().abi()).ok()
}
pub unsafe fn AddComboBox(&self, dwidctl: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AddComboBox)(::windows::core::Vtable::as_raw(self), dwidctl).ok()
}
pub unsafe fn AddRadioButtonList(&self, dwidctl: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AddRadioButtonList)(::windows::core::Vtable::as_raw(self), dwidctl).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn AddCheckButton<P0, P1>(&self, dwidctl: u32, pszlabel: P0, bchecked: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).AddCheckButton)(::windows::core::Vtable::as_raw(self), dwidctl, pszlabel.into().abi(), bchecked.into()).ok()
}
pub unsafe fn AddEditBox<P0>(&self, dwidctl: u32, psztext: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).AddEditBox)(::windows::core::Vtable::as_raw(self), dwidctl, psztext.into().abi()).ok()
}
pub unsafe fn AddSeparator(&self, dwidctl: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AddSeparator)(::windows::core::Vtable::as_raw(self), dwidctl).ok()
}
pub unsafe fn AddText<P0>(&self, dwidctl: u32, psztext: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).AddText)(::windows::core::Vtable::as_raw(self), dwidctl, psztext.into().abi()).ok()
}
pub unsafe fn SetControlLabel<P0>(&self, dwidctl: u32, pszlabel: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetControlLabel)(::windows::core::Vtable::as_raw(self), dwidctl, pszlabel.into().abi()).ok()
}
pub unsafe fn GetControlState(&self, dwidctl: u32) -> ::windows::core::Result<CDCONTROLSTATEF> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetControlState)(::windows::core::Vtable::as_raw(self), dwidctl, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetControlState(&self, dwidctl: u32, dwstate: CDCONTROLSTATEF) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetControlState)(::windows::core::Vtable::as_raw(self), dwidctl, dwstate).ok()
}
pub unsafe fn GetEditBoxText(&self, dwidctl: u32) -> ::windows::core::Result<*mut u16> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetEditBoxText)(::windows::core::Vtable::as_raw(self), dwidctl, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetEditBoxText<P0>(&self, dwidctl: u32, psztext: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetEditBoxText)(::windows::core::Vtable::as_raw(self), dwidctl, psztext.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetCheckButtonState(&self, dwidctl: u32) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCheckButtonState)(::windows::core::Vtable::as_raw(self), dwidctl, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetCheckButtonState<P0>(&self, dwidctl: u32, bchecked: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetCheckButtonState)(::windows::core::Vtable::as_raw(self), dwidctl, bchecked.into()).ok()
}
pub unsafe fn AddControlItem<P0>(&self, dwidctl: u32, dwiditem: u32, pszlabel: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).AddControlItem)(::windows::core::Vtable::as_raw(self), dwidctl, dwiditem, pszlabel.into().abi()).ok()
}
pub unsafe fn RemoveControlItem(&self, dwidctl: u32, dwiditem: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RemoveControlItem)(::windows::core::Vtable::as_raw(self), dwidctl, dwiditem).ok()
}
pub unsafe fn RemoveAllControlItems(&self, dwidctl: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RemoveAllControlItems)(::windows::core::Vtable::as_raw(self), dwidctl).ok()
}
pub unsafe fn GetControlItemState(&self, dwidctl: u32, dwiditem: u32) -> ::windows::core::Result<CDCONTROLSTATEF> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetControlItemState)(::windows::core::Vtable::as_raw(self), dwidctl, dwiditem, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetControlItemState(&self, dwidctl: u32, dwiditem: u32, dwstate: CDCONTROLSTATEF) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetControlItemState)(::windows::core::Vtable::as_raw(self), dwidctl, dwiditem, dwstate).ok()
}
pub unsafe fn GetSelectedControlItem(&self, dwidctl: u32) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSelectedControlItem)(::windows::core::Vtable::as_raw(self), dwidctl, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetSelectedControlItem(&self, dwidctl: u32, dwiditem: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetSelectedControlItem)(::windows::core::Vtable::as_raw(self), dwidctl, dwiditem).ok()
}
pub unsafe fn StartVisualGroup<P0>(&self, dwidctl: u32, pszlabel: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).StartVisualGroup)(::windows::core::Vtable::as_raw(self), dwidctl, pszlabel.into().abi()).ok()
}
pub unsafe fn EndVisualGroup(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).EndVisualGroup)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn MakeProminent(&self, dwidctl: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).MakeProminent)(::windows::core::Vtable::as_raw(self), dwidctl).ok()
}
pub unsafe fn SetControlItemText<P0>(&self, dwidctl: u32, dwiditem: u32, pszlabel: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetControlItemText)(::windows::core::Vtable::as_raw(self), dwidctl, dwiditem, pszlabel.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IFileDialogCustomize, ::windows::core::IUnknown);
impl ::core::clone::Clone for IFileDialogCustomize {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFileDialogCustomize {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFileDialogCustomize {}
impl ::core::fmt::Debug for IFileDialogCustomize {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFileDialogCustomize").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFileDialogCustomize {
type Vtable = IFileDialogCustomize_Vtbl;
}
unsafe impl ::windows::core::Interface for IFileDialogCustomize {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe6fdd21a_163f_4975_9c8c_a69f1ba37034);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFileDialogCustomize_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub EnableOpenDropDown: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32) -> ::windows::core::HRESULT,
pub AddMenu: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, pszlabel: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub AddPushButton: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, pszlabel: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub AddComboBox: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32) -> ::windows::core::HRESULT,
pub AddRadioButtonList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub AddCheckButton: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, pszlabel: ::windows::core::PCWSTR, bchecked: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
AddCheckButton: usize,
pub AddEditBox: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, psztext: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub AddSeparator: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32) -> ::windows::core::HRESULT,
pub AddText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, psztext: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub SetControlLabel: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, pszlabel: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub GetControlState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, pdwstate: *mut CDCONTROLSTATEF) -> ::windows::core::HRESULT,
pub SetControlState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, dwstate: CDCONTROLSTATEF) -> ::windows::core::HRESULT,
pub GetEditBoxText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, ppsztext: *mut *mut u16) -> ::windows::core::HRESULT,
pub SetEditBoxText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, psztext: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetCheckButtonState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, pbchecked: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetCheckButtonState: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetCheckButtonState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, bchecked: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetCheckButtonState: usize,
pub AddControlItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, dwiditem: u32, pszlabel: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub RemoveControlItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, dwiditem: u32) -> ::windows::core::HRESULT,
pub RemoveAllControlItems: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32) -> ::windows::core::HRESULT,
pub GetControlItemState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, dwiditem: u32, pdwstate: *mut CDCONTROLSTATEF) -> ::windows::core::HRESULT,
pub SetControlItemState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, dwiditem: u32, dwstate: CDCONTROLSTATEF) -> ::windows::core::HRESULT,
pub GetSelectedControlItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, pdwiditem: *mut u32) -> ::windows::core::HRESULT,
pub SetSelectedControlItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, dwiditem: u32) -> ::windows::core::HRESULT,
pub StartVisualGroup: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, pszlabel: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub EndVisualGroup: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub MakeProminent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32) -> ::windows::core::HRESULT,
pub SetControlItemText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwidctl: u32, dwiditem: u32, pszlabel: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFileDialogEvents(::windows::core::IUnknown);
impl IFileDialogEvents {
pub unsafe fn OnFileOk<P0>(&self, pfd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IFileDialog>>,
{
(::windows::core::Vtable::vtable(self).OnFileOk)(::windows::core::Vtable::as_raw(self), pfd.into().abi()).ok()
}
pub unsafe fn OnFolderChanging<P0, P1>(&self, pfd: P0, psifolder: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IFileDialog>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).OnFolderChanging)(::windows::core::Vtable::as_raw(self), pfd.into().abi(), psifolder.into().abi()).ok()
}
pub unsafe fn OnFolderChange<P0>(&self, pfd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IFileDialog>>,
{
(::windows::core::Vtable::vtable(self).OnFolderChange)(::windows::core::Vtable::as_raw(self), pfd.into().abi()).ok()
}
pub unsafe fn OnSelectionChange<P0>(&self, pfd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IFileDialog>>,
{
(::windows::core::Vtable::vtable(self).OnSelectionChange)(::windows::core::Vtable::as_raw(self), pfd.into().abi()).ok()
}
pub unsafe fn OnShareViolation<P0, P1>(&self, pfd: P0, psi: P1) -> ::windows::core::Result<FDE_SHAREVIOLATION_RESPONSE>
where
P0: ::std::convert::Into<::windows::core::InParam<IFileDialog>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).OnShareViolation)(::windows::core::Vtable::as_raw(self), pfd.into().abi(), psi.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn OnTypeChange<P0>(&self, pfd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IFileDialog>>,
{
(::windows::core::Vtable::vtable(self).OnTypeChange)(::windows::core::Vtable::as_raw(self), pfd.into().abi()).ok()
}
pub unsafe fn OnOverwrite<P0, P1>(&self, pfd: P0, psi: P1) -> ::windows::core::Result<FDE_OVERWRITE_RESPONSE>
where
P0: ::std::convert::Into<::windows::core::InParam<IFileDialog>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).OnOverwrite)(::windows::core::Vtable::as_raw(self), pfd.into().abi(), psi.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IFileDialogEvents, ::windows::core::IUnknown);
impl ::core::clone::Clone for IFileDialogEvents {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFileDialogEvents {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFileDialogEvents {}
impl ::core::fmt::Debug for IFileDialogEvents {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFileDialogEvents").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFileDialogEvents {
type Vtable = IFileDialogEvents_Vtbl;
}
unsafe impl ::windows::core::Interface for IFileDialogEvents {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x973510db_7d7f_452b_8975_74a85828d354);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFileDialogEvents_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub OnFileOk: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfd: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub OnFolderChanging: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfd: *mut ::core::ffi::c_void, psifolder: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub OnFolderChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfd: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub OnSelectionChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfd: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub OnShareViolation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfd: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, presponse: *mut FDE_SHAREVIOLATION_RESPONSE) -> ::windows::core::HRESULT,
pub OnTypeChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfd: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub OnOverwrite: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfd: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, presponse: *mut FDE_OVERWRITE_RESPONSE) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFileIsInUse(::windows::core::IUnknown);
impl IFileIsInUse {
pub unsafe fn GetAppName(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetAppName)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetUsage(&self) -> ::windows::core::Result<FILE_USAGE_TYPE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetUsage)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetCapabilities(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCapabilities)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetSwitchToHWND(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSwitchToHWND)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn CloseFile(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).CloseFile)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IFileIsInUse, ::windows::core::IUnknown);
impl ::core::clone::Clone for IFileIsInUse {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFileIsInUse {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFileIsInUse {}
impl ::core::fmt::Debug for IFileIsInUse {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFileIsInUse").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFileIsInUse {
type Vtable = IFileIsInUse_Vtbl;
}
unsafe impl ::windows::core::Interface for IFileIsInUse {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x64a1cbf0_3a1a_4461_9158_376969693950);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFileIsInUse_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetAppName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszname: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetUsage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfut: *mut FILE_USAGE_TYPE) -> ::windows::core::HRESULT,
pub GetCapabilities: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwcapflags: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetSwitchToHWND: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phwnd: *mut super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetSwitchToHWND: usize,
pub CloseFile: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFileOpenDialog(::windows::core::IUnknown);
impl IFileOpenDialog {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Show<P0>(&self, hwndowner: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.base__.Show)(::windows::core::Vtable::as_raw(self), hwndowner.into()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SetFileTypes(&self, rgfilterspec: &[Common::COMDLG_FILTERSPEC]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetFileTypes)(::windows::core::Vtable::as_raw(self), rgfilterspec.len() as _, ::core::mem::transmute(rgfilterspec.as_ptr())).ok()
}
pub unsafe fn SetFileTypeIndex(&self, ifiletype: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetFileTypeIndex)(::windows::core::Vtable::as_raw(self), ifiletype).ok()
}
pub unsafe fn GetFileTypeIndex(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetFileTypeIndex)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Advise<P0>(&self, pfde: P0) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<IFileDialogEvents>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Advise)(::windows::core::Vtable::as_raw(self), pfde.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Unadvise(&self, dwcookie: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Unadvise)(::windows::core::Vtable::as_raw(self), dwcookie).ok()
}
pub unsafe fn SetOptions(&self, fos: FILEOPENDIALOGOPTIONS) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetOptions)(::windows::core::Vtable::as_raw(self), fos).ok()
}
pub unsafe fn GetOptions(&self) -> ::windows::core::Result<FILEOPENDIALOGOPTIONS> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetOptions)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetDefaultFolder<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).base__.SetDefaultFolder)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
pub unsafe fn SetFolder<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).base__.SetFolder)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
pub unsafe fn GetFolder(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetFolder)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetCurrentSelection(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetCurrentSelection)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetFileName<P0>(&self, pszname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetFileName)(::windows::core::Vtable::as_raw(self), pszname.into().abi()).ok()
}
pub unsafe fn GetFileName(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetFileName)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetTitle<P0>(&self, psztitle: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetTitle)(::windows::core::Vtable::as_raw(self), psztitle.into().abi()).ok()
}
pub unsafe fn SetOkButtonLabel<P0>(&self, psztext: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetOkButtonLabel)(::windows::core::Vtable::as_raw(self), psztext.into().abi()).ok()
}
pub unsafe fn SetFileNameLabel<P0>(&self, pszlabel: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetFileNameLabel)(::windows::core::Vtable::as_raw(self), pszlabel.into().abi()).ok()
}
pub unsafe fn GetResult(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetResult)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn AddPlace<P0>(&self, psi: P0, fdap: FDAP) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).base__.AddPlace)(::windows::core::Vtable::as_raw(self), psi.into().abi(), fdap).ok()
}
pub unsafe fn SetDefaultExtension<P0>(&self, pszdefaultextension: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetDefaultExtension)(::windows::core::Vtable::as_raw(self), pszdefaultextension.into().abi()).ok()
}
pub unsafe fn Close(&self, hr: ::windows::core::HRESULT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Close)(::windows::core::Vtable::as_raw(self), hr).ok()
}
pub unsafe fn SetClientGuid(&self, guid: *const ::windows::core::GUID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetClientGuid)(::windows::core::Vtable::as_raw(self), guid).ok()
}
pub unsafe fn ClearClientData(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.ClearClientData)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetFilter<P0>(&self, pfilter: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItemFilter>>,
{
(::windows::core::Vtable::vtable(self).base__.SetFilter)(::windows::core::Vtable::as_raw(self), pfilter.into().abi()).ok()
}
pub unsafe fn GetResults(&self) -> ::windows::core::Result<IShellItemArray> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetResults)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetSelectedItems(&self) -> ::windows::core::Result<IShellItemArray> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSelectedItems)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IFileOpenDialog, ::windows::core::IUnknown, IModalWindow, IFileDialog);
impl ::core::clone::Clone for IFileOpenDialog {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFileOpenDialog {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFileOpenDialog {}
impl ::core::fmt::Debug for IFileOpenDialog {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFileOpenDialog").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFileOpenDialog {
type Vtable = IFileOpenDialog_Vtbl;
}
unsafe impl ::windows::core::Interface for IFileOpenDialog {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd57c7288_d4ad_4768_be02_9d969532d960);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFileOpenDialog_Vtbl {
pub base__: IFileDialog_Vtbl,
pub GetResults: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetSelectedItems: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppsai: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFileOperation(::windows::core::IUnknown);
impl IFileOperation {
pub unsafe fn Advise<P0>(&self, pfops: P0) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<IFileOperationProgressSink>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Advise)(::windows::core::Vtable::as_raw(self), pfops.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Unadvise(&self, dwcookie: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Unadvise)(::windows::core::Vtable::as_raw(self), dwcookie).ok()
}
pub unsafe fn SetOperationFlags(&self, dwoperationflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetOperationFlags)(::windows::core::Vtable::as_raw(self), dwoperationflags).ok()
}
pub unsafe fn SetProgressMessage<P0>(&self, pszmessage: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetProgressMessage)(::windows::core::Vtable::as_raw(self), pszmessage.into().abi()).ok()
}
pub unsafe fn SetProgressDialog<P0>(&self, popd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IOperationsProgressDialog>>,
{
(::windows::core::Vtable::vtable(self).SetProgressDialog)(::windows::core::Vtable::as_raw(self), popd.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn SetProperties<P0>(&self, pproparray: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<PropertiesSystem::IPropertyChangeArray>>,
{
(::windows::core::Vtable::vtable(self).SetProperties)(::windows::core::Vtable::as_raw(self), pproparray.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetOwnerWindow<P0>(&self, hwndowner: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).SetOwnerWindow)(::windows::core::Vtable::as_raw(self), hwndowner.into()).ok()
}
pub unsafe fn ApplyPropertiesToItem<P0>(&self, psiitem: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).ApplyPropertiesToItem)(::windows::core::Vtable::as_raw(self), psiitem.into().abi()).ok()
}
pub unsafe fn ApplyPropertiesToItems<P0>(&self, punkitems: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).ApplyPropertiesToItems)(::windows::core::Vtable::as_raw(self), punkitems.into().abi()).ok()
}
pub unsafe fn RenameItem<P0, P1, P2>(&self, psiitem: P0, psznewname: P1, pfopsitem: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<IFileOperationProgressSink>>,
{
(::windows::core::Vtable::vtable(self).RenameItem)(::windows::core::Vtable::as_raw(self), psiitem.into().abi(), psznewname.into().abi(), pfopsitem.into().abi()).ok()
}
pub unsafe fn RenameItems<P0, P1>(&self, punkitems: P0, psznewname: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).RenameItems)(::windows::core::Vtable::as_raw(self), punkitems.into().abi(), psznewname.into().abi()).ok()
}
pub unsafe fn MoveItem<P0, P1, P2, P3>(&self, psiitem: P0, psidestinationfolder: P1, psznewname: P2, pfopsitem: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<IFileOperationProgressSink>>,
{
(::windows::core::Vtable::vtable(self).MoveItem)(::windows::core::Vtable::as_raw(self), psiitem.into().abi(), psidestinationfolder.into().abi(), psznewname.into().abi(), pfopsitem.into().abi()).ok()
}
pub unsafe fn MoveItems<P0, P1>(&self, punkitems: P0, psidestinationfolder: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).MoveItems)(::windows::core::Vtable::as_raw(self), punkitems.into().abi(), psidestinationfolder.into().abi()).ok()
}
pub unsafe fn CopyItem<P0, P1, P2, P3>(&self, psiitem: P0, psidestinationfolder: P1, pszcopyname: P2, pfopsitem: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<IFileOperationProgressSink>>,
{
(::windows::core::Vtable::vtable(self).CopyItem)(::windows::core::Vtable::as_raw(self), psiitem.into().abi(), psidestinationfolder.into().abi(), pszcopyname.into().abi(), pfopsitem.into().abi()).ok()
}
pub unsafe fn CopyItems<P0, P1>(&self, punkitems: P0, psidestinationfolder: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).CopyItems)(::windows::core::Vtable::as_raw(self), punkitems.into().abi(), psidestinationfolder.into().abi()).ok()
}
pub unsafe fn DeleteItem<P0, P1>(&self, psiitem: P0, pfopsitem: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IFileOperationProgressSink>>,
{
(::windows::core::Vtable::vtable(self).DeleteItem)(::windows::core::Vtable::as_raw(self), psiitem.into().abi(), pfopsitem.into().abi()).ok()
}
pub unsafe fn DeleteItems<P0>(&self, punkitems: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).DeleteItems)(::windows::core::Vtable::as_raw(self), punkitems.into().abi()).ok()
}
pub unsafe fn NewItem<P0, P1, P2, P3>(&self, psidestinationfolder: P0, dwfileattributes: u32, pszname: P1, psztemplatename: P2, pfopsitem: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<IFileOperationProgressSink>>,
{
(::windows::core::Vtable::vtable(self).NewItem)(::windows::core::Vtable::as_raw(self), psidestinationfolder.into().abi(), dwfileattributes, pszname.into().abi(), psztemplatename.into().abi(), pfopsitem.into().abi()).ok()
}
pub unsafe fn PerformOperations(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).PerformOperations)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetAnyOperationsAborted(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetAnyOperationsAborted)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IFileOperation, ::windows::core::IUnknown);
impl ::core::clone::Clone for IFileOperation {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFileOperation {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFileOperation {}
impl ::core::fmt::Debug for IFileOperation {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFileOperation").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFileOperation {
type Vtable = IFileOperation_Vtbl;
}
unsafe impl ::windows::core::Interface for IFileOperation {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x947aab5f_0a5c_4c13_b4d6_4bf7836fc9f8);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFileOperation_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Advise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfops: *mut ::core::ffi::c_void, pdwcookie: *mut u32) -> ::windows::core::HRESULT,
pub Unadvise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwcookie: u32) -> ::windows::core::HRESULT,
pub SetOperationFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwoperationflags: u32) -> ::windows::core::HRESULT,
pub SetProgressMessage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszmessage: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub SetProgressDialog: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, popd: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub SetProperties: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pproparray: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
SetProperties: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetOwnerWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndowner: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetOwnerWindow: usize,
pub ApplyPropertiesToItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiitem: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub ApplyPropertiesToItems: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punkitems: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub RenameItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiitem: *mut ::core::ffi::c_void, psznewname: ::windows::core::PCWSTR, pfopsitem: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub RenameItems: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punkitems: *mut ::core::ffi::c_void, psznewname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub MoveItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiitem: *mut ::core::ffi::c_void, psidestinationfolder: *mut ::core::ffi::c_void, psznewname: ::windows::core::PCWSTR, pfopsitem: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub MoveItems: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punkitems: *mut ::core::ffi::c_void, psidestinationfolder: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub CopyItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiitem: *mut ::core::ffi::c_void, psidestinationfolder: *mut ::core::ffi::c_void, pszcopyname: ::windows::core::PCWSTR, pfopsitem: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub CopyItems: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punkitems: *mut ::core::ffi::c_void, psidestinationfolder: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub DeleteItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiitem: *mut ::core::ffi::c_void, pfopsitem: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub DeleteItems: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punkitems: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub NewItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psidestinationfolder: *mut ::core::ffi::c_void, dwfileattributes: u32, pszname: ::windows::core::PCWSTR, psztemplatename: ::windows::core::PCWSTR, pfopsitem: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub PerformOperations: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetAnyOperationsAborted: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfanyoperationsaborted: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetAnyOperationsAborted: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFileOperation2(::windows::core::IUnknown);
impl IFileOperation2 {
pub unsafe fn Advise<P0>(&self, pfops: P0) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<IFileOperationProgressSink>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Advise)(::windows::core::Vtable::as_raw(self), pfops.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Unadvise(&self, dwcookie: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Unadvise)(::windows::core::Vtable::as_raw(self), dwcookie).ok()
}
pub unsafe fn SetOperationFlags(&self, dwoperationflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetOperationFlags)(::windows::core::Vtable::as_raw(self), dwoperationflags).ok()
}
pub unsafe fn SetProgressMessage<P0>(&self, pszmessage: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetProgressMessage)(::windows::core::Vtable::as_raw(self), pszmessage.into().abi()).ok()
}
pub unsafe fn SetProgressDialog<P0>(&self, popd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IOperationsProgressDialog>>,
{
(::windows::core::Vtable::vtable(self).base__.SetProgressDialog)(::windows::core::Vtable::as_raw(self), popd.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn SetProperties<P0>(&self, pproparray: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<PropertiesSystem::IPropertyChangeArray>>,
{
(::windows::core::Vtable::vtable(self).base__.SetProperties)(::windows::core::Vtable::as_raw(self), pproparray.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetOwnerWindow<P0>(&self, hwndowner: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.SetOwnerWindow)(::windows::core::Vtable::as_raw(self), hwndowner.into()).ok()
}
pub unsafe fn ApplyPropertiesToItem<P0>(&self, psiitem: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).base__.ApplyPropertiesToItem)(::windows::core::Vtable::as_raw(self), psiitem.into().abi()).ok()
}
pub unsafe fn ApplyPropertiesToItems<P0>(&self, punkitems: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).base__.ApplyPropertiesToItems)(::windows::core::Vtable::as_raw(self), punkitems.into().abi()).ok()
}
pub unsafe fn RenameItem<P0, P1, P2>(&self, psiitem: P0, psznewname: P1, pfopsitem: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<IFileOperationProgressSink>>,
{
(::windows::core::Vtable::vtable(self).base__.RenameItem)(::windows::core::Vtable::as_raw(self), psiitem.into().abi(), psznewname.into().abi(), pfopsitem.into().abi()).ok()
}
pub unsafe fn RenameItems<P0, P1>(&self, punkitems: P0, psznewname: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.RenameItems)(::windows::core::Vtable::as_raw(self), punkitems.into().abi(), psznewname.into().abi()).ok()
}
pub unsafe fn MoveItem<P0, P1, P2, P3>(&self, psiitem: P0, psidestinationfolder: P1, psznewname: P2, pfopsitem: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<IFileOperationProgressSink>>,
{
(::windows::core::Vtable::vtable(self).base__.MoveItem)(::windows::core::Vtable::as_raw(self), psiitem.into().abi(), psidestinationfolder.into().abi(), psznewname.into().abi(), pfopsitem.into().abi()).ok()
}
pub unsafe fn MoveItems<P0, P1>(&self, punkitems: P0, psidestinationfolder: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).base__.MoveItems)(::windows::core::Vtable::as_raw(self), punkitems.into().abi(), psidestinationfolder.into().abi()).ok()
}
pub unsafe fn CopyItem<P0, P1, P2, P3>(&self, psiitem: P0, psidestinationfolder: P1, pszcopyname: P2, pfopsitem: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<IFileOperationProgressSink>>,
{
(::windows::core::Vtable::vtable(self).base__.CopyItem)(::windows::core::Vtable::as_raw(self), psiitem.into().abi(), psidestinationfolder.into().abi(), pszcopyname.into().abi(), pfopsitem.into().abi()).ok()
}
pub unsafe fn CopyItems<P0, P1>(&self, punkitems: P0, psidestinationfolder: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).base__.CopyItems)(::windows::core::Vtable::as_raw(self), punkitems.into().abi(), psidestinationfolder.into().abi()).ok()
}
pub unsafe fn DeleteItem<P0, P1>(&self, psiitem: P0, pfopsitem: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IFileOperationProgressSink>>,
{
(::windows::core::Vtable::vtable(self).base__.DeleteItem)(::windows::core::Vtable::as_raw(self), psiitem.into().abi(), pfopsitem.into().abi()).ok()
}
pub unsafe fn DeleteItems<P0>(&self, punkitems: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).base__.DeleteItems)(::windows::core::Vtable::as_raw(self), punkitems.into().abi()).ok()
}
pub unsafe fn NewItem<P0, P1, P2, P3>(&self, psidestinationfolder: P0, dwfileattributes: u32, pszname: P1, psztemplatename: P2, pfopsitem: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<IFileOperationProgressSink>>,
{
(::windows::core::Vtable::vtable(self).base__.NewItem)(::windows::core::Vtable::as_raw(self), psidestinationfolder.into().abi(), dwfileattributes, pszname.into().abi(), psztemplatename.into().abi(), pfopsitem.into().abi()).ok()
}
pub unsafe fn PerformOperations(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.PerformOperations)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetAnyOperationsAborted(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetAnyOperationsAborted)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetOperationFlags2(&self, operationflags2: FILE_OPERATION_FLAGS2) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetOperationFlags2)(::windows::core::Vtable::as_raw(self), operationflags2).ok()
}
}
::windows::core::interface_hierarchy!(IFileOperation2, ::windows::core::IUnknown, IFileOperation);
impl ::core::clone::Clone for IFileOperation2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFileOperation2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFileOperation2 {}
impl ::core::fmt::Debug for IFileOperation2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFileOperation2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFileOperation2 {
type Vtable = IFileOperation2_Vtbl;
}
unsafe impl ::windows::core::Interface for IFileOperation2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcd8f23c1_8f61_4916_909d_55bdd0918753);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFileOperation2_Vtbl {
pub base__: IFileOperation_Vtbl,
pub SetOperationFlags2: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, operationflags2: FILE_OPERATION_FLAGS2) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFileOperationProgressSink(::windows::core::IUnknown);
impl IFileOperationProgressSink {
pub unsafe fn StartOperations(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).StartOperations)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FinishOperations(&self, hrresult: ::windows::core::HRESULT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).FinishOperations)(::windows::core::Vtable::as_raw(self), hrresult).ok()
}
pub unsafe fn PreRenameItem<P0, P1>(&self, dwflags: u32, psiitem: P0, psznewname: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).PreRenameItem)(::windows::core::Vtable::as_raw(self), dwflags, psiitem.into().abi(), psznewname.into().abi()).ok()
}
pub unsafe fn PostRenameItem<P0, P1, P2>(&self, dwflags: u32, psiitem: P0, psznewname: P1, hrrename: ::windows::core::HRESULT, psinewlycreated: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).PostRenameItem)(::windows::core::Vtable::as_raw(self), dwflags, psiitem.into().abi(), psznewname.into().abi(), hrrename, psinewlycreated.into().abi()).ok()
}
pub unsafe fn PreMoveItem<P0, P1, P2>(&self, dwflags: u32, psiitem: P0, psidestinationfolder: P1, psznewname: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).PreMoveItem)(::windows::core::Vtable::as_raw(self), dwflags, psiitem.into().abi(), psidestinationfolder.into().abi(), psznewname.into().abi()).ok()
}
pub unsafe fn PostMoveItem<P0, P1, P2, P3>(&self, dwflags: u32, psiitem: P0, psidestinationfolder: P1, psznewname: P2, hrmove: ::windows::core::HRESULT, psinewlycreated: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).PostMoveItem)(::windows::core::Vtable::as_raw(self), dwflags, psiitem.into().abi(), psidestinationfolder.into().abi(), psznewname.into().abi(), hrmove, psinewlycreated.into().abi()).ok()
}
pub unsafe fn PreCopyItem<P0, P1, P2>(&self, dwflags: u32, psiitem: P0, psidestinationfolder: P1, psznewname: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).PreCopyItem)(::windows::core::Vtable::as_raw(self), dwflags, psiitem.into().abi(), psidestinationfolder.into().abi(), psznewname.into().abi()).ok()
}
pub unsafe fn PostCopyItem<P0, P1, P2, P3>(&self, dwflags: u32, psiitem: P0, psidestinationfolder: P1, psznewname: P2, hrcopy: ::windows::core::HRESULT, psinewlycreated: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).PostCopyItem)(::windows::core::Vtable::as_raw(self), dwflags, psiitem.into().abi(), psidestinationfolder.into().abi(), psznewname.into().abi(), hrcopy, psinewlycreated.into().abi()).ok()
}
pub unsafe fn PreDeleteItem<P0>(&self, dwflags: u32, psiitem: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).PreDeleteItem)(::windows::core::Vtable::as_raw(self), dwflags, psiitem.into().abi()).ok()
}
pub unsafe fn PostDeleteItem<P0, P1>(&self, dwflags: u32, psiitem: P0, hrdelete: ::windows::core::HRESULT, psinewlycreated: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).PostDeleteItem)(::windows::core::Vtable::as_raw(self), dwflags, psiitem.into().abi(), hrdelete, psinewlycreated.into().abi()).ok()
}
pub unsafe fn PreNewItem<P0, P1>(&self, dwflags: u32, psidestinationfolder: P0, psznewname: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).PreNewItem)(::windows::core::Vtable::as_raw(self), dwflags, psidestinationfolder.into().abi(), psznewname.into().abi()).ok()
}
pub unsafe fn PostNewItem<P0, P1, P2, P3>(&self, dwflags: u32, psidestinationfolder: P0, psznewname: P1, psztemplatename: P2, dwfileattributes: u32, hrnew: ::windows::core::HRESULT, psinewitem: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).PostNewItem)(::windows::core::Vtable::as_raw(self), dwflags, psidestinationfolder.into().abi(), psznewname.into().abi(), psztemplatename.into().abi(), dwfileattributes, hrnew, psinewitem.into().abi()).ok()
}
pub unsafe fn UpdateProgress(&self, iworktotal: u32, iworksofar: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UpdateProgress)(::windows::core::Vtable::as_raw(self), iworktotal, iworksofar).ok()
}
pub unsafe fn ResetTimer(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ResetTimer)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn PauseTimer(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).PauseTimer)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ResumeTimer(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ResumeTimer)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IFileOperationProgressSink, ::windows::core::IUnknown);
impl ::core::clone::Clone for IFileOperationProgressSink {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFileOperationProgressSink {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFileOperationProgressSink {}
impl ::core::fmt::Debug for IFileOperationProgressSink {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFileOperationProgressSink").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFileOperationProgressSink {
type Vtable = IFileOperationProgressSink_Vtbl;
}
unsafe impl ::windows::core::Interface for IFileOperationProgressSink {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x04b0f1a7_9490_44bc_96e1_4296a31252e2);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFileOperationProgressSink_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub StartOperations: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub FinishOperations: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hrresult: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
pub PreRenameItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32, psiitem: *mut ::core::ffi::c_void, psznewname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub PostRenameItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32, psiitem: *mut ::core::ffi::c_void, psznewname: ::windows::core::PCWSTR, hrrename: ::windows::core::HRESULT, psinewlycreated: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub PreMoveItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32, psiitem: *mut ::core::ffi::c_void, psidestinationfolder: *mut ::core::ffi::c_void, psznewname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub PostMoveItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32, psiitem: *mut ::core::ffi::c_void, psidestinationfolder: *mut ::core::ffi::c_void, psznewname: ::windows::core::PCWSTR, hrmove: ::windows::core::HRESULT, psinewlycreated: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub PreCopyItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32, psiitem: *mut ::core::ffi::c_void, psidestinationfolder: *mut ::core::ffi::c_void, psznewname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub PostCopyItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32, psiitem: *mut ::core::ffi::c_void, psidestinationfolder: *mut ::core::ffi::c_void, psznewname: ::windows::core::PCWSTR, hrcopy: ::windows::core::HRESULT, psinewlycreated: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub PreDeleteItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32, psiitem: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub PostDeleteItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32, psiitem: *mut ::core::ffi::c_void, hrdelete: ::windows::core::HRESULT, psinewlycreated: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub PreNewItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32, psidestinationfolder: *mut ::core::ffi::c_void, psznewname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub PostNewItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32, psidestinationfolder: *mut ::core::ffi::c_void, psznewname: ::windows::core::PCWSTR, psztemplatename: ::windows::core::PCWSTR, dwfileattributes: u32, hrnew: ::windows::core::HRESULT, psinewitem: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub UpdateProgress: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, iworktotal: u32, iworksofar: u32) -> ::windows::core::HRESULT,
pub ResetTimer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub PauseTimer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub ResumeTimer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFileSaveDialog(::windows::core::IUnknown);
impl IFileSaveDialog {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Show<P0>(&self, hwndowner: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.base__.Show)(::windows::core::Vtable::as_raw(self), hwndowner.into()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SetFileTypes(&self, rgfilterspec: &[Common::COMDLG_FILTERSPEC]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetFileTypes)(::windows::core::Vtable::as_raw(self), rgfilterspec.len() as _, ::core::mem::transmute(rgfilterspec.as_ptr())).ok()
}
pub unsafe fn SetFileTypeIndex(&self, ifiletype: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetFileTypeIndex)(::windows::core::Vtable::as_raw(self), ifiletype).ok()
}
pub unsafe fn GetFileTypeIndex(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetFileTypeIndex)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Advise<P0>(&self, pfde: P0) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<IFileDialogEvents>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Advise)(::windows::core::Vtable::as_raw(self), pfde.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Unadvise(&self, dwcookie: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Unadvise)(::windows::core::Vtable::as_raw(self), dwcookie).ok()
}
pub unsafe fn SetOptions(&self, fos: FILEOPENDIALOGOPTIONS) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetOptions)(::windows::core::Vtable::as_raw(self), fos).ok()
}
pub unsafe fn GetOptions(&self) -> ::windows::core::Result<FILEOPENDIALOGOPTIONS> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetOptions)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetDefaultFolder<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).base__.SetDefaultFolder)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
pub unsafe fn SetFolder<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).base__.SetFolder)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
pub unsafe fn GetFolder(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetFolder)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetCurrentSelection(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetCurrentSelection)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetFileName<P0>(&self, pszname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetFileName)(::windows::core::Vtable::as_raw(self), pszname.into().abi()).ok()
}
pub unsafe fn GetFileName(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetFileName)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetTitle<P0>(&self, psztitle: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetTitle)(::windows::core::Vtable::as_raw(self), psztitle.into().abi()).ok()
}
pub unsafe fn SetOkButtonLabel<P0>(&self, psztext: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetOkButtonLabel)(::windows::core::Vtable::as_raw(self), psztext.into().abi()).ok()
}
pub unsafe fn SetFileNameLabel<P0>(&self, pszlabel: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetFileNameLabel)(::windows::core::Vtable::as_raw(self), pszlabel.into().abi()).ok()
}
pub unsafe fn GetResult(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetResult)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn AddPlace<P0>(&self, psi: P0, fdap: FDAP) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).base__.AddPlace)(::windows::core::Vtable::as_raw(self), psi.into().abi(), fdap).ok()
}
pub unsafe fn SetDefaultExtension<P0>(&self, pszdefaultextension: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetDefaultExtension)(::windows::core::Vtable::as_raw(self), pszdefaultextension.into().abi()).ok()
}
pub unsafe fn Close(&self, hr: ::windows::core::HRESULT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Close)(::windows::core::Vtable::as_raw(self), hr).ok()
}
pub unsafe fn SetClientGuid(&self, guid: *const ::windows::core::GUID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetClientGuid)(::windows::core::Vtable::as_raw(self), guid).ok()
}
pub unsafe fn ClearClientData(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.ClearClientData)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetFilter<P0>(&self, pfilter: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItemFilter>>,
{
(::windows::core::Vtable::vtable(self).base__.SetFilter)(::windows::core::Vtable::as_raw(self), pfilter.into().abi()).ok()
}
pub unsafe fn SetSaveAsItem<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).SetSaveAsItem)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn SetProperties<P0>(&self, pstore: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<PropertiesSystem::IPropertyStore>>,
{
(::windows::core::Vtable::vtable(self).SetProperties)(::windows::core::Vtable::as_raw(self), pstore.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub unsafe fn SetCollectedProperties<P0, P1>(&self, plist: P0, fappenddefault: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<PropertiesSystem::IPropertyDescriptionList>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetCollectedProperties)(::windows::core::Vtable::as_raw(self), plist.into().abi(), fappenddefault.into()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetProperties(&self) -> ::windows::core::Result<PropertiesSystem::IPropertyStore> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetProperties)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub unsafe fn ApplyProperties<P0, P1, P2, P3>(&self, psi: P0, pstore: P1, hwnd: P2, psink: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<PropertiesSystem::IPropertyStore>>,
P2: ::std::convert::Into<super::super::Foundation::HWND>,
P3: ::std::convert::Into<::windows::core::InParam<IFileOperationProgressSink>>,
{
(::windows::core::Vtable::vtable(self).ApplyProperties)(::windows::core::Vtable::as_raw(self), psi.into().abi(), pstore.into().abi(), hwnd.into(), psink.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IFileSaveDialog, ::windows::core::IUnknown, IModalWindow, IFileDialog);
impl ::core::clone::Clone for IFileSaveDialog {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFileSaveDialog {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFileSaveDialog {}
impl ::core::fmt::Debug for IFileSaveDialog {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFileSaveDialog").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFileSaveDialog {
type Vtable = IFileSaveDialog_Vtbl;
}
unsafe impl ::windows::core::Interface for IFileSaveDialog {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x84bccd23_5fde_4cdb_aea4_af64b83d78ab);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFileSaveDialog_Vtbl {
pub base__: IFileDialog_Vtbl,
pub SetSaveAsItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub SetProperties: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstore: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
SetProperties: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub SetCollectedProperties: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plist: *mut ::core::ffi::c_void, fappenddefault: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem")))]
SetCollectedProperties: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetProperties: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppstore: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetProperties: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub ApplyProperties: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, pstore: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, psink: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem")))]
ApplyProperties: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IFileSearchBand(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IFileSearchBand {
pub unsafe fn SetFocus(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetFocus)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn SetSearchParameters<P0>(&self, pbstrsearchid: *const ::windows::core::BSTR, bnavtoresults: P0, pvarscope: *const super::super::System::Com::VARIANT, pvarqueryfile: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).SetSearchParameters)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pbstrsearchid), bnavtoresults.into(), pvarscope, pvarqueryfile).ok()
}
pub unsafe fn SearchID(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).SearchID)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Scope(&self) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Scope)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn QueryFile(&self) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).QueryFile)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IFileSearchBand, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IFileSearchBand {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IFileSearchBand {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IFileSearchBand {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IFileSearchBand {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFileSearchBand").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IFileSearchBand {
type Vtable = IFileSearchBand_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IFileSearchBand {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2d91eea1_9932_11d2_be86_00a0c9a83da1);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IFileSearchBand_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
pub SetFocus: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub SetSearchParameters: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstrsearchid: *const *mut ::core::ffi::c_void, bnavtoresults: super::super::Foundation::VARIANT_BOOL, pvarscope: *const super::super::System::Com::VARIANT, pvarqueryfile: *const super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
SetSearchParameters: usize,
pub SearchID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstrsearchid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub Scope: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pvarscope: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
Scope: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub QueryFile: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pvarfile: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
QueryFile: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFileSyncMergeHandler(::windows::core::IUnknown);
impl IFileSyncMergeHandler {
pub unsafe fn Merge<P0, P1>(&self, localfilepath: P0, serverfilepath: P1) -> ::windows::core::Result<MERGE_UPDATE_STATUS>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Merge)(::windows::core::Vtable::as_raw(self), localfilepath.into().abi(), serverfilepath.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn ShowResolveConflictUIAsync<P0, P1>(&self, localfilepath: P0, monitortodisplayon: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<super::super::Graphics::Gdi::HMONITOR>,
{
(::windows::core::Vtable::vtable(self).ShowResolveConflictUIAsync)(::windows::core::Vtable::as_raw(self), localfilepath.into().abi(), monitortodisplayon.into()).ok()
}
}
::windows::core::interface_hierarchy!(IFileSyncMergeHandler, ::windows::core::IUnknown);
impl ::core::clone::Clone for IFileSyncMergeHandler {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFileSyncMergeHandler {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFileSyncMergeHandler {}
impl ::core::fmt::Debug for IFileSyncMergeHandler {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFileSyncMergeHandler").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFileSyncMergeHandler {
type Vtable = IFileSyncMergeHandler_Vtbl;
}
unsafe impl ::windows::core::Interface for IFileSyncMergeHandler {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd97b5aac_c792_433c_975d_35c4eadc7a9d);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFileSyncMergeHandler_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Merge: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, localfilepath: ::windows::core::PCWSTR, serverfilepath: ::windows::core::PCWSTR, updatestatus: *mut MERGE_UPDATE_STATUS) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Graphics_Gdi")]
pub ShowResolveConflictUIAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, localfilepath: ::windows::core::PCWSTR, monitortodisplayon: super::super::Graphics::Gdi::HMONITOR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Gdi"))]
ShowResolveConflictUIAsync: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFileSystemBindData(::windows::core::IUnknown);
impl IFileSystemBindData {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Storage_FileSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_FileSystem"))]
pub unsafe fn SetFindData(&self, pfd: *const super::super::Storage::FileSystem::WIN32_FIND_DATAW) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetFindData)(::windows::core::Vtable::as_raw(self), pfd).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Storage_FileSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_FileSystem"))]
pub unsafe fn GetFindData(&self, pfd: *mut super::super::Storage::FileSystem::WIN32_FIND_DATAW) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetFindData)(::windows::core::Vtable::as_raw(self), pfd).ok()
}
}
::windows::core::interface_hierarchy!(IFileSystemBindData, ::windows::core::IUnknown);
impl ::core::clone::Clone for IFileSystemBindData {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFileSystemBindData {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFileSystemBindData {}
impl ::core::fmt::Debug for IFileSystemBindData {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFileSystemBindData").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFileSystemBindData {
type Vtable = IFileSystemBindData_Vtbl;
}
unsafe impl ::windows::core::Interface for IFileSystemBindData {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x01e18d10_4d8b_11d2_855d_006008059367);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFileSystemBindData_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_FileSystem"))]
pub SetFindData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfd: *const super::super::Storage::FileSystem::WIN32_FIND_DATAW) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Storage_FileSystem")))]
SetFindData: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_FileSystem"))]
pub GetFindData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfd: *mut super::super::Storage::FileSystem::WIN32_FIND_DATAW) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Storage_FileSystem")))]
GetFindData: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFileSystemBindData2(::windows::core::IUnknown);
impl IFileSystemBindData2 {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Storage_FileSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_FileSystem"))]
pub unsafe fn SetFindData(&self, pfd: *const super::super::Storage::FileSystem::WIN32_FIND_DATAW) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetFindData)(::windows::core::Vtable::as_raw(self), pfd).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Storage_FileSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_FileSystem"))]
pub unsafe fn GetFindData(&self, pfd: *mut super::super::Storage::FileSystem::WIN32_FIND_DATAW) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetFindData)(::windows::core::Vtable::as_raw(self), pfd).ok()
}
pub unsafe fn SetFileID(&self, lifileid: i64) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetFileID)(::windows::core::Vtable::as_raw(self), lifileid).ok()
}
pub unsafe fn GetFileID(&self) -> ::windows::core::Result<i64> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFileID)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetJunctionCLSID(&self, clsid: *const ::windows::core::GUID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetJunctionCLSID)(::windows::core::Vtable::as_raw(self), clsid).ok()
}
pub unsafe fn GetJunctionCLSID(&self) -> ::windows::core::Result<::windows::core::GUID> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetJunctionCLSID)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IFileSystemBindData2, ::windows::core::IUnknown, IFileSystemBindData);
impl ::core::clone::Clone for IFileSystemBindData2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFileSystemBindData2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFileSystemBindData2 {}
impl ::core::fmt::Debug for IFileSystemBindData2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFileSystemBindData2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFileSystemBindData2 {
type Vtable = IFileSystemBindData2_Vtbl;
}
unsafe impl ::windows::core::Interface for IFileSystemBindData2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3acf075f_71db_4afa_81f0_3fc4fdf2a5b8);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFileSystemBindData2_Vtbl {
pub base__: IFileSystemBindData_Vtbl,
pub SetFileID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lifileid: i64) -> ::windows::core::HRESULT,
pub GetFileID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plifileid: *mut i64) -> ::windows::core::HRESULT,
pub SetJunctionCLSID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clsid: *const ::windows::core::GUID) -> ::windows::core::HRESULT,
pub GetJunctionCLSID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pclsid: *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFolderBandPriv(::windows::core::IUnknown);
impl IFolderBandPriv {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetCascade<P0>(&self, fcascade: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetCascade)(::windows::core::Vtable::as_raw(self), fcascade.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetAccelerators<P0>(&self, faccelerators: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetAccelerators)(::windows::core::Vtable::as_raw(self), faccelerators.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetNoIcons<P0>(&self, fnoicons: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetNoIcons)(::windows::core::Vtable::as_raw(self), fnoicons.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetNoText<P0>(&self, fnotext: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetNoText)(::windows::core::Vtable::as_raw(self), fnotext.into()).ok()
}
}
::windows::core::interface_hierarchy!(IFolderBandPriv, ::windows::core::IUnknown);
impl ::core::clone::Clone for IFolderBandPriv {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFolderBandPriv {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFolderBandPriv {}
impl ::core::fmt::Debug for IFolderBandPriv {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFolderBandPriv").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFolderBandPriv {
type Vtable = IFolderBandPriv_Vtbl;
}
unsafe impl ::windows::core::Interface for IFolderBandPriv {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x47c01f95_e185_412c_b5c5_4f27df965aea);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFolderBandPriv_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub SetCascade: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fcascade: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetCascade: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetAccelerators: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, faccelerators: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetAccelerators: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetNoIcons: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fnoicons: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetNoIcons: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetNoText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fnotext: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetNoText: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFolderFilter(::windows::core::IUnknown);
impl IFolderFilter {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn ShouldShow<P0>(&self, psf: P0, pidlfolder: *const Common::ITEMIDLIST, pidlitem: *const Common::ITEMIDLIST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
{
(::windows::core::Vtable::vtable(self).ShouldShow)(::windows::core::Vtable::as_raw(self), psf.into().abi(), pidlfolder, pidlitem).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn GetEnumFlags<P0>(&self, psf: P0, pidlfolder: *const Common::ITEMIDLIST, phwnd: *mut super::super::Foundation::HWND, pgrfflags: *mut u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
{
(::windows::core::Vtable::vtable(self).GetEnumFlags)(::windows::core::Vtable::as_raw(self), psf.into().abi(), pidlfolder, phwnd, pgrfflags).ok()
}
}
::windows::core::interface_hierarchy!(IFolderFilter, ::windows::core::IUnknown);
impl ::core::clone::Clone for IFolderFilter {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFolderFilter {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFolderFilter {}
impl ::core::fmt::Debug for IFolderFilter {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFolderFilter").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFolderFilter {
type Vtable = IFolderFilter_Vtbl;
}
unsafe impl ::windows::core::Interface for IFolderFilter {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9cc22886_dc8e_11d2_b1d0_00c04f8eeb3e);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFolderFilter_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub ShouldShow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psf: *mut ::core::ffi::c_void, pidlfolder: *const Common::ITEMIDLIST, pidlitem: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
ShouldShow: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub GetEnumFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psf: *mut ::core::ffi::c_void, pidlfolder: *const Common::ITEMIDLIST, phwnd: *mut super::super::Foundation::HWND, pgrfflags: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common")))]
GetEnumFlags: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFolderFilterSite(::windows::core::IUnknown);
impl IFolderFilterSite {
pub unsafe fn SetFilter<P0>(&self, punk: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).SetFilter)(::windows::core::Vtable::as_raw(self), punk.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IFolderFilterSite, ::windows::core::IUnknown);
impl ::core::clone::Clone for IFolderFilterSite {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFolderFilterSite {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFolderFilterSite {}
impl ::core::fmt::Debug for IFolderFilterSite {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFolderFilterSite").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFolderFilterSite {
type Vtable = IFolderFilterSite_Vtbl;
}
unsafe impl ::windows::core::Interface for IFolderFilterSite {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc0a651f5_b48b_11d2_b5ed_006097c686f6);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFolderFilterSite_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetFilter: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFolderView(::windows::core::IUnknown);
impl IFolderView {
pub unsafe fn GetCurrentViewMode(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCurrentViewMode)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetCurrentViewMode(&self, viewmode: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetCurrentViewMode)(::windows::core::Vtable::as_raw(self), viewmode).ok()
}
pub unsafe fn GetFolder<T>(&self) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFolder)(::windows::core::Vtable::as_raw(self), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn Item(&self, iitemindex: i32) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Item)(::windows::core::Vtable::as_raw(self), iitemindex, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn ItemCount(&self, uflags: u32) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ItemCount)(::windows::core::Vtable::as_raw(self), uflags, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Items<T>(&self, uflags: u32) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Items)(::windows::core::Vtable::as_raw(self), uflags, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetSelectionMarkedItem(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSelectionMarkedItem)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetFocusedItem(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFocusedItem)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn GetItemPosition(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<super::super::Foundation::POINT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItemPosition)(::windows::core::Vtable::as_raw(self), pidl, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetSpacing(&self, ppt: *mut super::super::Foundation::POINT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetSpacing)(::windows::core::Vtable::as_raw(self), ppt).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetDefaultSpacing(&self) -> ::windows::core::Result<super::super::Foundation::POINT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetDefaultSpacing)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetAutoArrange(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetAutoArrange)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SelectItem(&self, iitem: i32, dwflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SelectItem)(::windows::core::Vtable::as_raw(self), iitem, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn SelectAndPositionItems(&self, cidl: u32, apidl: *const *const Common::ITEMIDLIST, apt: ::core::option::Option<*const super::super::Foundation::POINT>, dwflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SelectAndPositionItems)(::windows::core::Vtable::as_raw(self), cidl, apidl, ::core::mem::transmute(apt.unwrap_or(::std::ptr::null())), dwflags).ok()
}
}
::windows::core::interface_hierarchy!(IFolderView, ::windows::core::IUnknown);
impl ::core::clone::Clone for IFolderView {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFolderView {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFolderView {}
impl ::core::fmt::Debug for IFolderView {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFolderView").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFolderView {
type Vtable = IFolderView_Vtbl;
}
unsafe impl ::windows::core::Interface for IFolderView {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcde725b0_ccc9_4519_917e_325d72fab4ce);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFolderView_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetCurrentViewMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pviewmode: *mut u32) -> ::windows::core::HRESULT,
pub SetCurrentViewMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, viewmode: u32) -> ::windows::core::HRESULT,
pub GetFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub Item: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, iitemindex: i32, ppidl: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
Item: usize,
pub ItemCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uflags: u32, pcitems: *mut i32) -> ::windows::core::HRESULT,
pub Items: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uflags: u32, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetSelectionMarkedItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, piitem: *mut i32) -> ::windows::core::HRESULT,
pub GetFocusedItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, piitem: *mut i32) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub GetItemPosition: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, ppt: *mut super::super::Foundation::POINT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common")))]
GetItemPosition: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetSpacing: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppt: *mut super::super::Foundation::POINT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetSpacing: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetDefaultSpacing: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppt: *mut super::super::Foundation::POINT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetDefaultSpacing: usize,
pub GetAutoArrange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SelectItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, iitem: i32, dwflags: u32) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub SelectAndPositionItems: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cidl: u32, apidl: *const *const Common::ITEMIDLIST, apt: *const super::super::Foundation::POINT, dwflags: u32) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common")))]
SelectAndPositionItems: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFolderView2(::windows::core::IUnknown);
impl IFolderView2 {
pub unsafe fn GetCurrentViewMode(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetCurrentViewMode)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetCurrentViewMode(&self, viewmode: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetCurrentViewMode)(::windows::core::Vtable::as_raw(self), viewmode).ok()
}
pub unsafe fn GetFolder<T>(&self) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetFolder)(::windows::core::Vtable::as_raw(self), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn Item(&self, iitemindex: i32) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Item)(::windows::core::Vtable::as_raw(self), iitemindex, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn ItemCount(&self, uflags: u32) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.ItemCount)(::windows::core::Vtable::as_raw(self), uflags, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Items<T>(&self, uflags: u32) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Items)(::windows::core::Vtable::as_raw(self), uflags, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetSelectionMarkedItem(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetSelectionMarkedItem)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetFocusedItem(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetFocusedItem)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn GetItemPosition(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<super::super::Foundation::POINT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItemPosition)(::windows::core::Vtable::as_raw(self), pidl, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetSpacing(&self, ppt: *mut super::super::Foundation::POINT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetSpacing)(::windows::core::Vtable::as_raw(self), ppt).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetDefaultSpacing(&self) -> ::windows::core::Result<super::super::Foundation::POINT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetDefaultSpacing)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetAutoArrange(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetAutoArrange)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SelectItem(&self, iitem: i32, dwflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SelectItem)(::windows::core::Vtable::as_raw(self), iitem, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn SelectAndPositionItems(&self, cidl: u32, apidl: *const *const Common::ITEMIDLIST, apt: ::core::option::Option<*const super::super::Foundation::POINT>, dwflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SelectAndPositionItems)(::windows::core::Vtable::as_raw(self), cidl, apidl, ::core::mem::transmute(apt.unwrap_or(::std::ptr::null())), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub unsafe fn SetGroupBy<P0>(&self, key: *const PropertiesSystem::PROPERTYKEY, fascending: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetGroupBy)(::windows::core::Vtable::as_raw(self), key, fascending.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub unsafe fn GetGroupBy(&self, pkey: *mut PropertiesSystem::PROPERTYKEY, pfascending: ::core::option::Option<*mut super::super::Foundation::BOOL>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetGroupBy)(::windows::core::Vtable::as_raw(self), pkey, ::core::mem::transmute(pfascending.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_UI_Shell_Common\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub unsafe fn SetViewProperty(&self, pidl: *const Common::ITEMIDLIST, propkey: *const PropertiesSystem::PROPERTYKEY, propvar: *const super::super::System::Com::StructuredStorage::PROPVARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetViewProperty)(::windows::core::Vtable::as_raw(self), pidl, propkey, propvar).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_UI_Shell_Common\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub unsafe fn GetViewProperty(&self, pidl: *const Common::ITEMIDLIST, propkey: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<super::super::System::Com::StructuredStorage::PROPVARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetViewProperty)(::windows::core::Vtable::as_raw(self), pidl, propkey, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SetTileViewProperties<P0>(&self, pidl: *const Common::ITEMIDLIST, pszproplist: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetTileViewProperties)(::windows::core::Vtable::as_raw(self), pidl, pszproplist.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SetExtendedTileViewProperties<P0>(&self, pidl: *const Common::ITEMIDLIST, pszproplist: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetExtendedTileViewProperties)(::windows::core::Vtable::as_raw(self), pidl, pszproplist.into().abi()).ok()
}
pub unsafe fn SetText<P0>(&self, itype: FVTEXTTYPE, pwsztext: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetText)(::windows::core::Vtable::as_raw(self), itype, pwsztext.into().abi()).ok()
}
pub unsafe fn SetCurrentFolderFlags(&self, dwmask: u32, dwflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetCurrentFolderFlags)(::windows::core::Vtable::as_raw(self), dwmask, dwflags).ok()
}
pub unsafe fn GetCurrentFolderFlags(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCurrentFolderFlags)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetSortColumnCount(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSortColumnCount)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn SetSortColumns(&self, rgsortcolumns: &[SORTCOLUMN]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetSortColumns)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(rgsortcolumns.as_ptr()), rgsortcolumns.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetSortColumns(&self, rgsortcolumns: &mut [SORTCOLUMN]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetSortColumns)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(rgsortcolumns.as_ptr()), rgsortcolumns.len() as _).ok()
}
pub unsafe fn GetItem<T>(&self, iitem: i32) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItem)(::windows::core::Vtable::as_raw(self), iitem, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetVisibleItem<P0>(&self, istart: i32, fprevious: P0) -> ::windows::core::Result<i32>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetVisibleItem)(::windows::core::Vtable::as_raw(self), istart, fprevious.into(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetSelectedItem(&self, istart: i32) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSelectedItem)(::windows::core::Vtable::as_raw(self), istart, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetSelection<P0>(&self, fnoneimpliesfolder: P0) -> ::windows::core::Result<IShellItemArray>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSelection)(::windows::core::Vtable::as_raw(self), fnoneimpliesfolder.into(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetSelectionState(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSelectionState)(::windows::core::Vtable::as_raw(self), pidl, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn InvokeVerbOnSelection<P0>(&self, pszverb: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
(::windows::core::Vtable::vtable(self).InvokeVerbOnSelection)(::windows::core::Vtable::as_raw(self), pszverb.into().abi()).ok()
}
pub unsafe fn SetViewModeAndIconSize(&self, uviewmode: FOLDERVIEWMODE, iimagesize: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetViewModeAndIconSize)(::windows::core::Vtable::as_raw(self), uviewmode, iimagesize).ok()
}
pub unsafe fn GetViewModeAndIconSize(&self, puviewmode: *mut FOLDERVIEWMODE, piimagesize: *mut i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetViewModeAndIconSize)(::windows::core::Vtable::as_raw(self), puviewmode, piimagesize).ok()
}
pub unsafe fn SetGroupSubsetCount(&self, cvisiblerows: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetGroupSubsetCount)(::windows::core::Vtable::as_raw(self), cvisiblerows).ok()
}
pub unsafe fn GetGroupSubsetCount(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetGroupSubsetCount)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetRedraw<P0>(&self, fredrawon: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetRedraw)(::windows::core::Vtable::as_raw(self), fredrawon.into()).ok()
}
pub unsafe fn IsMoveInSameFolder(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).IsMoveInSameFolder)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn DoRename(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).DoRename)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IFolderView2, ::windows::core::IUnknown, IFolderView);
impl ::core::clone::Clone for IFolderView2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFolderView2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFolderView2 {}
impl ::core::fmt::Debug for IFolderView2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFolderView2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFolderView2 {
type Vtable = IFolderView2_Vtbl;
}
unsafe impl ::windows::core::Interface for IFolderView2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1af3a467_214f_4298_908e_06b03e0b39f9);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFolderView2_Vtbl {
pub base__: IFolderView_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub SetGroupBy: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, key: *const PropertiesSystem::PROPERTYKEY, fascending: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem")))]
SetGroupBy: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub GetGroupBy: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pkey: *mut PropertiesSystem::PROPERTYKEY, pfascending: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem")))]
GetGroupBy: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub SetViewProperty: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, propkey: *const PropertiesSystem::PROPERTYKEY, propvar: *const super::super::System::Com::StructuredStorage::PROPVARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_Shell_PropertiesSystem")))]
SetViewProperty: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub GetViewProperty: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, propkey: *const PropertiesSystem::PROPERTYKEY, ppropvar: *mut super::super::System::Com::StructuredStorage::PROPVARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_Shell_PropertiesSystem")))]
GetViewProperty: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub SetTileViewProperties: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, pszproplist: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
SetTileViewProperties: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub SetExtendedTileViewProperties: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, pszproplist: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
SetExtendedTileViewProperties: usize,
pub SetText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, itype: FVTEXTTYPE, pwsztext: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub SetCurrentFolderFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwmask: u32, dwflags: u32) -> ::windows::core::HRESULT,
pub GetCurrentFolderFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwflags: *mut u32) -> ::windows::core::HRESULT,
pub GetSortColumnCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pccolumns: *mut i32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub SetSortColumns: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rgsortcolumns: *const SORTCOLUMN, ccolumns: i32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
SetSortColumns: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetSortColumns: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rgsortcolumns: *mut SORTCOLUMN, ccolumns: i32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetSortColumns: usize,
pub GetItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, iitem: i32, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetVisibleItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, istart: i32, fprevious: super::super::Foundation::BOOL, piitem: *mut i32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetVisibleItem: usize,
pub GetSelectedItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, istart: i32, piitem: *mut i32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetSelection: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fnoneimpliesfolder: super::super::Foundation::BOOL, ppsia: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetSelection: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetSelectionState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, pdwflags: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetSelectionState: usize,
pub InvokeVerbOnSelection: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszverb: ::windows::core::PCSTR) -> ::windows::core::HRESULT,
pub SetViewModeAndIconSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uviewmode: FOLDERVIEWMODE, iimagesize: i32) -> ::windows::core::HRESULT,
pub GetViewModeAndIconSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, puviewmode: *mut FOLDERVIEWMODE, piimagesize: *mut i32) -> ::windows::core::HRESULT,
pub SetGroupSubsetCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cvisiblerows: u32) -> ::windows::core::HRESULT,
pub GetGroupSubsetCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcvisiblerows: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub SetRedraw: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fredrawon: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetRedraw: usize,
pub IsMoveInSameFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub DoRename: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFolderViewHost(::windows::core::IUnknown);
impl IFolderViewHost {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
pub unsafe fn Initialize<P0, P1>(&self, hwndparent: P0, pdo: P1, prc: *const super::super::Foundation::RECT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
{
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self), hwndparent.into(), pdo.into().abi(), prc).ok()
}
}
::windows::core::interface_hierarchy!(IFolderViewHost, ::windows::core::IUnknown);
impl ::core::clone::Clone for IFolderViewHost {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFolderViewHost {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFolderViewHost {}
impl ::core::fmt::Debug for IFolderViewHost {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFolderViewHost").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFolderViewHost {
type Vtable = IFolderViewHost_Vtbl;
}
unsafe impl ::windows::core::Interface for IFolderViewHost {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1ea58f02_d55a_411d_b09e_9e65ac21605b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFolderViewHost_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndparent: super::super::Foundation::HWND, pdo: *mut ::core::ffi::c_void, prc: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com")))]
Initialize: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IFolderViewOC(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IFolderViewOC {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn SetFolderView<P0>(&self, pdisp: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDispatch>>,
{
(::windows::core::Vtable::vtable(self).SetFolderView)(::windows::core::Vtable::as_raw(self), pdisp.into().abi()).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IFolderViewOC, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IFolderViewOC {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IFolderViewOC {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IFolderViewOC {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IFolderViewOC {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFolderViewOC").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IFolderViewOC {
type Vtable = IFolderViewOC_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IFolderViewOC {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9ba05970_f6a8_11cf_a442_00a0c90a8f39);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IFolderViewOC_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub SetFolderView: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdisp: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
SetFolderView: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFolderViewOptions(::windows::core::IUnknown);
impl IFolderViewOptions {
pub unsafe fn SetFolderViewOptions(&self, fvomask: FOLDERVIEWOPTIONS, fvoflags: FOLDERVIEWOPTIONS) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetFolderViewOptions)(::windows::core::Vtable::as_raw(self), fvomask, fvoflags).ok()
}
pub unsafe fn GetFolderViewOptions(&self) -> ::windows::core::Result<FOLDERVIEWOPTIONS> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFolderViewOptions)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IFolderViewOptions, ::windows::core::IUnknown);
impl ::core::clone::Clone for IFolderViewOptions {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFolderViewOptions {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFolderViewOptions {}
impl ::core::fmt::Debug for IFolderViewOptions {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFolderViewOptions").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFolderViewOptions {
type Vtable = IFolderViewOptions_Vtbl;
}
unsafe impl ::windows::core::Interface for IFolderViewOptions {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3cc974d2_b302_4d36_ad3e_06d93f695d3f);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFolderViewOptions_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetFolderViewOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fvomask: FOLDERVIEWOPTIONS, fvoflags: FOLDERVIEWOPTIONS) -> ::windows::core::HRESULT,
pub GetFolderViewOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfvoflags: *mut FOLDERVIEWOPTIONS) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFolderViewSettings(::windows::core::IUnknown);
impl IFolderViewSettings {
pub unsafe fn GetColumnPropertyList<T>(&self) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetColumnPropertyList)(::windows::core::Vtable::as_raw(self), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub unsafe fn GetGroupByProperty(&self, pkey: *mut PropertiesSystem::PROPERTYKEY, pfgroupascending: *mut super::super::Foundation::BOOL) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetGroupByProperty)(::windows::core::Vtable::as_raw(self), pkey, pfgroupascending).ok()
}
pub unsafe fn GetViewMode(&self) -> ::windows::core::Result<FOLDERLOGICALVIEWMODE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetViewMode)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetIconSize(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetIconSize)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetFolderFlags(&self, pfoldermask: *mut FOLDERFLAGS, pfolderflags: *mut FOLDERFLAGS) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetFolderFlags)(::windows::core::Vtable::as_raw(self), pfoldermask, pfolderflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetSortColumns(&self, rgsortcolumns: &mut [SORTCOLUMN], pccolumnsout: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetSortColumns)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(rgsortcolumns.as_ptr()), rgsortcolumns.len() as _, pccolumnsout).ok()
}
pub unsafe fn GetGroupSubsetCount(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetGroupSubsetCount)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IFolderViewSettings, ::windows::core::IUnknown);
impl ::core::clone::Clone for IFolderViewSettings {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFolderViewSettings {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFolderViewSettings {}
impl ::core::fmt::Debug for IFolderViewSettings {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFolderViewSettings").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFolderViewSettings {
type Vtable = IFolderViewSettings_Vtbl;
}
unsafe impl ::windows::core::Interface for IFolderViewSettings {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xae8c987d_8797_4ed3_be72_2a47dd938db0);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFolderViewSettings_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetColumnPropertyList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub GetGroupByProperty: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pkey: *mut PropertiesSystem::PROPERTYKEY, pfgroupascending: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem")))]
GetGroupByProperty: usize,
pub GetViewMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plvm: *mut FOLDERLOGICALVIEWMODE) -> ::windows::core::HRESULT,
pub GetIconSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, puiconsize: *mut u32) -> ::windows::core::HRESULT,
pub GetFolderFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfoldermask: *mut FOLDERFLAGS, pfolderflags: *mut FOLDERFLAGS) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetSortColumns: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rgsortcolumns: *mut SORTCOLUMN, ccolumnsin: u32, pccolumnsout: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetSortColumns: usize,
pub GetGroupSubsetCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcvisiblerows: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFrameworkInputPane(::windows::core::IUnknown);
impl IFrameworkInputPane {
pub unsafe fn Advise<P0, P1>(&self, pwindow: P0, phandler: P1) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<::windows::core::InParam<IFrameworkInputPaneHandler>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Advise)(::windows::core::Vtable::as_raw(self), pwindow.into().abi(), phandler.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn AdviseWithHWND<P0, P1>(&self, hwnd: P0, phandler: P1) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<IFrameworkInputPaneHandler>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).AdviseWithHWND)(::windows::core::Vtable::as_raw(self), hwnd.into(), phandler.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Unadvise(&self, dwcookie: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Unadvise)(::windows::core::Vtable::as_raw(self), dwcookie).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Location(&self) -> ::windows::core::Result<super::super::Foundation::RECT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Location)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IFrameworkInputPane, ::windows::core::IUnknown);
impl ::core::clone::Clone for IFrameworkInputPane {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFrameworkInputPane {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFrameworkInputPane {}
impl ::core::fmt::Debug for IFrameworkInputPane {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFrameworkInputPane").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFrameworkInputPane {
type Vtable = IFrameworkInputPane_Vtbl;
}
unsafe impl ::windows::core::Interface for IFrameworkInputPane {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5752238b_24f0_495a_82f1_2fd593056796);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFrameworkInputPane_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Advise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwindow: *mut ::core::ffi::c_void, phandler: *mut ::core::ffi::c_void, pdwcookie: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub AdviseWithHWND: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, phandler: *mut ::core::ffi::c_void, pdwcookie: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
AdviseWithHWND: usize,
pub Unadvise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwcookie: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub Location: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, prcinputpanescreenlocation: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Location: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IFrameworkInputPaneHandler(::windows::core::IUnknown);
impl IFrameworkInputPaneHandler {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Showing<P0>(&self, prcinputpanescreenlocation: *const super::super::Foundation::RECT, fensurefocusedelementinview: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).Showing)(::windows::core::Vtable::as_raw(self), prcinputpanescreenlocation, fensurefocusedelementinview.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Hiding<P0>(&self, fensurefocusedelementinview: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).Hiding)(::windows::core::Vtable::as_raw(self), fensurefocusedelementinview.into()).ok()
}
}
::windows::core::interface_hierarchy!(IFrameworkInputPaneHandler, ::windows::core::IUnknown);
impl ::core::clone::Clone for IFrameworkInputPaneHandler {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IFrameworkInputPaneHandler {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IFrameworkInputPaneHandler {}
impl ::core::fmt::Debug for IFrameworkInputPaneHandler {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IFrameworkInputPaneHandler").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IFrameworkInputPaneHandler {
type Vtable = IFrameworkInputPaneHandler_Vtbl;
}
unsafe impl ::windows::core::Interface for IFrameworkInputPaneHandler {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x226c537b_1e76_4d9e_a760_33db29922f18);
}
#[repr(C)]
#[doc(hidden)]
pub struct IFrameworkInputPaneHandler_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub Showing: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, prcinputpanescreenlocation: *const super::super::Foundation::RECT, fensurefocusedelementinview: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Showing: usize,
#[cfg(feature = "Win32_Foundation")]
pub Hiding: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fensurefocusedelementinview: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Hiding: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IGetServiceIds(::windows::core::IUnknown);
impl IGetServiceIds {
pub unsafe fn GetServiceIds(&self, serviceidcount: *mut u32, serviceids: *mut *mut ::windows::core::GUID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetServiceIds)(::windows::core::Vtable::as_raw(self), serviceidcount, serviceids).ok()
}
}
::windows::core::interface_hierarchy!(IGetServiceIds, ::windows::core::IUnknown);
impl ::core::clone::Clone for IGetServiceIds {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IGetServiceIds {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IGetServiceIds {}
impl ::core::fmt::Debug for IGetServiceIds {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IGetServiceIds").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IGetServiceIds {
type Vtable = IGetServiceIds_Vtbl;
}
unsafe impl ::windows::core::Interface for IGetServiceIds {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4a073526_6103_4e21_b7bc_f519d1524e5d);
}
#[repr(C)]
#[doc(hidden)]
pub struct IGetServiceIds_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetServiceIds: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, serviceidcount: *mut u32, serviceids: *mut *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IHWEventHandler(::windows::core::IUnknown);
impl IHWEventHandler {
pub unsafe fn Initialize<P0>(&self, pszparams: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self), pszparams.into().abi()).ok()
}
pub unsafe fn HandleEvent<P0, P1, P2>(&self, pszdeviceid: P0, pszaltdeviceid: P1, pszeventtype: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).HandleEvent)(::windows::core::Vtable::as_raw(self), pszdeviceid.into().abi(), pszaltdeviceid.into().abi(), pszeventtype.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn HandleEventWithContent<P0, P1, P2, P3, P4>(&self, pszdeviceid: P0, pszaltdeviceid: P1, pszeventtype: P2, pszcontenttypehandler: P3, pdataobject: P4) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P4: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
{
(::windows::core::Vtable::vtable(self).HandleEventWithContent)(::windows::core::Vtable::as_raw(self), pszdeviceid.into().abi(), pszaltdeviceid.into().abi(), pszeventtype.into().abi(), pszcontenttypehandler.into().abi(), pdataobject.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IHWEventHandler, ::windows::core::IUnknown);
impl ::core::clone::Clone for IHWEventHandler {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IHWEventHandler {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IHWEventHandler {}
impl ::core::fmt::Debug for IHWEventHandler {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IHWEventHandler").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IHWEventHandler {
type Vtable = IHWEventHandler_Vtbl;
}
unsafe impl ::windows::core::Interface for IHWEventHandler {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc1fb73d0_ec3a_4ba2_b512_8cdb9187b6d1);
}
#[repr(C)]
#[doc(hidden)]
pub struct IHWEventHandler_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszparams: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub HandleEvent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszdeviceid: ::windows::core::PCWSTR, pszaltdeviceid: ::windows::core::PCWSTR, pszeventtype: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub HandleEventWithContent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszdeviceid: ::windows::core::PCWSTR, pszaltdeviceid: ::windows::core::PCWSTR, pszeventtype: ::windows::core::PCWSTR, pszcontenttypehandler: ::windows::core::PCWSTR, pdataobject: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
HandleEventWithContent: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IHWEventHandler2(::windows::core::IUnknown);
impl IHWEventHandler2 {
pub unsafe fn Initialize<P0>(&self, pszparams: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.Initialize)(::windows::core::Vtable::as_raw(self), pszparams.into().abi()).ok()
}
pub unsafe fn HandleEvent<P0, P1, P2>(&self, pszdeviceid: P0, pszaltdeviceid: P1, pszeventtype: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.HandleEvent)(::windows::core::Vtable::as_raw(self), pszdeviceid.into().abi(), pszaltdeviceid.into().abi(), pszeventtype.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn HandleEventWithContent<P0, P1, P2, P3, P4>(&self, pszdeviceid: P0, pszaltdeviceid: P1, pszeventtype: P2, pszcontenttypehandler: P3, pdataobject: P4) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P4: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
{
(::windows::core::Vtable::vtable(self).base__.HandleEventWithContent)(::windows::core::Vtable::as_raw(self), pszdeviceid.into().abi(), pszaltdeviceid.into().abi(), pszeventtype.into().abi(), pszcontenttypehandler.into().abi(), pdataobject.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn HandleEventWithHWND<P0, P1, P2, P3>(&self, pszdeviceid: P0, pszaltdeviceid: P1, pszeventtype: P2, hwndowner: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).HandleEventWithHWND)(::windows::core::Vtable::as_raw(self), pszdeviceid.into().abi(), pszaltdeviceid.into().abi(), pszeventtype.into().abi(), hwndowner.into()).ok()
}
}
::windows::core::interface_hierarchy!(IHWEventHandler2, ::windows::core::IUnknown, IHWEventHandler);
impl ::core::clone::Clone for IHWEventHandler2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IHWEventHandler2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IHWEventHandler2 {}
impl ::core::fmt::Debug for IHWEventHandler2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IHWEventHandler2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IHWEventHandler2 {
type Vtable = IHWEventHandler2_Vtbl;
}
unsafe impl ::windows::core::Interface for IHWEventHandler2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcfcc809f_295d_42e8_9ffc_424b33c487e6);
}
#[repr(C)]
#[doc(hidden)]
pub struct IHWEventHandler2_Vtbl {
pub base__: IHWEventHandler_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub HandleEventWithHWND: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszdeviceid: ::windows::core::PCWSTR, pszaltdeviceid: ::windows::core::PCWSTR, pszeventtype: ::windows::core::PCWSTR, hwndowner: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
HandleEventWithHWND: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IHandlerActivationHost(::windows::core::IUnknown);
impl IHandlerActivationHost {
pub unsafe fn BeforeCoCreateInstance<P0, P1>(&self, clsidhandler: *const ::windows::core::GUID, itemsbeingactivated: P0, handlerinfo: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItemArray>>,
P1: ::std::convert::Into<::windows::core::InParam<IHandlerInfo>>,
{
(::windows::core::Vtable::vtable(self).BeforeCoCreateInstance)(::windows::core::Vtable::as_raw(self), clsidhandler, itemsbeingactivated.into().abi(), handlerinfo.into().abi()).ok()
}
pub unsafe fn BeforeCreateProcess<P0, P1, P2>(&self, applicationpath: P0, commandline: P1, handlerinfo: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<IHandlerInfo>>,
{
(::windows::core::Vtable::vtable(self).BeforeCreateProcess)(::windows::core::Vtable::as_raw(self), applicationpath.into().abi(), commandline.into().abi(), handlerinfo.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IHandlerActivationHost, ::windows::core::IUnknown);
impl ::core::clone::Clone for IHandlerActivationHost {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IHandlerActivationHost {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IHandlerActivationHost {}
impl ::core::fmt::Debug for IHandlerActivationHost {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IHandlerActivationHost").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IHandlerActivationHost {
type Vtable = IHandlerActivationHost_Vtbl;
}
unsafe impl ::windows::core::Interface for IHandlerActivationHost {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x35094a87_8bb1_4237_96c6_c417eebdb078);
}
#[repr(C)]
#[doc(hidden)]
pub struct IHandlerActivationHost_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub BeforeCoCreateInstance: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clsidhandler: *const ::windows::core::GUID, itemsbeingactivated: *mut ::core::ffi::c_void, handlerinfo: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub BeforeCreateProcess: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, applicationpath: ::windows::core::PCWSTR, commandline: ::windows::core::PCWSTR, handlerinfo: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IHandlerInfo(::windows::core::IUnknown);
impl IHandlerInfo {
pub unsafe fn GetApplicationDisplayName(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetApplicationDisplayName)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetApplicationPublisher(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetApplicationPublisher)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetApplicationIconReference(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetApplicationIconReference)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IHandlerInfo, ::windows::core::IUnknown);
impl ::core::clone::Clone for IHandlerInfo {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IHandlerInfo {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IHandlerInfo {}
impl ::core::fmt::Debug for IHandlerInfo {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IHandlerInfo").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IHandlerInfo {
type Vtable = IHandlerInfo_Vtbl;
}
unsafe impl ::windows::core::Interface for IHandlerInfo {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x997706ef_f880_453b_8118_39e1a2d2655a);
}
#[repr(C)]
#[doc(hidden)]
pub struct IHandlerInfo_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetApplicationDisplayName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetApplicationPublisher: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetApplicationIconReference: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IHandlerInfo2(::windows::core::IUnknown);
impl IHandlerInfo2 {
pub unsafe fn GetApplicationDisplayName(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetApplicationDisplayName)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetApplicationPublisher(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetApplicationPublisher)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetApplicationIconReference(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetApplicationIconReference)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetApplicationId(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetApplicationId)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IHandlerInfo2, ::windows::core::IUnknown, IHandlerInfo);
impl ::core::clone::Clone for IHandlerInfo2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IHandlerInfo2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IHandlerInfo2 {}
impl ::core::fmt::Debug for IHandlerInfo2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IHandlerInfo2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IHandlerInfo2 {
type Vtable = IHandlerInfo2_Vtbl;
}
unsafe impl ::windows::core::Interface for IHandlerInfo2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x31cca04c_04d3_4ea9_90de_97b15e87a532);
}
#[repr(C)]
#[doc(hidden)]
pub struct IHandlerInfo2_Vtbl {
pub base__: IHandlerInfo_Vtbl,
pub GetApplicationId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IHlink(::windows::core::IUnknown);
impl IHlink {
pub unsafe fn SetHlinkSite<P0>(&self, pihlsite: P0, dwsitedata: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IHlinkSite>>,
{
(::windows::core::Vtable::vtable(self).SetHlinkSite)(::windows::core::Vtable::as_raw(self), pihlsite.into().abi(), dwsitedata).ok()
}
pub unsafe fn GetHlinkSite(&self, ppihlsite: *mut ::core::option::Option<IHlinkSite>, pdwsitedata: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetHlinkSite)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(ppihlsite), pdwsitedata).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn SetMonikerReference<P0, P1>(&self, grfhlsetf: u32, pimktarget: P0, pwzlocation: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IMoniker>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetMonikerReference)(::windows::core::Vtable::as_raw(self), grfhlsetf, pimktarget.into().abi(), pwzlocation.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn GetMonikerReference(&self, dwwhichref: u32, ppimktarget: ::core::option::Option<*mut ::core::option::Option<super::super::System::Com::IMoniker>>, ppwzlocation: ::core::option::Option<*mut ::windows::core::PWSTR>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetMonikerReference)(::windows::core::Vtable::as_raw(self), dwwhichref, ::core::mem::transmute(ppimktarget.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(ppwzlocation.unwrap_or(::std::ptr::null_mut()))).ok()
}
pub unsafe fn SetStringReference<P0, P1>(&self, grfhlsetf: u32, pwztarget: P0, pwzlocation: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetStringReference)(::windows::core::Vtable::as_raw(self), grfhlsetf, pwztarget.into().abi(), pwzlocation.into().abi()).ok()
}
pub unsafe fn GetStringReference(&self, dwwhichref: u32, ppwztarget: ::core::option::Option<*mut ::windows::core::PWSTR>, ppwzlocation: ::core::option::Option<*mut ::windows::core::PWSTR>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetStringReference)(::windows::core::Vtable::as_raw(self), dwwhichref, ::core::mem::transmute(ppwztarget.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(ppwzlocation.unwrap_or(::std::ptr::null_mut()))).ok()
}
pub unsafe fn SetFriendlyName<P0>(&self, pwzfriendlyname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetFriendlyName)(::windows::core::Vtable::as_raw(self), pwzfriendlyname.into().abi()).ok()
}
pub unsafe fn GetFriendlyName(&self, grfhlfnamef: u32) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFriendlyName)(::windows::core::Vtable::as_raw(self), grfhlfnamef, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetTargetFrameName<P0>(&self, pwztargetframename: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetTargetFrameName)(::windows::core::Vtable::as_raw(self), pwztargetframename.into().abi()).ok()
}
pub unsafe fn GetTargetFrameName(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetTargetFrameName)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetMiscStatus(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetMiscStatus)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Navigate<P0, P1, P2>(&self, grfhlnf: u32, pibc: P0, pibsc: P1, pihlbc: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindStatusCallback>>,
P2: ::std::convert::Into<::windows::core::InParam<IHlinkBrowseContext>>,
{
(::windows::core::Vtable::vtable(self).Navigate)(::windows::core::Vtable::as_raw(self), grfhlnf, pibc.into().abi(), pibsc.into().abi(), pihlbc.into().abi()).ok()
}
pub unsafe fn SetAdditionalParams<P0>(&self, pwzadditionalparams: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetAdditionalParams)(::windows::core::Vtable::as_raw(self), pwzadditionalparams.into().abi()).ok()
}
pub unsafe fn GetAdditionalParams(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetAdditionalParams)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IHlink, ::windows::core::IUnknown);
impl ::core::clone::Clone for IHlink {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IHlink {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IHlink {}
impl ::core::fmt::Debug for IHlink {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IHlink").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IHlink {
type Vtable = IHlink_Vtbl;
}
unsafe impl ::windows::core::Interface for IHlink {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x79eac9c3_baf9_11ce_8c82_00aa004ba90b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IHlink_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetHlinkSite: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pihlsite: *mut ::core::ffi::c_void, dwsitedata: u32) -> ::windows::core::HRESULT,
pub GetHlinkSite: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppihlsite: *mut *mut ::core::ffi::c_void, pdwsitedata: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub SetMonikerReference: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, grfhlsetf: u32, pimktarget: *mut ::core::ffi::c_void, pwzlocation: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
SetMonikerReference: usize,
#[cfg(feature = "Win32_System_Com")]
pub GetMonikerReference: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwwhichref: u32, ppimktarget: *mut *mut ::core::ffi::c_void, ppwzlocation: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
GetMonikerReference: usize,
pub SetStringReference: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, grfhlsetf: u32, pwztarget: ::windows::core::PCWSTR, pwzlocation: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub GetStringReference: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwwhichref: u32, ppwztarget: *mut ::windows::core::PWSTR, ppwzlocation: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub SetFriendlyName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwzfriendlyname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub GetFriendlyName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, grfhlfnamef: u32, ppwzfriendlyname: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub SetTargetFrameName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwztargetframename: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub GetTargetFrameName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppwztargetframename: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetMiscStatus: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwstatus: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub Navigate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, grfhlnf: u32, pibc: *mut ::core::ffi::c_void, pibsc: *mut ::core::ffi::c_void, pihlbc: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Navigate: usize,
pub SetAdditionalParams: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwzadditionalparams: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub GetAdditionalParams: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppwzadditionalparams: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IHlinkBrowseContext(::windows::core::IUnknown);
impl IHlinkBrowseContext {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Register<P0, P1>(&self, reserved: u32, piunk: P0, pimk: P1) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IMoniker>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Register)(::windows::core::Vtable::as_raw(self), reserved, piunk.into().abi(), pimk.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
pub unsafe fn GetObject<P0, P1>(&self, pimk: P0, fbindifrootregistered: P1) -> ::windows::core::Result<::windows::core::IUnknown>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IMoniker>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetObject)(::windows::core::Vtable::as_raw(self), pimk.into().abi(), fbindifrootregistered.into(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Revoke(&self, dwregister: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Revoke)(::windows::core::Vtable::as_raw(self), dwregister).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetBrowseWindowInfo(&self, phlbwi: *const HLBWINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetBrowseWindowInfo)(::windows::core::Vtable::as_raw(self), phlbwi).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetBrowseWindowInfo(&self, phlbwi: *mut HLBWINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetBrowseWindowInfo)(::windows::core::Vtable::as_raw(self), phlbwi).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn SetInitialHlink<P0, P1, P2>(&self, pimktarget: P0, pwzlocation: P1, pwzfriendlyname: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IMoniker>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetInitialHlink)(::windows::core::Vtable::as_raw(self), pimktarget.into().abi(), pwzlocation.into().abi(), pwzfriendlyname.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn OnNavigateHlink<P0, P1, P2>(&self, grfhlnf: u32, pimktarget: P0, pwzlocation: P1, pwzfriendlyname: P2) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IMoniker>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).OnNavigateHlink)(::windows::core::Vtable::as_raw(self), grfhlnf, pimktarget.into().abi(), pwzlocation.into().abi(), pwzfriendlyname.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn UpdateHlink<P0, P1, P2>(&self, uhlid: u32, pimktarget: P0, pwzlocation: P1, pwzfriendlyname: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IMoniker>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).UpdateHlink)(::windows::core::Vtable::as_raw(self), uhlid, pimktarget.into().abi(), pwzlocation.into().abi(), pwzfriendlyname.into().abi()).ok()
}
pub unsafe fn EnumNavigationStack(&self, dwreserved: u32, grfhlfnamef: u32) -> ::windows::core::Result<IEnumHLITEM> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).EnumNavigationStack)(::windows::core::Vtable::as_raw(self), dwreserved, grfhlfnamef, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn QueryHlink(&self, grfhlqf: u32, uhlid: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).QueryHlink)(::windows::core::Vtable::as_raw(self), grfhlqf, uhlid).ok()
}
pub unsafe fn GetHlink(&self, uhlid: u32) -> ::windows::core::Result<IHlink> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetHlink)(::windows::core::Vtable::as_raw(self), uhlid, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetCurrentHlink(&self, uhlid: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetCurrentHlink)(::windows::core::Vtable::as_raw(self), uhlid).ok()
}
pub unsafe fn Clone<P0>(&self, piunkouter: P0, riid: *const ::windows::core::GUID) -> ::windows::core::Result<::windows::core::IUnknown>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Clone)(::windows::core::Vtable::as_raw(self), piunkouter.into().abi(), riid, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Close(&self, reserved: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Close)(::windows::core::Vtable::as_raw(self), reserved).ok()
}
}
::windows::core::interface_hierarchy!(IHlinkBrowseContext, ::windows::core::IUnknown);
impl ::core::clone::Clone for IHlinkBrowseContext {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IHlinkBrowseContext {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IHlinkBrowseContext {}
impl ::core::fmt::Debug for IHlinkBrowseContext {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IHlinkBrowseContext").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IHlinkBrowseContext {
type Vtable = IHlinkBrowseContext_Vtbl;
}
unsafe impl ::windows::core::Interface for IHlinkBrowseContext {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x79eac9c7_baf9_11ce_8c82_00aa004ba90b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IHlinkBrowseContext_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub Register: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, reserved: u32, piunk: *mut ::core::ffi::c_void, pimk: *mut ::core::ffi::c_void, pdwregister: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Register: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
pub GetObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pimk: *mut ::core::ffi::c_void, fbindifrootregistered: super::super::Foundation::BOOL, ppiunk: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com")))]
GetObject: usize,
pub Revoke: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwregister: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub SetBrowseWindowInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phlbwi: *const HLBWINFO) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetBrowseWindowInfo: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetBrowseWindowInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phlbwi: *mut HLBWINFO) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetBrowseWindowInfo: usize,
#[cfg(feature = "Win32_System_Com")]
pub SetInitialHlink: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pimktarget: *mut ::core::ffi::c_void, pwzlocation: ::windows::core::PCWSTR, pwzfriendlyname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
SetInitialHlink: usize,
#[cfg(feature = "Win32_System_Com")]
pub OnNavigateHlink: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, grfhlnf: u32, pimktarget: *mut ::core::ffi::c_void, pwzlocation: ::windows::core::PCWSTR, pwzfriendlyname: ::windows::core::PCWSTR, puhlid: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
OnNavigateHlink: usize,
#[cfg(feature = "Win32_System_Com")]
pub UpdateHlink: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uhlid: u32, pimktarget: *mut ::core::ffi::c_void, pwzlocation: ::windows::core::PCWSTR, pwzfriendlyname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
UpdateHlink: usize,
pub EnumNavigationStack: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwreserved: u32, grfhlfnamef: u32, ppienumhlitem: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub QueryHlink: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, grfhlqf: u32, uhlid: u32) -> ::windows::core::HRESULT,
pub GetHlink: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uhlid: u32, ppihl: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetCurrentHlink: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uhlid: u32) -> ::windows::core::HRESULT,
pub Clone: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, piunkouter: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppiunkobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Close: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, reserved: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IHlinkFrame(::windows::core::IUnknown);
impl IHlinkFrame {
pub unsafe fn SetBrowseContext<P0>(&self, pihlbc: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IHlinkBrowseContext>>,
{
(::windows::core::Vtable::vtable(self).SetBrowseContext)(::windows::core::Vtable::as_raw(self), pihlbc.into().abi()).ok()
}
pub unsafe fn GetBrowseContext(&self) -> ::windows::core::Result<IHlinkBrowseContext> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetBrowseContext)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Navigate<P0, P1, P2>(&self, grfhlnf: u32, pbc: P0, pibsc: P1, pihlnavigate: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindStatusCallback>>,
P2: ::std::convert::Into<::windows::core::InParam<IHlink>>,
{
(::windows::core::Vtable::vtable(self).Navigate)(::windows::core::Vtable::as_raw(self), grfhlnf, pbc.into().abi(), pibsc.into().abi(), pihlnavigate.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn OnNavigate<P0, P1, P2>(&self, grfhlnf: u32, pimktarget: P0, pwzlocation: P1, pwzfriendlyname: P2, dwreserved: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IMoniker>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).OnNavigate)(::windows::core::Vtable::as_raw(self), grfhlnf, pimktarget.into().abi(), pwzlocation.into().abi(), pwzfriendlyname.into().abi(), dwreserved).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn UpdateHlink<P0, P1, P2>(&self, uhlid: u32, pimktarget: P0, pwzlocation: P1, pwzfriendlyname: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IMoniker>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).UpdateHlink)(::windows::core::Vtable::as_raw(self), uhlid, pimktarget.into().abi(), pwzlocation.into().abi(), pwzfriendlyname.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IHlinkFrame, ::windows::core::IUnknown);
impl ::core::clone::Clone for IHlinkFrame {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IHlinkFrame {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IHlinkFrame {}
impl ::core::fmt::Debug for IHlinkFrame {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IHlinkFrame").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IHlinkFrame {
type Vtable = IHlinkFrame_Vtbl;
}
unsafe impl ::windows::core::Interface for IHlinkFrame {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x79eac9c5_baf9_11ce_8c82_00aa004ba90b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IHlinkFrame_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetBrowseContext: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pihlbc: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetBrowseContext: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppihlbc: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub Navigate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, grfhlnf: u32, pbc: *mut ::core::ffi::c_void, pibsc: *mut ::core::ffi::c_void, pihlnavigate: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Navigate: usize,
#[cfg(feature = "Win32_System_Com")]
pub OnNavigate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, grfhlnf: u32, pimktarget: *mut ::core::ffi::c_void, pwzlocation: ::windows::core::PCWSTR, pwzfriendlyname: ::windows::core::PCWSTR, dwreserved: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
OnNavigate: usize,
#[cfg(feature = "Win32_System_Com")]
pub UpdateHlink: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uhlid: u32, pimktarget: *mut ::core::ffi::c_void, pwzlocation: ::windows::core::PCWSTR, pwzfriendlyname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
UpdateHlink: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IHlinkSite(::windows::core::IUnknown);
impl IHlinkSite {
pub unsafe fn QueryService(&self, dwsitedata: u32, guidservice: *const ::windows::core::GUID, riid: *const ::windows::core::GUID) -> ::windows::core::Result<::windows::core::IUnknown> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).QueryService)(::windows::core::Vtable::as_raw(self), dwsitedata, guidservice, riid, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn GetMoniker(&self, dwsitedata: u32, dwassign: u32, dwwhich: u32) -> ::windows::core::Result<super::super::System::Com::IMoniker> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetMoniker)(::windows::core::Vtable::as_raw(self), dwsitedata, dwassign, dwwhich, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn ReadyToNavigate(&self, dwsitedata: u32, dwreserved: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ReadyToNavigate)(::windows::core::Vtable::as_raw(self), dwsitedata, dwreserved).ok()
}
pub unsafe fn OnNavigationComplete<P0>(&self, dwsitedata: u32, dwreserved: u32, hrerror: ::windows::core::HRESULT, pwzerror: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).OnNavigationComplete)(::windows::core::Vtable::as_raw(self), dwsitedata, dwreserved, hrerror, pwzerror.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IHlinkSite, ::windows::core::IUnknown);
impl ::core::clone::Clone for IHlinkSite {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IHlinkSite {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IHlinkSite {}
impl ::core::fmt::Debug for IHlinkSite {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IHlinkSite").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IHlinkSite {
type Vtable = IHlinkSite_Vtbl;
}
unsafe impl ::windows::core::Interface for IHlinkSite {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x79eac9c2_baf9_11ce_8c82_00aa004ba90b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IHlinkSite_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub QueryService: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwsitedata: u32, guidservice: *const ::windows::core::GUID, riid: *const ::windows::core::GUID, ppiunk: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub GetMoniker: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwsitedata: u32, dwassign: u32, dwwhich: u32, ppimk: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
GetMoniker: usize,
pub ReadyToNavigate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwsitedata: u32, dwreserved: u32) -> ::windows::core::HRESULT,
pub OnNavigationComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwsitedata: u32, dwreserved: u32, hrerror: ::windows::core::HRESULT, pwzerror: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IHlinkTarget(::windows::core::IUnknown);
impl IHlinkTarget {
pub unsafe fn SetBrowseContext<P0>(&self, pihlbc: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IHlinkBrowseContext>>,
{
(::windows::core::Vtable::vtable(self).SetBrowseContext)(::windows::core::Vtable::as_raw(self), pihlbc.into().abi()).ok()
}
pub unsafe fn GetBrowseContext(&self) -> ::windows::core::Result<IHlinkBrowseContext> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetBrowseContext)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Navigate<P0>(&self, grfhlnf: u32, pwzjumplocation: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).Navigate)(::windows::core::Vtable::as_raw(self), grfhlnf, pwzjumplocation.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn GetMoniker<P0>(&self, pwzlocation: P0, dwassign: u32) -> ::windows::core::Result<super::super::System::Com::IMoniker>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetMoniker)(::windows::core::Vtable::as_raw(self), pwzlocation.into().abi(), dwassign, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetFriendlyName<P0>(&self, pwzlocation: P0) -> ::windows::core::Result<::windows::core::PWSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFriendlyName)(::windows::core::Vtable::as_raw(self), pwzlocation.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IHlinkTarget, ::windows::core::IUnknown);
impl ::core::clone::Clone for IHlinkTarget {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IHlinkTarget {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IHlinkTarget {}
impl ::core::fmt::Debug for IHlinkTarget {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IHlinkTarget").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IHlinkTarget {
type Vtable = IHlinkTarget_Vtbl;
}
unsafe impl ::windows::core::Interface for IHlinkTarget {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x79eac9c4_baf9_11ce_8c82_00aa004ba90b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IHlinkTarget_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetBrowseContext: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pihlbc: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetBrowseContext: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppihlbc: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Navigate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, grfhlnf: u32, pwzjumplocation: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub GetMoniker: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwzlocation: ::windows::core::PCWSTR, dwassign: u32, ppimklocation: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
GetMoniker: usize,
pub GetFriendlyName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwzlocation: ::windows::core::PCWSTR, ppwzfriendlyname: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IHomeGroup(::windows::core::IUnknown);
impl IHomeGroup {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsMember(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IsMember)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ShowSharingWizard<P0>(&self, owner: P0) -> ::windows::core::Result<HOMEGROUPSHARINGCHOICES>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ShowSharingWizard)(::windows::core::Vtable::as_raw(self), owner.into(), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IHomeGroup, ::windows::core::IUnknown);
impl ::core::clone::Clone for IHomeGroup {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IHomeGroup {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IHomeGroup {}
impl ::core::fmt::Debug for IHomeGroup {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IHomeGroup").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IHomeGroup {
type Vtable = IHomeGroup_Vtbl;
}
unsafe impl ::windows::core::Interface for IHomeGroup {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7a3bd1d9_35a9_4fb3_a467_f48cac35e2d0);
}
#[repr(C)]
#[doc(hidden)]
pub struct IHomeGroup_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub IsMember: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, member: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
IsMember: usize,
#[cfg(feature = "Win32_Foundation")]
pub ShowSharingWizard: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, owner: super::super::Foundation::HWND, sharingchoices: *mut HOMEGROUPSHARINGCHOICES) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
ShowSharingWizard: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IIOCancelInformation(::windows::core::IUnknown);
impl IIOCancelInformation {
pub unsafe fn SetCancelInformation(&self, dwthreadid: u32, umsgcancel: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetCancelInformation)(::windows::core::Vtable::as_raw(self), dwthreadid, umsgcancel).ok()
}
pub unsafe fn GetCancelInformation(&self, pdwthreadid: ::core::option::Option<*mut u32>, pumsgcancel: ::core::option::Option<*mut u32>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetCancelInformation)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pdwthreadid.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pumsgcancel.unwrap_or(::std::ptr::null_mut()))).ok()
}
}
::windows::core::interface_hierarchy!(IIOCancelInformation, ::windows::core::IUnknown);
impl ::core::clone::Clone for IIOCancelInformation {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IIOCancelInformation {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IIOCancelInformation {}
impl ::core::fmt::Debug for IIOCancelInformation {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IIOCancelInformation").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IIOCancelInformation {
type Vtable = IIOCancelInformation_Vtbl;
}
unsafe impl ::windows::core::Interface for IIOCancelInformation {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf5b0bf81_8cb5_4b1b_9449_1a159e0c733c);
}
#[repr(C)]
#[doc(hidden)]
pub struct IIOCancelInformation_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetCancelInformation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwthreadid: u32, umsgcancel: u32) -> ::windows::core::HRESULT,
pub GetCancelInformation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwthreadid: *mut u32, pumsgcancel: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IIdentityName(::windows::core::IUnknown);
impl IIdentityName {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetItemIDList(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItemIDList)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetItem(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItem)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IIdentityName, ::windows::core::IUnknown, IRelatedItem);
impl ::core::clone::Clone for IIdentityName {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IIdentityName {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IIdentityName {}
impl ::core::fmt::Debug for IIdentityName {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IIdentityName").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IIdentityName {
type Vtable = IIdentityName_Vtbl;
}
unsafe impl ::windows::core::Interface for IIdentityName {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7d903fca_d6f9_4810_8332_946c0177e247);
}
#[repr(C)]
#[doc(hidden)]
pub struct IIdentityName_Vtbl {
pub base__: IRelatedItem_Vtbl,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IImageRecompress(::windows::core::IUnknown);
impl IImageRecompress {
#[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"]
#[cfg(feature = "Win32_System_Com_StructuredStorage")]
pub unsafe fn RecompressImage<P0, P1>(&self, psi: P0, cx: i32, cy: i32, iquality: i32, pstg: P1) -> ::windows::core::Result<super::super::System::Com::IStream>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::StructuredStorage::IStorage>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).RecompressImage)(::windows::core::Vtable::as_raw(self), psi.into().abi(), cx, cy, iquality, pstg.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IImageRecompress, ::windows::core::IUnknown);
impl ::core::clone::Clone for IImageRecompress {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IImageRecompress {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IImageRecompress {}
impl ::core::fmt::Debug for IImageRecompress {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IImageRecompress").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IImageRecompress {
type Vtable = IImageRecompress_Vtbl;
}
unsafe impl ::windows::core::Interface for IImageRecompress {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x505f1513_6b3e_4892_a272_59f8889a4d3e);
}
#[repr(C)]
#[doc(hidden)]
pub struct IImageRecompress_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_System_Com_StructuredStorage")]
pub RecompressImage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, cx: i32, cy: i32, iquality: i32, pstg: *mut ::core::ffi::c_void, ppstrmout: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com_StructuredStorage"))]
RecompressImage: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IInitializeCommand(::windows::core::IUnknown);
impl IInitializeCommand {
#[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"]
#[cfg(feature = "Win32_System_Com_StructuredStorage")]
pub unsafe fn Initialize<P0, P1>(&self, pszcommandname: P0, ppb: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::StructuredStorage::IPropertyBag>>,
{
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self), pszcommandname.into().abi(), ppb.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IInitializeCommand, ::windows::core::IUnknown);
impl ::core::clone::Clone for IInitializeCommand {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IInitializeCommand {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IInitializeCommand {}
impl ::core::fmt::Debug for IInitializeCommand {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IInitializeCommand").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IInitializeCommand {
type Vtable = IInitializeCommand_Vtbl;
}
unsafe impl ::windows::core::Interface for IInitializeCommand {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x85075acf_231f_40ea_9610_d26b7b58f638);
}
#[repr(C)]
#[doc(hidden)]
pub struct IInitializeCommand_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_System_Com_StructuredStorage")]
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszcommandname: ::windows::core::PCWSTR, ppb: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com_StructuredStorage"))]
Initialize: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IInitializeNetworkFolder(::windows::core::IUnknown);
impl IInitializeNetworkFolder {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn Initialize<P0, P1>(&self, pidl: *const Common::ITEMIDLIST, pidltarget: *const Common::ITEMIDLIST, udisplaytype: u32, pszresname: P0, pszprovider: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self), pidl, pidltarget, udisplaytype, pszresname.into().abi(), pszprovider.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IInitializeNetworkFolder, ::windows::core::IUnknown);
impl ::core::clone::Clone for IInitializeNetworkFolder {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IInitializeNetworkFolder {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IInitializeNetworkFolder {}
impl ::core::fmt::Debug for IInitializeNetworkFolder {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IInitializeNetworkFolder").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IInitializeNetworkFolder {
type Vtable = IInitializeNetworkFolder_Vtbl;
}
unsafe impl ::windows::core::Interface for IInitializeNetworkFolder {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6e0f9881_42a8_4f2a_97f8_8af4e026d92d);
}
#[repr(C)]
#[doc(hidden)]
pub struct IInitializeNetworkFolder_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, pidltarget: *const Common::ITEMIDLIST, udisplaytype: u32, pszresname: ::windows::core::PCWSTR, pszprovider: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
Initialize: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IInitializeObject(::windows::core::IUnknown);
impl IInitializeObject {
pub unsafe fn Initialize(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IInitializeObject, ::windows::core::IUnknown);
impl ::core::clone::Clone for IInitializeObject {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IInitializeObject {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IInitializeObject {}
impl ::core::fmt::Debug for IInitializeObject {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IInitializeObject").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IInitializeObject {
type Vtable = IInitializeObject_Vtbl;
}
unsafe impl ::windows::core::Interface for IInitializeObject {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4622ad16_ff23_11d0_8d34_00a0c90f2719);
}
#[repr(C)]
#[doc(hidden)]
pub struct IInitializeObject_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IInitializeWithBindCtx(::windows::core::IUnknown);
impl IInitializeWithBindCtx {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Initialize<P0>(&self, pbc: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
{
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self), pbc.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IInitializeWithBindCtx, ::windows::core::IUnknown);
impl ::core::clone::Clone for IInitializeWithBindCtx {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IInitializeWithBindCtx {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IInitializeWithBindCtx {}
impl ::core::fmt::Debug for IInitializeWithBindCtx {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IInitializeWithBindCtx").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IInitializeWithBindCtx {
type Vtable = IInitializeWithBindCtx_Vtbl;
}
unsafe impl ::windows::core::Interface for IInitializeWithBindCtx {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x71c0d2bc_726d_45cc_a6c0_2e31c1db2159);
}
#[repr(C)]
#[doc(hidden)]
pub struct IInitializeWithBindCtx_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbc: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Initialize: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IInitializeWithItem(::windows::core::IUnknown);
impl IInitializeWithItem {
pub unsafe fn Initialize<P0>(&self, psi: P0, grfmode: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self), psi.into().abi(), grfmode).ok()
}
}
::windows::core::interface_hierarchy!(IInitializeWithItem, ::windows::core::IUnknown);
impl ::core::clone::Clone for IInitializeWithItem {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IInitializeWithItem {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IInitializeWithItem {}
impl ::core::fmt::Debug for IInitializeWithItem {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IInitializeWithItem").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IInitializeWithItem {
type Vtable = IInitializeWithItem_Vtbl;
}
unsafe impl ::windows::core::Interface for IInitializeWithItem {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7f73be3f_fb79_493c_a6c7_7ee14e245841);
}
#[repr(C)]
#[doc(hidden)]
pub struct IInitializeWithItem_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, grfmode: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IInitializeWithPropertyStore(::windows::core::IUnknown);
impl IInitializeWithPropertyStore {
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn Initialize<P0>(&self, pps: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<PropertiesSystem::IPropertyStore>>,
{
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self), pps.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IInitializeWithPropertyStore, ::windows::core::IUnknown);
impl ::core::clone::Clone for IInitializeWithPropertyStore {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IInitializeWithPropertyStore {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IInitializeWithPropertyStore {}
impl ::core::fmt::Debug for IInitializeWithPropertyStore {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IInitializeWithPropertyStore").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IInitializeWithPropertyStore {
type Vtable = IInitializeWithPropertyStore_Vtbl;
}
unsafe impl ::windows::core::Interface for IInitializeWithPropertyStore {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc3e12eb5_7d8d_44f8_b6dd_0e77b34d6de4);
}
#[repr(C)]
#[doc(hidden)]
pub struct IInitializeWithPropertyStore_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pps: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
Initialize: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IInitializeWithWindow(::windows::core::IUnknown);
impl IInitializeWithWindow {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Initialize<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
}
::windows::core::interface_hierarchy!(IInitializeWithWindow, ::windows::core::IUnknown);
impl ::core::clone::Clone for IInitializeWithWindow {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IInitializeWithWindow {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IInitializeWithWindow {}
impl ::core::fmt::Debug for IInitializeWithWindow {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IInitializeWithWindow").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IInitializeWithWindow {
type Vtable = IInitializeWithWindow_Vtbl;
}
unsafe impl ::windows::core::Interface for IInitializeWithWindow {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3e68d4bd_7135_4d10_8018_9fb6d9f33fa1);
}
#[repr(C)]
#[doc(hidden)]
pub struct IInitializeWithWindow_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Initialize: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IInputObject(::windows::core::IUnknown);
impl IInputObject {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn UIActivateIO<P0>(&self, factivate: P0, pmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).UIActivateIO)(::windows::core::Vtable::as_raw(self), factivate.into(), pmsg).ok()
}
pub unsafe fn HasFocusIO(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).HasFocusIO)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn TranslateAcceleratorIO(&self, pmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).TranslateAcceleratorIO)(::windows::core::Vtable::as_raw(self), pmsg).ok()
}
}
::windows::core::interface_hierarchy!(IInputObject, ::windows::core::IUnknown);
impl ::core::clone::Clone for IInputObject {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IInputObject {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IInputObject {}
impl ::core::fmt::Debug for IInputObject {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IInputObject").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IInputObject {
type Vtable = IInputObject_Vtbl;
}
unsafe impl ::windows::core::Interface for IInputObject {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x68284faa_6a48_11d0_8c78_00c04fd918b4);
}
#[repr(C)]
#[doc(hidden)]
pub struct IInputObject_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub UIActivateIO: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, factivate: super::super::Foundation::BOOL, pmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
UIActivateIO: usize,
pub HasFocusIO: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub TranslateAcceleratorIO: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
TranslateAcceleratorIO: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IInputObject2(::windows::core::IUnknown);
impl IInputObject2 {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn UIActivateIO<P0>(&self, factivate: P0, pmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.UIActivateIO)(::windows::core::Vtable::as_raw(self), factivate.into(), pmsg).ok()
}
pub unsafe fn HasFocusIO(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.HasFocusIO)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn TranslateAcceleratorIO(&self, pmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.TranslateAcceleratorIO)(::windows::core::Vtable::as_raw(self), pmsg).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn TranslateAcceleratorGlobal(&self, pmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).TranslateAcceleratorGlobal)(::windows::core::Vtable::as_raw(self), pmsg).ok()
}
}
::windows::core::interface_hierarchy!(IInputObject2, ::windows::core::IUnknown, IInputObject);
impl ::core::clone::Clone for IInputObject2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IInputObject2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IInputObject2 {}
impl ::core::fmt::Debug for IInputObject2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IInputObject2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IInputObject2 {
type Vtable = IInputObject2_Vtbl;
}
unsafe impl ::windows::core::Interface for IInputObject2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6915c085_510b_44cd_94af_28dfa56cf92b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IInputObject2_Vtbl {
pub base__: IInputObject_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub TranslateAcceleratorGlobal: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
TranslateAcceleratorGlobal: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IInputObjectSite(::windows::core::IUnknown);
impl IInputObjectSite {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnFocusChangeIS<P0, P1>(&self, punkobj: P0, fsetfocus: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).OnFocusChangeIS)(::windows::core::Vtable::as_raw(self), punkobj.into().abi(), fsetfocus.into()).ok()
}
}
::windows::core::interface_hierarchy!(IInputObjectSite, ::windows::core::IUnknown);
impl ::core::clone::Clone for IInputObjectSite {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IInputObjectSite {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IInputObjectSite {}
impl ::core::fmt::Debug for IInputObjectSite {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IInputObjectSite").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IInputObjectSite {
type Vtable = IInputObjectSite_Vtbl;
}
unsafe impl ::windows::core::Interface for IInputObjectSite {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf1db8392_7331_11d0_8c99_00a0c92dbfe8);
}
#[repr(C)]
#[doc(hidden)]
pub struct IInputObjectSite_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub OnFocusChangeIS: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punkobj: *mut ::core::ffi::c_void, fsetfocus: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
OnFocusChangeIS: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IInputPaneAnimationCoordinator(::windows::core::IUnknown);
impl IInputPaneAnimationCoordinator {
#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
#[cfg(feature = "Win32_Graphics_DirectComposition")]
pub unsafe fn AddAnimation<P0, P1>(&self, device: P0, animation: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::Graphics::DirectComposition::IDCompositionAnimation>>,
{
(::windows::core::Vtable::vtable(self).AddAnimation)(::windows::core::Vtable::as_raw(self), device.into().abi(), animation.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IInputPaneAnimationCoordinator, ::windows::core::IUnknown);
impl ::core::clone::Clone for IInputPaneAnimationCoordinator {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IInputPaneAnimationCoordinator {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IInputPaneAnimationCoordinator {}
impl ::core::fmt::Debug for IInputPaneAnimationCoordinator {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IInputPaneAnimationCoordinator").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IInputPaneAnimationCoordinator {
type Vtable = IInputPaneAnimationCoordinator_Vtbl;
}
unsafe impl ::windows::core::Interface for IInputPaneAnimationCoordinator {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2af16ba9_2de5_4b75_82d9_01372afbffb4);
}
#[repr(C)]
#[doc(hidden)]
pub struct IInputPaneAnimationCoordinator_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Graphics_DirectComposition")]
pub AddAnimation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, device: *mut ::core::ffi::c_void, animation: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_DirectComposition"))]
AddAnimation: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IInputPanelConfiguration(::windows::core::IUnknown);
impl IInputPanelConfiguration {
pub unsafe fn EnableFocusTracking(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).EnableFocusTracking)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IInputPanelConfiguration, ::windows::core::IUnknown);
impl ::core::clone::Clone for IInputPanelConfiguration {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IInputPanelConfiguration {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IInputPanelConfiguration {}
impl ::core::fmt::Debug for IInputPanelConfiguration {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IInputPanelConfiguration").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IInputPanelConfiguration {
type Vtable = IInputPanelConfiguration_Vtbl;
}
unsafe impl ::windows::core::Interface for IInputPanelConfiguration {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x41c81592_514c_48bd_a22e_e6af638521a6);
}
#[repr(C)]
#[doc(hidden)]
pub struct IInputPanelConfiguration_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub EnableFocusTracking: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IInputPanelInvocationConfiguration(::windows::core::IUnknown);
impl IInputPanelInvocationConfiguration {
pub unsafe fn RequireTouchInEditControl(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RequireTouchInEditControl)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IInputPanelInvocationConfiguration, ::windows::core::IUnknown);
impl ::core::clone::Clone for IInputPanelInvocationConfiguration {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IInputPanelInvocationConfiguration {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IInputPanelInvocationConfiguration {}
impl ::core::fmt::Debug for IInputPanelInvocationConfiguration {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IInputPanelInvocationConfiguration").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IInputPanelInvocationConfiguration {
type Vtable = IInputPanelInvocationConfiguration_Vtbl;
}
unsafe impl ::windows::core::Interface for IInputPanelInvocationConfiguration {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa213f136_3b45_4362_a332_efb6547cd432);
}
#[repr(C)]
#[doc(hidden)]
pub struct IInputPanelInvocationConfiguration_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub RequireTouchInEditControl: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IInsertItem(::windows::core::IUnknown);
impl IInsertItem {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn InsertItem(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).InsertItem)(::windows::core::Vtable::as_raw(self), pidl).ok()
}
}
::windows::core::interface_hierarchy!(IInsertItem, ::windows::core::IUnknown);
impl ::core::clone::Clone for IInsertItem {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IInsertItem {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IInsertItem {}
impl ::core::fmt::Debug for IInsertItem {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IInsertItem").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IInsertItem {
type Vtable = IInsertItem_Vtbl;
}
unsafe impl ::windows::core::Interface for IInsertItem {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd2b57227_3d23_4b95_93c0_492bd454c356);
}
#[repr(C)]
#[doc(hidden)]
pub struct IInsertItem_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub InsertItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
InsertItem: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IItemNameLimits(::windows::core::IUnknown);
impl IItemNameLimits {
pub unsafe fn GetValidCharacters(&self, ppwszvalidchars: *mut ::windows::core::PWSTR, ppwszinvalidchars: *mut ::windows::core::PWSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetValidCharacters)(::windows::core::Vtable::as_raw(self), ppwszvalidchars, ppwszinvalidchars).ok()
}
pub unsafe fn GetMaxLength<P0>(&self, pszname: P0) -> ::windows::core::Result<i32>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetMaxLength)(::windows::core::Vtable::as_raw(self), pszname.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IItemNameLimits, ::windows::core::IUnknown);
impl ::core::clone::Clone for IItemNameLimits {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IItemNameLimits {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IItemNameLimits {}
impl ::core::fmt::Debug for IItemNameLimits {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IItemNameLimits").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IItemNameLimits {
type Vtable = IItemNameLimits_Vtbl;
}
unsafe impl ::windows::core::Interface for IItemNameLimits {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1df0d7f1_b267_4d28_8b10_12e23202a5c4);
}
#[repr(C)]
#[doc(hidden)]
pub struct IItemNameLimits_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetValidCharacters: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppwszvalidchars: *mut ::windows::core::PWSTR, ppwszinvalidchars: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetMaxLength: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszname: ::windows::core::PCWSTR, pimaxnamelen: *mut i32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IKnownFolder(::windows::core::IUnknown);
impl IKnownFolder {
pub unsafe fn GetId(&self) -> ::windows::core::Result<::windows::core::GUID> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetId)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetCategory(&self) -> ::windows::core::Result<KF_CATEGORY> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCategory)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetShellItem<T>(&self, dwflags: u32) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetShellItem)(::windows::core::Vtable::as_raw(self), dwflags, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetPath(&self, dwflags: u32) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPath)(::windows::core::Vtable::as_raw(self), dwflags, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetPath<P0>(&self, dwflags: u32, pszpath: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetPath)(::windows::core::Vtable::as_raw(self), dwflags, pszpath.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetIDList(&self, dwflags: u32) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetIDList)(::windows::core::Vtable::as_raw(self), dwflags, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetFolderType(&self) -> ::windows::core::Result<::windows::core::GUID> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFolderType)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetRedirectionCapabilities(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetRedirectionCapabilities)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetFolderDefinition(&self, pkfd: *mut KNOWNFOLDER_DEFINITION) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetFolderDefinition)(::windows::core::Vtable::as_raw(self), pkfd).ok()
}
}
::windows::core::interface_hierarchy!(IKnownFolder, ::windows::core::IUnknown);
impl ::core::clone::Clone for IKnownFolder {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IKnownFolder {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IKnownFolder {}
impl ::core::fmt::Debug for IKnownFolder {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IKnownFolder").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IKnownFolder {
type Vtable = IKnownFolder_Vtbl;
}
unsafe impl ::windows::core::Interface for IKnownFolder {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3aa7af7e_9b36_420c_a8e3_f77d4674a488);
}
#[repr(C)]
#[doc(hidden)]
pub struct IKnownFolder_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pkfid: *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
pub GetCategory: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcategory: *mut KF_CATEGORY) -> ::windows::core::HRESULT,
pub GetShellItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetPath: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32, ppszpath: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub SetPath: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32, pszpath: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetIDList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32, ppidl: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetIDList: usize,
pub GetFolderType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pftid: *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
pub GetRedirectionCapabilities: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcapabilities: *mut u32) -> ::windows::core::HRESULT,
pub GetFolderDefinition: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pkfd: *mut KNOWNFOLDER_DEFINITION) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IKnownFolderManager(::windows::core::IUnknown);
impl IKnownFolderManager {
pub unsafe fn FolderIdFromCsidl(&self, ncsidl: i32) -> ::windows::core::Result<::windows::core::GUID> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).FolderIdFromCsidl)(::windows::core::Vtable::as_raw(self), ncsidl, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn FolderIdToCsidl(&self, rfid: *const ::windows::core::GUID) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).FolderIdToCsidl)(::windows::core::Vtable::as_raw(self), rfid, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetFolderIds(&self, ppkfid: *mut *mut ::windows::core::GUID, pcount: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetFolderIds)(::windows::core::Vtable::as_raw(self), ppkfid, pcount).ok()
}
pub unsafe fn GetFolder(&self, rfid: *const ::windows::core::GUID) -> ::windows::core::Result<IKnownFolder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFolder)(::windows::core::Vtable::as_raw(self), rfid, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetFolderByName<P0>(&self, pszcanonicalname: P0) -> ::windows::core::Result<IKnownFolder>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFolderByName)(::windows::core::Vtable::as_raw(self), pszcanonicalname.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn RegisterFolder(&self, rfid: *const ::windows::core::GUID, pkfd: *const KNOWNFOLDER_DEFINITION) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RegisterFolder)(::windows::core::Vtable::as_raw(self), rfid, pkfd).ok()
}
pub unsafe fn UnregisterFolder(&self, rfid: *const ::windows::core::GUID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UnregisterFolder)(::windows::core::Vtable::as_raw(self), rfid).ok()
}
pub unsafe fn FindFolderFromPath<P0>(&self, pszpath: P0, mode: FFFP_MODE) -> ::windows::core::Result<IKnownFolder>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).FindFolderFromPath)(::windows::core::Vtable::as_raw(self), pszpath.into().abi(), mode, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn FindFolderFromIDList(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<IKnownFolder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).FindFolderFromIDList)(::windows::core::Vtable::as_raw(self), pidl, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Redirect<P0, P1>(&self, rfid: *const ::windows::core::GUID, hwnd: P0, flags: u32, psztargetpath: P1, pexclusion: ::core::option::Option<&[::windows::core::GUID]>, ppszerror: ::core::option::Option<*mut ::windows::core::PWSTR>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).Redirect)(::windows::core::Vtable::as_raw(self), rfid, hwnd.into(), flags, psztargetpath.into().abi(), pexclusion.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pexclusion.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), ::core::mem::transmute(ppszerror.unwrap_or(::std::ptr::null_mut()))).ok()
}
}
::windows::core::interface_hierarchy!(IKnownFolderManager, ::windows::core::IUnknown);
impl ::core::clone::Clone for IKnownFolderManager {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IKnownFolderManager {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IKnownFolderManager {}
impl ::core::fmt::Debug for IKnownFolderManager {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IKnownFolderManager").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IKnownFolderManager {
type Vtable = IKnownFolderManager_Vtbl;
}
unsafe impl ::windows::core::Interface for IKnownFolderManager {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8be2d872_86aa_4d47_b776_32cca40c7018);
}
#[repr(C)]
#[doc(hidden)]
pub struct IKnownFolderManager_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub FolderIdFromCsidl: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ncsidl: i32, pfid: *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
pub FolderIdToCsidl: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rfid: *const ::windows::core::GUID, pncsidl: *mut i32) -> ::windows::core::HRESULT,
pub GetFolderIds: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppkfid: *mut *mut ::windows::core::GUID, pcount: *mut u32) -> ::windows::core::HRESULT,
pub GetFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rfid: *const ::windows::core::GUID, ppkf: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetFolderByName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszcanonicalname: ::windows::core::PCWSTR, ppkf: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub RegisterFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rfid: *const ::windows::core::GUID, pkfd: *const KNOWNFOLDER_DEFINITION) -> ::windows::core::HRESULT,
pub UnregisterFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rfid: *const ::windows::core::GUID) -> ::windows::core::HRESULT,
pub FindFolderFromPath: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszpath: ::windows::core::PCWSTR, mode: FFFP_MODE, ppkf: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub FindFolderFromIDList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, ppkf: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
FindFolderFromIDList: usize,
#[cfg(feature = "Win32_Foundation")]
pub Redirect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rfid: *const ::windows::core::GUID, hwnd: super::super::Foundation::HWND, flags: u32, psztargetpath: ::windows::core::PCWSTR, cfolders: u32, pexclusion: *const ::windows::core::GUID, ppszerror: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Redirect: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ILaunchSourceAppUserModelId(::windows::core::IUnknown);
impl ILaunchSourceAppUserModelId {
pub unsafe fn GetAppUserModelId(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetAppUserModelId)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ILaunchSourceAppUserModelId, ::windows::core::IUnknown);
impl ::core::clone::Clone for ILaunchSourceAppUserModelId {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ILaunchSourceAppUserModelId {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ILaunchSourceAppUserModelId {}
impl ::core::fmt::Debug for ILaunchSourceAppUserModelId {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ILaunchSourceAppUserModelId").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ILaunchSourceAppUserModelId {
type Vtable = ILaunchSourceAppUserModelId_Vtbl;
}
unsafe impl ::windows::core::Interface for ILaunchSourceAppUserModelId {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x989191ac_28ff_4cf0_9584_e0d078bc2396);
}
#[repr(C)]
#[doc(hidden)]
pub struct ILaunchSourceAppUserModelId_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetAppUserModelId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, launchingapp: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ILaunchSourceViewSizePreference(::windows::core::IUnknown);
impl ILaunchSourceViewSizePreference {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetSourceViewToPosition(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSourceViewToPosition)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetSourceViewSizePreference(&self) -> ::windows::core::Result<APPLICATION_VIEW_SIZE_PREFERENCE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSourceViewSizePreference)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ILaunchSourceViewSizePreference, ::windows::core::IUnknown);
impl ::core::clone::Clone for ILaunchSourceViewSizePreference {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ILaunchSourceViewSizePreference {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ILaunchSourceViewSizePreference {}
impl ::core::fmt::Debug for ILaunchSourceViewSizePreference {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ILaunchSourceViewSizePreference").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ILaunchSourceViewSizePreference {
type Vtable = ILaunchSourceViewSizePreference_Vtbl;
}
unsafe impl ::windows::core::Interface for ILaunchSourceViewSizePreference {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe5aa01f7_1fb8_4830_8720_4e6734cbd5f3);
}
#[repr(C)]
#[doc(hidden)]
pub struct ILaunchSourceViewSizePreference_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub GetSourceViewToPosition: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: *mut super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetSourceViewToPosition: usize,
pub GetSourceViewSizePreference: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, sourcesizeafterlaunch: *mut APPLICATION_VIEW_SIZE_PREFERENCE) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ILaunchTargetMonitor(::windows::core::IUnknown);
impl ILaunchTargetMonitor {
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn GetMonitor(&self) -> ::windows::core::Result<super::super::Graphics::Gdi::HMONITOR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetMonitor)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ILaunchTargetMonitor, ::windows::core::IUnknown);
impl ::core::clone::Clone for ILaunchTargetMonitor {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ILaunchTargetMonitor {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ILaunchTargetMonitor {}
impl ::core::fmt::Debug for ILaunchTargetMonitor {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ILaunchTargetMonitor").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ILaunchTargetMonitor {
type Vtable = ILaunchTargetMonitor_Vtbl;
}
unsafe impl ::windows::core::Interface for ILaunchTargetMonitor {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x266fbc7e_490d_46ed_a96b_2274db252003);
}
#[repr(C)]
#[doc(hidden)]
pub struct ILaunchTargetMonitor_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Graphics_Gdi")]
pub GetMonitor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, monitor: *mut super::super::Graphics::Gdi::HMONITOR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Gdi"))]
GetMonitor: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ILaunchTargetViewSizePreference(::windows::core::IUnknown);
impl ILaunchTargetViewSizePreference {
pub unsafe fn GetTargetViewSizePreference(&self) -> ::windows::core::Result<APPLICATION_VIEW_SIZE_PREFERENCE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetTargetViewSizePreference)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ILaunchTargetViewSizePreference, ::windows::core::IUnknown);
impl ::core::clone::Clone for ILaunchTargetViewSizePreference {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ILaunchTargetViewSizePreference {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ILaunchTargetViewSizePreference {}
impl ::core::fmt::Debug for ILaunchTargetViewSizePreference {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ILaunchTargetViewSizePreference").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ILaunchTargetViewSizePreference {
type Vtable = ILaunchTargetViewSizePreference_Vtbl;
}
unsafe impl ::windows::core::Interface for ILaunchTargetViewSizePreference {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2f0666c6_12f7_4360_b511_a394a0553725);
}
#[repr(C)]
#[doc(hidden)]
pub struct ILaunchTargetViewSizePreference_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetTargetViewSizePreference: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, targetsizeonlaunch: *mut APPLICATION_VIEW_SIZE_PREFERENCE) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ILaunchUIContext(::windows::core::IUnknown);
impl ILaunchUIContext {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetAssociatedWindow<P0>(&self, value: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).SetAssociatedWindow)(::windows::core::Vtable::as_raw(self), value.into()).ok()
}
pub unsafe fn SetTabGroupingPreference(&self, value: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetTabGroupingPreference)(::windows::core::Vtable::as_raw(self), value).ok()
}
}
::windows::core::interface_hierarchy!(ILaunchUIContext, ::windows::core::IUnknown);
impl ::core::clone::Clone for ILaunchUIContext {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ILaunchUIContext {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ILaunchUIContext {}
impl ::core::fmt::Debug for ILaunchUIContext {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ILaunchUIContext").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ILaunchUIContext {
type Vtable = ILaunchUIContext_Vtbl;
}
unsafe impl ::windows::core::Interface for ILaunchUIContext {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1791e8f6_21c7_4340_882a_a6a93e3fd73b);
}
#[repr(C)]
#[doc(hidden)]
pub struct ILaunchUIContext_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub SetAssociatedWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetAssociatedWindow: usize,
pub SetTabGroupingPreference: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ILaunchUIContextProvider(::windows::core::IUnknown);
impl ILaunchUIContextProvider {
pub unsafe fn UpdateContext<P0>(&self, context: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ILaunchUIContext>>,
{
(::windows::core::Vtable::vtable(self).UpdateContext)(::windows::core::Vtable::as_raw(self), context.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(ILaunchUIContextProvider, ::windows::core::IUnknown);
impl ::core::clone::Clone for ILaunchUIContextProvider {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ILaunchUIContextProvider {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ILaunchUIContextProvider {}
impl ::core::fmt::Debug for ILaunchUIContextProvider {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ILaunchUIContextProvider").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ILaunchUIContextProvider {
type Vtable = ILaunchUIContextProvider_Vtbl;
}
unsafe impl ::windows::core::Interface for ILaunchUIContextProvider {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0d12c4c8_a3d9_4e24_94c1_0e20c5a956c4);
}
#[repr(C)]
#[doc(hidden)]
pub struct ILaunchUIContextProvider_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub UpdateContext: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, context: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IMenuBand(::windows::core::IUnknown);
impl IMenuBand {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn IsMenuMessage(&self, pmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).IsMenuMessage)(::windows::core::Vtable::as_raw(self), pmsg).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn TranslateMenuMessage(&self, pmsg: *mut super::WindowsAndMessaging::MSG, plret: *mut super::super::Foundation::LRESULT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).TranslateMenuMessage)(::windows::core::Vtable::as_raw(self), pmsg, plret).ok()
}
}
::windows::core::interface_hierarchy!(IMenuBand, ::windows::core::IUnknown);
impl ::core::clone::Clone for IMenuBand {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IMenuBand {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IMenuBand {}
impl ::core::fmt::Debug for IMenuBand {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IMenuBand").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IMenuBand {
type Vtable = IMenuBand_Vtbl;
}
unsafe impl ::windows::core::Interface for IMenuBand {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x568804cd_cbd7_11d0_9816_00c04fd91972);
}
#[repr(C)]
#[doc(hidden)]
pub struct IMenuBand_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub IsMenuMessage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
IsMenuMessage: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub TranslateMenuMessage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pmsg: *mut super::WindowsAndMessaging::MSG, plret: *mut super::super::Foundation::LRESULT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
TranslateMenuMessage: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
#[repr(transparent)]
pub struct IMenuPopup(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Ole")]
impl IMenuPopup {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn GetWindow(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetWindow)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn ContextSensitiveHelp<P0>(&self, fentermode: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.ContextSensitiveHelp)(::windows::core::Vtable::as_raw(self), fentermode.into()).ok()
}
pub unsafe fn SetClient<P0>(&self, punkclient: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).base__.SetClient)(::windows::core::Vtable::as_raw(self), punkclient.into().abi()).ok()
}
pub unsafe fn GetClient(&self) -> ::windows::core::Result<::windows::core::IUnknown> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetClient)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnPosRectChangeDB(&self, prc: *const super::super::Foundation::RECT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.OnPosRectChangeDB)(::windows::core::Vtable::as_raw(self), prc).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Popup(&self, ppt: *const super::super::Foundation::POINTL, prcexclude: ::core::option::Option<*const super::super::Foundation::RECTL>, dwflags: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Popup)(::windows::core::Vtable::as_raw(self), ppt, ::core::mem::transmute(prcexclude.unwrap_or(::std::ptr::null())), dwflags).ok()
}
pub unsafe fn OnSelect(&self, dwselecttype: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OnSelect)(::windows::core::Vtable::as_raw(self), dwselecttype).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn SetSubMenu<P0, P1>(&self, pmp: P0, fset: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IMenuPopup>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetSubMenu)(::windows::core::Vtable::as_raw(self), pmp.into().abi(), fset.into()).ok()
}
}
#[cfg(feature = "Win32_System_Ole")]
::windows::core::interface_hierarchy!(IMenuPopup, ::windows::core::IUnknown, super::super::System::Ole::IOleWindow, IDeskBar);
#[cfg(feature = "Win32_System_Ole")]
impl ::core::clone::Clone for IMenuPopup {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::PartialEq for IMenuPopup {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::Eq for IMenuPopup {}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::fmt::Debug for IMenuPopup {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IMenuPopup").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Vtable for IMenuPopup {
type Vtable = IMenuPopup_Vtbl;
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Interface for IMenuPopup {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd1e7afeb_6a2e_11d0_8c78_00c04fd918b4);
}
#[cfg(feature = "Win32_System_Ole")]
#[repr(C)]
#[doc(hidden)]
pub struct IMenuPopup_Vtbl {
pub base__: IDeskBar_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub Popup: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppt: *const super::super::Foundation::POINTL, prcexclude: *const super::super::Foundation::RECTL, dwflags: i32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Popup: usize,
pub OnSelect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwselecttype: u32) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub SetSubMenu: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pmp: *mut ::core::ffi::c_void, fset: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Ole")))]
SetSubMenu: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IModalWindow(::windows::core::IUnknown);
impl IModalWindow {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Show<P0>(&self, hwndowner: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).Show)(::windows::core::Vtable::as_raw(self), hwndowner.into()).ok()
}
}
::windows::core::interface_hierarchy!(IModalWindow, ::windows::core::IUnknown);
impl ::core::clone::Clone for IModalWindow {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IModalWindow {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IModalWindow {}
impl ::core::fmt::Debug for IModalWindow {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IModalWindow").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IModalWindow {
type Vtable = IModalWindow_Vtbl;
}
unsafe impl ::windows::core::Interface for IModalWindow {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb4db1657_70d7_485e_8e3e_6fcb5a5c1802);
}
#[repr(C)]
#[doc(hidden)]
pub struct IModalWindow_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub Show: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndowner: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Show: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct INameSpaceTreeAccessible(::windows::core::IUnknown);
impl INameSpaceTreeAccessible {
pub unsafe fn OnGetDefaultAccessibilityAction<P0>(&self, psi: P0) -> ::windows::core::Result<::windows::core::BSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).OnGetDefaultAccessibilityAction)(::windows::core::Vtable::as_raw(self), psi.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn OnDoDefaultAccessibilityAction<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).OnDoDefaultAccessibilityAction)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn OnGetAccessibilityRole<P0>(&self, psi: P0) -> ::windows::core::Result<super::super::System::Com::VARIANT>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).OnGetAccessibilityRole)(::windows::core::Vtable::as_raw(self), psi.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(INameSpaceTreeAccessible, ::windows::core::IUnknown);
impl ::core::clone::Clone for INameSpaceTreeAccessible {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for INameSpaceTreeAccessible {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for INameSpaceTreeAccessible {}
impl ::core::fmt::Debug for INameSpaceTreeAccessible {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("INameSpaceTreeAccessible").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for INameSpaceTreeAccessible {
type Vtable = INameSpaceTreeAccessible_Vtbl;
}
unsafe impl ::windows::core::Interface for INameSpaceTreeAccessible {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x71f312de_43ed_4190_8477_e9536b82350b);
}
#[repr(C)]
#[doc(hidden)]
pub struct INameSpaceTreeAccessible_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub OnGetDefaultAccessibilityAction: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, pbstrdefaultaction: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub OnDoDefaultAccessibilityAction: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub OnGetAccessibilityRole: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, pvarrole: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
OnGetAccessibilityRole: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct INameSpaceTreeControl(::windows::core::IUnknown);
impl INameSpaceTreeControl {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Initialize<P0>(&self, hwndparent: P0, prc: *const super::super::Foundation::RECT, nsctsflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self), hwndparent.into(), prc, nsctsflags).ok()
}
pub unsafe fn TreeAdvise<P0>(&self, punk: P0) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).TreeAdvise)(::windows::core::Vtable::as_raw(self), punk.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn TreeUnadvise(&self, dwcookie: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).TreeUnadvise)(::windows::core::Vtable::as_raw(self), dwcookie).ok()
}
pub unsafe fn AppendRoot<P0, P1>(&self, psiroot: P0, grfenumflags: u32, grfrootstyle: u32, pif: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItemFilter>>,
{
(::windows::core::Vtable::vtable(self).AppendRoot)(::windows::core::Vtable::as_raw(self), psiroot.into().abi(), grfenumflags, grfrootstyle, pif.into().abi()).ok()
}
pub unsafe fn InsertRoot<P0, P1>(&self, iindex: i32, psiroot: P0, grfenumflags: u32, grfrootstyle: u32, pif: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItemFilter>>,
{
(::windows::core::Vtable::vtable(self).InsertRoot)(::windows::core::Vtable::as_raw(self), iindex, psiroot.into().abi(), grfenumflags, grfrootstyle, pif.into().abi()).ok()
}
pub unsafe fn RemoveRoot<P0>(&self, psiroot: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).RemoveRoot)(::windows::core::Vtable::as_raw(self), psiroot.into().abi()).ok()
}
pub unsafe fn RemoveAllRoots(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RemoveAllRoots)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GetRootItems(&self) -> ::windows::core::Result<IShellItemArray> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetRootItems)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetItemState<P0>(&self, psi: P0, nstcismask: u32, nstcisflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).SetItemState)(::windows::core::Vtable::as_raw(self), psi.into().abi(), nstcismask, nstcisflags).ok()
}
pub unsafe fn GetItemState<P0>(&self, psi: P0, nstcismask: u32) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItemState)(::windows::core::Vtable::as_raw(self), psi.into().abi(), nstcismask, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetSelectedItems(&self) -> ::windows::core::Result<IShellItemArray> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSelectedItems)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetItemCustomState<P0>(&self, psi: P0) -> ::windows::core::Result<i32>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItemCustomState)(::windows::core::Vtable::as_raw(self), psi.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetItemCustomState<P0>(&self, psi: P0, istatenumber: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).SetItemCustomState)(::windows::core::Vtable::as_raw(self), psi.into().abi(), istatenumber).ok()
}
pub unsafe fn EnsureItemVisible<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).EnsureItemVisible)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
pub unsafe fn SetTheme<P0>(&self, psztheme: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetTheme)(::windows::core::Vtable::as_raw(self), psztheme.into().abi()).ok()
}
pub unsafe fn GetNextItem<P0>(&self, psi: P0, nstcgi: NSTCGNI) -> ::windows::core::Result<IShellItem>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetNextItem)(::windows::core::Vtable::as_raw(self), psi.into().abi(), nstcgi, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn HitTest(&self, ppt: *const super::super::Foundation::POINT) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).HitTest)(::windows::core::Vtable::as_raw(self), ppt, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetItemRect<P0>(&self, psi: P0) -> ::windows::core::Result<super::super::Foundation::RECT>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItemRect)(::windows::core::Vtable::as_raw(self), psi.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn CollapseAll(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).CollapseAll)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(INameSpaceTreeControl, ::windows::core::IUnknown);
impl ::core::clone::Clone for INameSpaceTreeControl {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for INameSpaceTreeControl {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for INameSpaceTreeControl {}
impl ::core::fmt::Debug for INameSpaceTreeControl {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("INameSpaceTreeControl").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for INameSpaceTreeControl {
type Vtable = INameSpaceTreeControl_Vtbl;
}
unsafe impl ::windows::core::Interface for INameSpaceTreeControl {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x028212a3_b627_47e9_8856_c14265554e4f);
}
#[repr(C)]
#[doc(hidden)]
pub struct INameSpaceTreeControl_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndparent: super::super::Foundation::HWND, prc: *const super::super::Foundation::RECT, nsctsflags: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Initialize: usize,
pub TreeAdvise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void, pdwcookie: *mut u32) -> ::windows::core::HRESULT,
pub TreeUnadvise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwcookie: u32) -> ::windows::core::HRESULT,
pub AppendRoot: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiroot: *mut ::core::ffi::c_void, grfenumflags: u32, grfrootstyle: u32, pif: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub InsertRoot: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, iindex: i32, psiroot: *mut ::core::ffi::c_void, grfenumflags: u32, grfrootstyle: u32, pif: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub RemoveRoot: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiroot: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub RemoveAllRoots: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetRootItems: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppsiarootitems: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetItemState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, nstcismask: u32, nstcisflags: u32) -> ::windows::core::HRESULT,
pub GetItemState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, nstcismask: u32, pnstcisflags: *mut u32) -> ::windows::core::HRESULT,
pub GetSelectedItems: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiaitems: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetItemCustomState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, pistatenumber: *mut i32) -> ::windows::core::HRESULT,
pub SetItemCustomState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, istatenumber: i32) -> ::windows::core::HRESULT,
pub EnsureItemVisible: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetTheme: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psztheme: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub GetNextItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, nstcgi: NSTCGNI, ppsinext: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub HitTest: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppt: *const super::super::Foundation::POINT, ppsiout: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
HitTest: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetItemRect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, prect: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetItemRect: usize,
pub CollapseAll: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct INameSpaceTreeControl2(::windows::core::IUnknown);
impl INameSpaceTreeControl2 {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Initialize<P0>(&self, hwndparent: P0, prc: *const super::super::Foundation::RECT, nsctsflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.Initialize)(::windows::core::Vtable::as_raw(self), hwndparent.into(), prc, nsctsflags).ok()
}
pub unsafe fn TreeAdvise<P0>(&self, punk: P0) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.TreeAdvise)(::windows::core::Vtable::as_raw(self), punk.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn TreeUnadvise(&self, dwcookie: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.TreeUnadvise)(::windows::core::Vtable::as_raw(self), dwcookie).ok()
}
pub unsafe fn AppendRoot<P0, P1>(&self, psiroot: P0, grfenumflags: u32, grfrootstyle: u32, pif: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItemFilter>>,
{
(::windows::core::Vtable::vtable(self).base__.AppendRoot)(::windows::core::Vtable::as_raw(self), psiroot.into().abi(), grfenumflags, grfrootstyle, pif.into().abi()).ok()
}
pub unsafe fn InsertRoot<P0, P1>(&self, iindex: i32, psiroot: P0, grfenumflags: u32, grfrootstyle: u32, pif: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItemFilter>>,
{
(::windows::core::Vtable::vtable(self).base__.InsertRoot)(::windows::core::Vtable::as_raw(self), iindex, psiroot.into().abi(), grfenumflags, grfrootstyle, pif.into().abi()).ok()
}
pub unsafe fn RemoveRoot<P0>(&self, psiroot: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).base__.RemoveRoot)(::windows::core::Vtable::as_raw(self), psiroot.into().abi()).ok()
}
pub unsafe fn RemoveAllRoots(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.RemoveAllRoots)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GetRootItems(&self) -> ::windows::core::Result<IShellItemArray> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetRootItems)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetItemState<P0>(&self, psi: P0, nstcismask: u32, nstcisflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).base__.SetItemState)(::windows::core::Vtable::as_raw(self), psi.into().abi(), nstcismask, nstcisflags).ok()
}
pub unsafe fn GetItemState<P0>(&self, psi: P0, nstcismask: u32) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItemState)(::windows::core::Vtable::as_raw(self), psi.into().abi(), nstcismask, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetSelectedItems(&self) -> ::windows::core::Result<IShellItemArray> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetSelectedItems)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetItemCustomState<P0>(&self, psi: P0) -> ::windows::core::Result<i32>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItemCustomState)(::windows::core::Vtable::as_raw(self), psi.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetItemCustomState<P0>(&self, psi: P0, istatenumber: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).base__.SetItemCustomState)(::windows::core::Vtable::as_raw(self), psi.into().abi(), istatenumber).ok()
}
pub unsafe fn EnsureItemVisible<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).base__.EnsureItemVisible)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
pub unsafe fn SetTheme<P0>(&self, psztheme: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetTheme)(::windows::core::Vtable::as_raw(self), psztheme.into().abi()).ok()
}
pub unsafe fn GetNextItem<P0>(&self, psi: P0, nstcgi: NSTCGNI) -> ::windows::core::Result<IShellItem>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetNextItem)(::windows::core::Vtable::as_raw(self), psi.into().abi(), nstcgi, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn HitTest(&self, ppt: *const super::super::Foundation::POINT) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.HitTest)(::windows::core::Vtable::as_raw(self), ppt, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetItemRect<P0>(&self, psi: P0) -> ::windows::core::Result<super::super::Foundation::RECT>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItemRect)(::windows::core::Vtable::as_raw(self), psi.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn CollapseAll(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.CollapseAll)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetControlStyle(&self, nstcsmask: u32, nstcsstyle: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetControlStyle)(::windows::core::Vtable::as_raw(self), nstcsmask, nstcsstyle).ok()
}
pub unsafe fn GetControlStyle(&self, nstcsmask: u32) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetControlStyle)(::windows::core::Vtable::as_raw(self), nstcsmask, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetControlStyle2(&self, nstcsmask: NSTCSTYLE2, nstcsstyle: NSTCSTYLE2) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetControlStyle2)(::windows::core::Vtable::as_raw(self), nstcsmask, nstcsstyle).ok()
}
pub unsafe fn GetControlStyle2(&self, nstcsmask: NSTCSTYLE2) -> ::windows::core::Result<NSTCSTYLE2> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetControlStyle2)(::windows::core::Vtable::as_raw(self), nstcsmask, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(INameSpaceTreeControl2, ::windows::core::IUnknown, INameSpaceTreeControl);
impl ::core::clone::Clone for INameSpaceTreeControl2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for INameSpaceTreeControl2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for INameSpaceTreeControl2 {}
impl ::core::fmt::Debug for INameSpaceTreeControl2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("INameSpaceTreeControl2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for INameSpaceTreeControl2 {
type Vtable = INameSpaceTreeControl2_Vtbl;
}
unsafe impl ::windows::core::Interface for INameSpaceTreeControl2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7cc7aed8_290e_49bc_8945_c1401cc9306c);
}
#[repr(C)]
#[doc(hidden)]
pub struct INameSpaceTreeControl2_Vtbl {
pub base__: INameSpaceTreeControl_Vtbl,
pub SetControlStyle: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, nstcsmask: u32, nstcsstyle: u32) -> ::windows::core::HRESULT,
pub GetControlStyle: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, nstcsmask: u32, pnstcsstyle: *mut u32) -> ::windows::core::HRESULT,
pub SetControlStyle2: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, nstcsmask: NSTCSTYLE2, nstcsstyle: NSTCSTYLE2) -> ::windows::core::HRESULT,
pub GetControlStyle2: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, nstcsmask: NSTCSTYLE2, pnstcsstyle: *mut NSTCSTYLE2) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct INameSpaceTreeControlCustomDraw(::windows::core::IUnknown);
impl INameSpaceTreeControlCustomDraw {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
pub unsafe fn PrePaint<P0>(&self, hdc: P0, prc: *const super::super::Foundation::RECT) -> ::windows::core::Result<super::super::Foundation::LRESULT>
where
P0: ::std::convert::Into<super::super::Graphics::Gdi::HDC>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).PrePaint)(::windows::core::Vtable::as_raw(self), hdc.into(), prc, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
pub unsafe fn PostPaint<P0>(&self, hdc: P0, prc: *const super::super::Foundation::RECT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Graphics::Gdi::HDC>,
{
(::windows::core::Vtable::vtable(self).PostPaint)(::windows::core::Vtable::as_raw(self), hdc.into(), prc).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_Controls\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_Controls"))]
pub unsafe fn ItemPrePaint<P0>(&self, hdc: P0, prc: *const super::super::Foundation::RECT, pnstccditem: *const NSTCCUSTOMDRAW, pclrtext: *mut super::super::Foundation::COLORREF, pclrtextbk: *mut super::super::Foundation::COLORREF, plres: *mut super::super::Foundation::LRESULT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Graphics::Gdi::HDC>,
{
(::windows::core::Vtable::vtable(self).ItemPrePaint)(::windows::core::Vtable::as_raw(self), hdc.into(), prc, pnstccditem, pclrtext, pclrtextbk, plres).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_Controls\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_Controls"))]
pub unsafe fn ItemPostPaint<P0>(&self, hdc: P0, prc: *const super::super::Foundation::RECT, pnstccditem: *const NSTCCUSTOMDRAW) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Graphics::Gdi::HDC>,
{
(::windows::core::Vtable::vtable(self).ItemPostPaint)(::windows::core::Vtable::as_raw(self), hdc.into(), prc, pnstccditem).ok()
}
}
::windows::core::interface_hierarchy!(INameSpaceTreeControlCustomDraw, ::windows::core::IUnknown);
impl ::core::clone::Clone for INameSpaceTreeControlCustomDraw {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for INameSpaceTreeControlCustomDraw {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for INameSpaceTreeControlCustomDraw {}
impl ::core::fmt::Debug for INameSpaceTreeControlCustomDraw {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("INameSpaceTreeControlCustomDraw").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for INameSpaceTreeControlCustomDraw {
type Vtable = INameSpaceTreeControlCustomDraw_Vtbl;
}
unsafe impl ::windows::core::Interface for INameSpaceTreeControlCustomDraw {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2d3ba758_33ee_42d5_bb7b_5f3431d86c78);
}
#[repr(C)]
#[doc(hidden)]
pub struct INameSpaceTreeControlCustomDraw_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
pub PrePaint: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hdc: super::super::Graphics::Gdi::HDC, prc: *const super::super::Foundation::RECT, plres: *mut super::super::Foundation::LRESULT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi")))]
PrePaint: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
pub PostPaint: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hdc: super::super::Graphics::Gdi::HDC, prc: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi")))]
PostPaint: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_Controls"))]
pub ItemPrePaint: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hdc: super::super::Graphics::Gdi::HDC, prc: *const super::super::Foundation::RECT, pnstccditem: *const NSTCCUSTOMDRAW, pclrtext: *mut super::super::Foundation::COLORREF, pclrtextbk: *mut super::super::Foundation::COLORREF, plres: *mut super::super::Foundation::LRESULT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_Controls")))]
ItemPrePaint: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_Controls"))]
pub ItemPostPaint: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hdc: super::super::Graphics::Gdi::HDC, prc: *const super::super::Foundation::RECT, pnstccditem: *const NSTCCUSTOMDRAW) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_Controls")))]
ItemPostPaint: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct INameSpaceTreeControlDropHandler(::windows::core::IUnknown);
impl INameSpaceTreeControlDropHandler {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnDragEnter<P0, P1, P2>(&self, psiover: P0, psiadata: P1, foutsidesource: P2, grfkeystate: u32, pdweffect: *mut u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItemArray>>,
P2: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).OnDragEnter)(::windows::core::Vtable::as_raw(self), psiover.into().abi(), psiadata.into().abi(), foutsidesource.into(), grfkeystate, pdweffect).ok()
}
pub unsafe fn OnDragOver<P0, P1>(&self, psiover: P0, psiadata: P1, grfkeystate: u32, pdweffect: *mut u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItemArray>>,
{
(::windows::core::Vtable::vtable(self).OnDragOver)(::windows::core::Vtable::as_raw(self), psiover.into().abi(), psiadata.into().abi(), grfkeystate, pdweffect).ok()
}
pub unsafe fn OnDragPosition<P0, P1>(&self, psiover: P0, psiadata: P1, inewposition: i32, ioldposition: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItemArray>>,
{
(::windows::core::Vtable::vtable(self).OnDragPosition)(::windows::core::Vtable::as_raw(self), psiover.into().abi(), psiadata.into().abi(), inewposition, ioldposition).ok()
}
pub unsafe fn OnDrop<P0, P1>(&self, psiover: P0, psiadata: P1, iposition: i32, grfkeystate: u32, pdweffect: *mut u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItemArray>>,
{
(::windows::core::Vtable::vtable(self).OnDrop)(::windows::core::Vtable::as_raw(self), psiover.into().abi(), psiadata.into().abi(), iposition, grfkeystate, pdweffect).ok()
}
pub unsafe fn OnDropPosition<P0, P1>(&self, psiover: P0, psiadata: P1, inewposition: i32, ioldposition: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItemArray>>,
{
(::windows::core::Vtable::vtable(self).OnDropPosition)(::windows::core::Vtable::as_raw(self), psiover.into().abi(), psiadata.into().abi(), inewposition, ioldposition).ok()
}
pub unsafe fn OnDragLeave<P0>(&self, psiover: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).OnDragLeave)(::windows::core::Vtable::as_raw(self), psiover.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(INameSpaceTreeControlDropHandler, ::windows::core::IUnknown);
impl ::core::clone::Clone for INameSpaceTreeControlDropHandler {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for INameSpaceTreeControlDropHandler {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for INameSpaceTreeControlDropHandler {}
impl ::core::fmt::Debug for INameSpaceTreeControlDropHandler {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("INameSpaceTreeControlDropHandler").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for INameSpaceTreeControlDropHandler {
type Vtable = INameSpaceTreeControlDropHandler_Vtbl;
}
unsafe impl ::windows::core::Interface for INameSpaceTreeControlDropHandler {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf9c665d6_c2f2_4c19_bf33_8322d7352f51);
}
#[repr(C)]
#[doc(hidden)]
pub struct INameSpaceTreeControlDropHandler_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub OnDragEnter: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiover: *mut ::core::ffi::c_void, psiadata: *mut ::core::ffi::c_void, foutsidesource: super::super::Foundation::BOOL, grfkeystate: u32, pdweffect: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
OnDragEnter: usize,
pub OnDragOver: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiover: *mut ::core::ffi::c_void, psiadata: *mut ::core::ffi::c_void, grfkeystate: u32, pdweffect: *mut u32) -> ::windows::core::HRESULT,
pub OnDragPosition: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiover: *mut ::core::ffi::c_void, psiadata: *mut ::core::ffi::c_void, inewposition: i32, ioldposition: i32) -> ::windows::core::HRESULT,
pub OnDrop: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiover: *mut ::core::ffi::c_void, psiadata: *mut ::core::ffi::c_void, iposition: i32, grfkeystate: u32, pdweffect: *mut u32) -> ::windows::core::HRESULT,
pub OnDropPosition: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiover: *mut ::core::ffi::c_void, psiadata: *mut ::core::ffi::c_void, inewposition: i32, ioldposition: i32) -> ::windows::core::HRESULT,
pub OnDragLeave: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiover: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct INameSpaceTreeControlEvents(::windows::core::IUnknown);
impl INameSpaceTreeControlEvents {
pub unsafe fn OnItemClick<P0>(&self, psi: P0, nstcehittest: u32, nstceclicktype: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).OnItemClick)(::windows::core::Vtable::as_raw(self), psi.into().abi(), nstcehittest, nstceclicktype).ok()
}
pub unsafe fn OnPropertyItemCommit<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).OnPropertyItemCommit)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
pub unsafe fn OnItemStateChanging<P0>(&self, psi: P0, nstcismask: u32, nstcisstate: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).OnItemStateChanging)(::windows::core::Vtable::as_raw(self), psi.into().abi(), nstcismask, nstcisstate).ok()
}
pub unsafe fn OnItemStateChanged<P0>(&self, psi: P0, nstcismask: u32, nstcisstate: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).OnItemStateChanged)(::windows::core::Vtable::as_raw(self), psi.into().abi(), nstcismask, nstcisstate).ok()
}
pub unsafe fn OnSelectionChanged<P0>(&self, psiaselection: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItemArray>>,
{
(::windows::core::Vtable::vtable(self).OnSelectionChanged)(::windows::core::Vtable::as_raw(self), psiaselection.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnKeyboardInput<P0, P1>(&self, umsg: u32, wparam: P0, lparam: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::WPARAM>,
P1: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).OnKeyboardInput)(::windows::core::Vtable::as_raw(self), umsg, wparam.into(), lparam.into()).ok()
}
pub unsafe fn OnBeforeExpand<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).OnBeforeExpand)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
pub unsafe fn OnAfterExpand<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).OnAfterExpand)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
pub unsafe fn OnBeginLabelEdit<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).OnBeginLabelEdit)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
pub unsafe fn OnEndLabelEdit<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).OnEndLabelEdit)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
pub unsafe fn OnGetToolTip<P0>(&self, psi: P0, psztip: &mut [u16]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).OnGetToolTip)(::windows::core::Vtable::as_raw(self), psi.into().abi(), ::core::mem::transmute(psztip.as_ptr()), psztip.len() as _).ok()
}
pub unsafe fn OnBeforeItemDelete<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).OnBeforeItemDelete)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnItemAdded<P0, P1>(&self, psi: P0, fisroot: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).OnItemAdded)(::windows::core::Vtable::as_raw(self), psi.into().abi(), fisroot.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnItemDeleted<P0, P1>(&self, psi: P0, fisroot: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).OnItemDeleted)(::windows::core::Vtable::as_raw(self), psi.into().abi(), fisroot.into()).ok()
}
pub unsafe fn OnBeforeContextMenu<P0>(&self, psi: P0, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).OnBeforeContextMenu)(::windows::core::Vtable::as_raw(self), psi.into().abi(), riid, ppv).ok()
}
pub unsafe fn OnAfterContextMenu<P0, P1>(&self, psi: P0, pcmin: P1, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IContextMenu>>,
{
(::windows::core::Vtable::vtable(self).OnAfterContextMenu)(::windows::core::Vtable::as_raw(self), psi.into().abi(), pcmin.into().abi(), riid, ppv).ok()
}
pub unsafe fn OnBeforeStateImageChange<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).OnBeforeStateImageChange)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
pub unsafe fn OnGetDefaultIconIndex<P0>(&self, psi: P0, pidefaulticon: *mut i32, piopenicon: *mut i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).OnGetDefaultIconIndex)(::windows::core::Vtable::as_raw(self), psi.into().abi(), pidefaulticon, piopenicon).ok()
}
}
::windows::core::interface_hierarchy!(INameSpaceTreeControlEvents, ::windows::core::IUnknown);
impl ::core::clone::Clone for INameSpaceTreeControlEvents {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for INameSpaceTreeControlEvents {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for INameSpaceTreeControlEvents {}
impl ::core::fmt::Debug for INameSpaceTreeControlEvents {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("INameSpaceTreeControlEvents").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for INameSpaceTreeControlEvents {
type Vtable = INameSpaceTreeControlEvents_Vtbl;
}
unsafe impl ::windows::core::Interface for INameSpaceTreeControlEvents {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x93d77985_b3d8_4484_8318_672cdda002ce);
}
#[repr(C)]
#[doc(hidden)]
pub struct INameSpaceTreeControlEvents_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub OnItemClick: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, nstcehittest: u32, nstceclicktype: u32) -> ::windows::core::HRESULT,
pub OnPropertyItemCommit: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub OnItemStateChanging: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, nstcismask: u32, nstcisstate: u32) -> ::windows::core::HRESULT,
pub OnItemStateChanged: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, nstcismask: u32, nstcisstate: u32) -> ::windows::core::HRESULT,
pub OnSelectionChanged: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiaselection: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub OnKeyboardInput: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, umsg: u32, wparam: super::super::Foundation::WPARAM, lparam: super::super::Foundation::LPARAM) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
OnKeyboardInput: usize,
pub OnBeforeExpand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub OnAfterExpand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub OnBeginLabelEdit: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub OnEndLabelEdit: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub OnGetToolTip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, psztip: ::windows::core::PWSTR, cchtip: i32) -> ::windows::core::HRESULT,
pub OnBeforeItemDelete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub OnItemAdded: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, fisroot: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
OnItemAdded: usize,
#[cfg(feature = "Win32_Foundation")]
pub OnItemDeleted: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, fisroot: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
OnItemDeleted: usize,
pub OnBeforeContextMenu: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub OnAfterContextMenu: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, pcmin: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub OnBeforeStateImageChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub OnGetDefaultIconIndex: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, pidefaulticon: *mut i32, piopenicon: *mut i32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct INameSpaceTreeControlFolderCapabilities(::windows::core::IUnknown);
impl INameSpaceTreeControlFolderCapabilities {
pub unsafe fn GetFolderCapabilities(&self, nfcmask: NSTCFOLDERCAPABILITIES) -> ::windows::core::Result<NSTCFOLDERCAPABILITIES> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFolderCapabilities)(::windows::core::Vtable::as_raw(self), nfcmask, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(INameSpaceTreeControlFolderCapabilities, ::windows::core::IUnknown);
impl ::core::clone::Clone for INameSpaceTreeControlFolderCapabilities {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for INameSpaceTreeControlFolderCapabilities {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for INameSpaceTreeControlFolderCapabilities {}
impl ::core::fmt::Debug for INameSpaceTreeControlFolderCapabilities {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("INameSpaceTreeControlFolderCapabilities").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for INameSpaceTreeControlFolderCapabilities {
type Vtable = INameSpaceTreeControlFolderCapabilities_Vtbl;
}
unsafe impl ::windows::core::Interface for INameSpaceTreeControlFolderCapabilities {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe9701183_e6b3_4ff2_8568_813615fec7be);
}
#[repr(C)]
#[doc(hidden)]
pub struct INameSpaceTreeControlFolderCapabilities_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetFolderCapabilities: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, nfcmask: NSTCFOLDERCAPABILITIES, pnfcvalue: *mut NSTCFOLDERCAPABILITIES) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct INamedPropertyBag(::windows::core::IUnknown);
impl INamedPropertyBag {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com_StructuredStorage\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage"))]
pub unsafe fn ReadPropertyNPB<P0, P1>(&self, pszbagname: P0, pszpropname: P1, pvar: *mut super::super::System::Com::StructuredStorage::PROPVARIANT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).ReadPropertyNPB)(::windows::core::Vtable::as_raw(self), pszbagname.into().abi(), pszpropname.into().abi(), pvar).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com_StructuredStorage\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage"))]
pub unsafe fn WritePropertyNPB<P0, P1>(&self, pszbagname: P0, pszpropname: P1, pvar: *const super::super::System::Com::StructuredStorage::PROPVARIANT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).WritePropertyNPB)(::windows::core::Vtable::as_raw(self), pszbagname.into().abi(), pszpropname.into().abi(), pvar).ok()
}
pub unsafe fn RemovePropertyNPB<P0, P1>(&self, pszbagname: P0, pszpropname: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).RemovePropertyNPB)(::windows::core::Vtable::as_raw(self), pszbagname.into().abi(), pszpropname.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(INamedPropertyBag, ::windows::core::IUnknown);
impl ::core::clone::Clone for INamedPropertyBag {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for INamedPropertyBag {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for INamedPropertyBag {}
impl ::core::fmt::Debug for INamedPropertyBag {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("INamedPropertyBag").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for INamedPropertyBag {
type Vtable = INamedPropertyBag_Vtbl;
}
unsafe impl ::windows::core::Interface for INamedPropertyBag {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfb700430_952c_11d1_946f_000000000000);
}
#[repr(C)]
#[doc(hidden)]
pub struct INamedPropertyBag_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage"))]
pub ReadPropertyNPB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszbagname: ::windows::core::PCWSTR, pszpropname: ::windows::core::PCWSTR, pvar: *mut super::super::System::Com::StructuredStorage::PROPVARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage")))]
ReadPropertyNPB: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage"))]
pub WritePropertyNPB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszbagname: ::windows::core::PCWSTR, pszpropname: ::windows::core::PCWSTR, pvar: *const super::super::System::Com::StructuredStorage::PROPVARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage")))]
WritePropertyNPB: usize,
pub RemovePropertyNPB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszbagname: ::windows::core::PCWSTR, pszpropname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct INamespaceWalk(::windows::core::IUnknown);
impl INamespaceWalk {
pub unsafe fn Walk<P0, P1>(&self, punktowalk: P0, dwflags: u32, cdepth: i32, pnswcb: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<::windows::core::InParam<INamespaceWalkCB>>,
{
(::windows::core::Vtable::vtable(self).Walk)(::windows::core::Vtable::as_raw(self), punktowalk.into().abi(), dwflags, cdepth, pnswcb.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetIDArrayResult(&self, pcitems: *mut u32, prgpidl: *mut *mut *mut Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetIDArrayResult)(::windows::core::Vtable::as_raw(self), pcitems, prgpidl).ok()
}
}
::windows::core::interface_hierarchy!(INamespaceWalk, ::windows::core::IUnknown);
impl ::core::clone::Clone for INamespaceWalk {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for INamespaceWalk {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for INamespaceWalk {}
impl ::core::fmt::Debug for INamespaceWalk {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("INamespaceWalk").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for INamespaceWalk {
type Vtable = INamespaceWalk_Vtbl;
}
unsafe impl ::windows::core::Interface for INamespaceWalk {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x57ced8a7_3f4a_432c_9350_30f24483f74f);
}
#[repr(C)]
#[doc(hidden)]
pub struct INamespaceWalk_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Walk: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punktowalk: *mut ::core::ffi::c_void, dwflags: u32, cdepth: i32, pnswcb: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetIDArrayResult: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcitems: *mut u32, prgpidl: *mut *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetIDArrayResult: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct INamespaceWalkCB(::windows::core::IUnknown);
impl INamespaceWalkCB {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn FoundItem<P0>(&self, psf: P0, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
{
(::windows::core::Vtable::vtable(self).FoundItem)(::windows::core::Vtable::as_raw(self), psf.into().abi(), pidl).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn EnterFolder<P0>(&self, psf: P0, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
{
(::windows::core::Vtable::vtable(self).EnterFolder)(::windows::core::Vtable::as_raw(self), psf.into().abi(), pidl).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn LeaveFolder<P0>(&self, psf: P0, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
{
(::windows::core::Vtable::vtable(self).LeaveFolder)(::windows::core::Vtable::as_raw(self), psf.into().abi(), pidl).ok()
}
pub unsafe fn InitializeProgressDialog(&self, ppsztitle: *mut ::windows::core::PWSTR, ppszcancel: *mut ::windows::core::PWSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).InitializeProgressDialog)(::windows::core::Vtable::as_raw(self), ppsztitle, ppszcancel).ok()
}
}
::windows::core::interface_hierarchy!(INamespaceWalkCB, ::windows::core::IUnknown);
impl ::core::clone::Clone for INamespaceWalkCB {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for INamespaceWalkCB {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for INamespaceWalkCB {}
impl ::core::fmt::Debug for INamespaceWalkCB {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("INamespaceWalkCB").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for INamespaceWalkCB {
type Vtable = INamespaceWalkCB_Vtbl;
}
unsafe impl ::windows::core::Interface for INamespaceWalkCB {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd92995f8_cf5e_4a76_bf59_ead39ea2b97e);
}
#[repr(C)]
#[doc(hidden)]
pub struct INamespaceWalkCB_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub FoundItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psf: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
FoundItem: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub EnterFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psf: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
EnterFolder: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub LeaveFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psf: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
LeaveFolder: usize,
pub InitializeProgressDialog: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppsztitle: *mut ::windows::core::PWSTR, ppszcancel: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct INamespaceWalkCB2(::windows::core::IUnknown);
impl INamespaceWalkCB2 {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn FoundItem<P0>(&self, psf: P0, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
{
(::windows::core::Vtable::vtable(self).base__.FoundItem)(::windows::core::Vtable::as_raw(self), psf.into().abi(), pidl).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn EnterFolder<P0>(&self, psf: P0, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
{
(::windows::core::Vtable::vtable(self).base__.EnterFolder)(::windows::core::Vtable::as_raw(self), psf.into().abi(), pidl).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn LeaveFolder<P0>(&self, psf: P0, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
{
(::windows::core::Vtable::vtable(self).base__.LeaveFolder)(::windows::core::Vtable::as_raw(self), psf.into().abi(), pidl).ok()
}
pub unsafe fn InitializeProgressDialog(&self, ppsztitle: *mut ::windows::core::PWSTR, ppszcancel: *mut ::windows::core::PWSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.InitializeProgressDialog)(::windows::core::Vtable::as_raw(self), ppsztitle, ppszcancel).ok()
}
pub unsafe fn WalkComplete(&self, hr: ::windows::core::HRESULT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).WalkComplete)(::windows::core::Vtable::as_raw(self), hr).ok()
}
}
::windows::core::interface_hierarchy!(INamespaceWalkCB2, ::windows::core::IUnknown, INamespaceWalkCB);
impl ::core::clone::Clone for INamespaceWalkCB2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for INamespaceWalkCB2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for INamespaceWalkCB2 {}
impl ::core::fmt::Debug for INamespaceWalkCB2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("INamespaceWalkCB2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for INamespaceWalkCB2 {
type Vtable = INamespaceWalkCB2_Vtbl;
}
unsafe impl ::windows::core::Interface for INamespaceWalkCB2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7ac7492b_c38e_438a_87db_68737844ff70);
}
#[repr(C)]
#[doc(hidden)]
pub struct INamespaceWalkCB2_Vtbl {
pub base__: INamespaceWalkCB_Vtbl,
pub WalkComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hr: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct INetworkFolderInternal(::windows::core::IUnknown);
impl INetworkFolderInternal {
pub unsafe fn GetResourceDisplayType(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetResourceDisplayType)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetIDList(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetIDList)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetProvider(&self, itemids: &[*const Common::ITEMIDLIST], provider: &mut [u16]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetProvider)(::windows::core::Vtable::as_raw(self), itemids.len() as _, ::core::mem::transmute(itemids.as_ptr()), provider.len() as _, ::core::mem::transmute(provider.as_ptr())).ok()
}
}
::windows::core::interface_hierarchy!(INetworkFolderInternal, ::windows::core::IUnknown);
impl ::core::clone::Clone for INetworkFolderInternal {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for INetworkFolderInternal {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for INetworkFolderInternal {}
impl ::core::fmt::Debug for INetworkFolderInternal {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("INetworkFolderInternal").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for INetworkFolderInternal {
type Vtable = INetworkFolderInternal_Vtbl;
}
unsafe impl ::windows::core::Interface for INetworkFolderInternal {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xceb38218_c971_47bb_a703_f0bc99ccdb81);
}
#[repr(C)]
#[doc(hidden)]
pub struct INetworkFolderInternal_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetResourceDisplayType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, displaytype: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetIDList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, idlist: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetIDList: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetProvider: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, itemidcount: u32, itemids: *const *const Common::ITEMIDLIST, providermaxlength: u32, provider: ::windows::core::PWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetProvider: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct INewMenuClient(::windows::core::IUnknown);
impl INewMenuClient {
pub unsafe fn IncludeItems(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IncludeItems)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SelectAndEditItem(&self, pidlitem: *const Common::ITEMIDLIST, flags: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SelectAndEditItem)(::windows::core::Vtable::as_raw(self), pidlitem, flags).ok()
}
}
::windows::core::interface_hierarchy!(INewMenuClient, ::windows::core::IUnknown);
impl ::core::clone::Clone for INewMenuClient {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for INewMenuClient {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for INewMenuClient {}
impl ::core::fmt::Debug for INewMenuClient {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("INewMenuClient").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for INewMenuClient {
type Vtable = INewMenuClient_Vtbl;
}
unsafe impl ::windows::core::Interface for INewMenuClient {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcb07fdc_3bb5_451c_90be_966644fed7b0);
}
#[repr(C)]
#[doc(hidden)]
pub struct INewMenuClient_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub IncludeItems: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pflags: *mut i32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub SelectAndEditItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidlitem: *const Common::ITEMIDLIST, flags: i32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
SelectAndEditItem: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct INewShortcutHookA(::windows::core::IUnknown);
impl INewShortcutHookA {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetReferent<P0, P1>(&self, pcszreferent: P0, hwnd: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).SetReferent)(::windows::core::Vtable::as_raw(self), pcszreferent.into().abi(), hwnd.into()).ok()
}
pub unsafe fn GetReferent(&self, pszreferent: &mut [u8]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetReferent)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszreferent.as_ptr()), pszreferent.len() as _).ok()
}
pub unsafe fn SetFolder<P0>(&self, pcszfolder: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
(::windows::core::Vtable::vtable(self).SetFolder)(::windows::core::Vtable::as_raw(self), pcszfolder.into().abi()).ok()
}
pub unsafe fn GetFolder(&self, pszfolder: &mut [u8]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetFolder)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszfolder.as_ptr()), pszfolder.len() as _).ok()
}
pub unsafe fn GetName(&self, pszname: &mut [u8]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetName)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszname.as_ptr()), pszname.len() as _).ok()
}
pub unsafe fn GetExtension(&self, pszextension: &mut [u8]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetExtension)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszextension.as_ptr()), pszextension.len() as _).ok()
}
}
::windows::core::interface_hierarchy!(INewShortcutHookA, ::windows::core::IUnknown);
impl ::core::clone::Clone for INewShortcutHookA {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for INewShortcutHookA {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for INewShortcutHookA {}
impl ::core::fmt::Debug for INewShortcutHookA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("INewShortcutHookA").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for INewShortcutHookA {
type Vtable = INewShortcutHookA_Vtbl;
}
unsafe impl ::windows::core::Interface for INewShortcutHookA {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214e1_0000_0000_c000_000000000046);
}
#[repr(C)]
#[doc(hidden)]
pub struct INewShortcutHookA_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub SetReferent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcszreferent: ::windows::core::PCSTR, hwnd: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetReferent: usize,
pub GetReferent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszreferent: ::windows::core::PSTR, cchreferent: i32) -> ::windows::core::HRESULT,
pub SetFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcszfolder: ::windows::core::PCSTR) -> ::windows::core::HRESULT,
pub GetFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszfolder: ::windows::core::PSTR, cchfolder: i32) -> ::windows::core::HRESULT,
pub GetName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszname: ::windows::core::PSTR, cchname: i32) -> ::windows::core::HRESULT,
pub GetExtension: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszextension: ::windows::core::PSTR, cchextension: i32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct INewShortcutHookW(::windows::core::IUnknown);
impl INewShortcutHookW {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetReferent<P0, P1>(&self, pcszreferent: P0, hwnd: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).SetReferent)(::windows::core::Vtable::as_raw(self), pcszreferent.into().abi(), hwnd.into()).ok()
}
pub unsafe fn GetReferent(&self, pszreferent: &mut [u16]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetReferent)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszreferent.as_ptr()), pszreferent.len() as _).ok()
}
pub unsafe fn SetFolder<P0>(&self, pcszfolder: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetFolder)(::windows::core::Vtable::as_raw(self), pcszfolder.into().abi()).ok()
}
pub unsafe fn GetFolder(&self, pszfolder: &mut [u16]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetFolder)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszfolder.as_ptr()), pszfolder.len() as _).ok()
}
pub unsafe fn GetName(&self, pszname: &mut [u16]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetName)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszname.as_ptr()), pszname.len() as _).ok()
}
pub unsafe fn GetExtension(&self, pszextension: &mut [u16]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetExtension)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszextension.as_ptr()), pszextension.len() as _).ok()
}
}
::windows::core::interface_hierarchy!(INewShortcutHookW, ::windows::core::IUnknown);
impl ::core::clone::Clone for INewShortcutHookW {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for INewShortcutHookW {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for INewShortcutHookW {}
impl ::core::fmt::Debug for INewShortcutHookW {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("INewShortcutHookW").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for INewShortcutHookW {
type Vtable = INewShortcutHookW_Vtbl;
}
unsafe impl ::windows::core::Interface for INewShortcutHookW {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214f7_0000_0000_c000_000000000046);
}
#[repr(C)]
#[doc(hidden)]
pub struct INewShortcutHookW_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub SetReferent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcszreferent: ::windows::core::PCWSTR, hwnd: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetReferent: usize,
pub GetReferent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszreferent: ::windows::core::PWSTR, cchreferent: i32) -> ::windows::core::HRESULT,
pub SetFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcszfolder: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub GetFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszfolder: ::windows::core::PWSTR, cchfolder: i32) -> ::windows::core::HRESULT,
pub GetName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszname: ::windows::core::PWSTR, cchname: i32) -> ::windows::core::HRESULT,
pub GetExtension: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszextension: ::windows::core::PWSTR, cchextension: i32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct INewWDEvents(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl INewWDEvents {
pub unsafe fn FinalBack(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.FinalBack)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FinalNext(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.FinalNext)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Cancel(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Cancel)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetCaption(&self, bstrcaption: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetCaption)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrcaption)).ok()
}
pub unsafe fn Caption(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Caption)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn put_Property(&self, bstrpropertyname: &::windows::core::BSTR, pvproperty: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.put_Property)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrpropertyname), pvproperty).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn get_Property(&self, bstrpropertyname: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.get_Property)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrpropertyname), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetWizardButtons<P0, P1, P2>(&self, vfenableback: P0, vfenablenext: P1, vflastpage: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P1: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P2: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.SetWizardButtons)(::windows::core::Vtable::as_raw(self), vfenableback.into(), vfenablenext.into(), vflastpage.into()).ok()
}
pub unsafe fn SetHeaderText(&self, bstrheadertitle: &::windows::core::BSTR, bstrheadersubtitle: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetHeaderText)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrheadertitle), ::core::mem::transmute_copy(bstrheadersubtitle)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn PassportAuthenticate(&self, bstrsigninurl: &::windows::core::BSTR) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).PassportAuthenticate)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrsigninurl), result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(INewWDEvents, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IWebWizardHost);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for INewWDEvents {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for INewWDEvents {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for INewWDEvents {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for INewWDEvents {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("INewWDEvents").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for INewWDEvents {
type Vtable = INewWDEvents_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for INewWDEvents {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0751c551_7568_41c9_8e5b_e22e38919236);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct INewWDEvents_Vtbl {
pub base__: IWebWizardHost_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub PassportAuthenticate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrsigninurl: *mut ::core::ffi::c_void, pvfauthenitcated: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
PassportAuthenticate: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct INewWindowManager(::windows::core::IUnknown);
impl INewWindowManager {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn EvaluateNewWindow<P0, P1, P2, P3, P4>(&self, pszurl: P0, pszname: P1, pszurlcontext: P2, pszfeatures: P3, freplace: P4, dwflags: u32, dwuseractiontime: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P4: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).EvaluateNewWindow)(::windows::core::Vtable::as_raw(self), pszurl.into().abi(), pszname.into().abi(), pszurlcontext.into().abi(), pszfeatures.into().abi(), freplace.into(), dwflags, dwuseractiontime).ok()
}
}
::windows::core::interface_hierarchy!(INewWindowManager, ::windows::core::IUnknown);
impl ::core::clone::Clone for INewWindowManager {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for INewWindowManager {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for INewWindowManager {}
impl ::core::fmt::Debug for INewWindowManager {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("INewWindowManager").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for INewWindowManager {
type Vtable = INewWindowManager_Vtbl;
}
unsafe impl ::windows::core::Interface for INewWindowManager {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd2bc4c84_3f72_4a52_a604_7bcbf3982cbb);
}
#[repr(C)]
#[doc(hidden)]
pub struct INewWindowManager_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub EvaluateNewWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszurl: ::windows::core::PCWSTR, pszname: ::windows::core::PCWSTR, pszurlcontext: ::windows::core::PCWSTR, pszfeatures: ::windows::core::PCWSTR, freplace: super::super::Foundation::BOOL, dwflags: u32, dwuseractiontime: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
EvaluateNewWindow: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct INotifyReplica(::windows::core::IUnknown);
impl INotifyReplica {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn YouAreAReplica(&self, rgpmkotherreplicas: &mut [::core::option::Option<super::super::System::Com::IMoniker>]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).YouAreAReplica)(::windows::core::Vtable::as_raw(self), rgpmkotherreplicas.len() as _, ::core::mem::transmute(rgpmkotherreplicas.as_ptr())).ok()
}
}
::windows::core::interface_hierarchy!(INotifyReplica, ::windows::core::IUnknown);
impl ::core::clone::Clone for INotifyReplica {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for INotifyReplica {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for INotifyReplica {}
impl ::core::fmt::Debug for INotifyReplica {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("INotifyReplica").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for INotifyReplica {
type Vtable = INotifyReplica_Vtbl;
}
unsafe impl ::windows::core::Interface for INotifyReplica {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x99180163_da16_101a_935c_444553540000);
}
#[repr(C)]
#[doc(hidden)]
pub struct INotifyReplica_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub YouAreAReplica: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ulcotherreplicas: u32, rgpmkotherreplicas: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
YouAreAReplica: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IObjMgr(::windows::core::IUnknown);
impl IObjMgr {
pub unsafe fn Append<P0>(&self, punk: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).Append)(::windows::core::Vtable::as_raw(self), punk.into().abi()).ok()
}
pub unsafe fn Remove<P0>(&self, punk: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).Remove)(::windows::core::Vtable::as_raw(self), punk.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IObjMgr, ::windows::core::IUnknown);
impl ::core::clone::Clone for IObjMgr {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IObjMgr {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IObjMgr {}
impl ::core::fmt::Debug for IObjMgr {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IObjMgr").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IObjMgr {
type Vtable = IObjMgr_Vtbl;
}
unsafe impl ::windows::core::Interface for IObjMgr {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00bb2761_6a77_11d0_a535_00c04fd7d062);
}
#[repr(C)]
#[doc(hidden)]
pub struct IObjMgr_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Append: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Remove: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IObjectProvider(::windows::core::IUnknown);
impl IObjectProvider {
pub unsafe fn QueryObject<T>(&self, guidobject: *const ::windows::core::GUID) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).QueryObject)(::windows::core::Vtable::as_raw(self), guidobject, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IObjectProvider, ::windows::core::IUnknown);
impl ::core::clone::Clone for IObjectProvider {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IObjectProvider {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IObjectProvider {}
impl ::core::fmt::Debug for IObjectProvider {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IObjectProvider").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IObjectProvider {
type Vtable = IObjectProvider_Vtbl;
}
unsafe impl ::windows::core::Interface for IObjectProvider {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa6087428_3be3_4d73_b308_7c04a540bf1a);
}
#[repr(C)]
#[doc(hidden)]
pub struct IObjectProvider_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub QueryObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, guidobject: *const ::windows::core::GUID, riid: *const ::windows::core::GUID, ppvout: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IObjectWithAppUserModelID(::windows::core::IUnknown);
impl IObjectWithAppUserModelID {
pub unsafe fn SetAppID<P0>(&self, pszappid: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetAppID)(::windows::core::Vtable::as_raw(self), pszappid.into().abi()).ok()
}
pub unsafe fn GetAppID(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetAppID)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IObjectWithAppUserModelID, ::windows::core::IUnknown);
impl ::core::clone::Clone for IObjectWithAppUserModelID {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IObjectWithAppUserModelID {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IObjectWithAppUserModelID {}
impl ::core::fmt::Debug for IObjectWithAppUserModelID {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IObjectWithAppUserModelID").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IObjectWithAppUserModelID {
type Vtable = IObjectWithAppUserModelID_Vtbl;
}
unsafe impl ::windows::core::Interface for IObjectWithAppUserModelID {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x36db0196_9665_46d1_9ba7_d3709eecf9ed);
}
#[repr(C)]
#[doc(hidden)]
pub struct IObjectWithAppUserModelID_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetAppID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszappid: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub GetAppID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszappid: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IObjectWithBackReferences(::windows::core::IUnknown);
impl IObjectWithBackReferences {
pub unsafe fn RemoveBackReferences(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RemoveBackReferences)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IObjectWithBackReferences, ::windows::core::IUnknown);
impl ::core::clone::Clone for IObjectWithBackReferences {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IObjectWithBackReferences {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IObjectWithBackReferences {}
impl ::core::fmt::Debug for IObjectWithBackReferences {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IObjectWithBackReferences").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IObjectWithBackReferences {
type Vtable = IObjectWithBackReferences_Vtbl;
}
unsafe impl ::windows::core::Interface for IObjectWithBackReferences {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x321a6a6a_d61f_4bf3_97ae_14be2986bb36);
}
#[repr(C)]
#[doc(hidden)]
pub struct IObjectWithBackReferences_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub RemoveBackReferences: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IObjectWithCancelEvent(::windows::core::IUnknown);
impl IObjectWithCancelEvent {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetCancelEvent(&self) -> ::windows::core::Result<super::super::Foundation::HANDLE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCancelEvent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IObjectWithCancelEvent, ::windows::core::IUnknown);
impl ::core::clone::Clone for IObjectWithCancelEvent {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IObjectWithCancelEvent {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IObjectWithCancelEvent {}
impl ::core::fmt::Debug for IObjectWithCancelEvent {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IObjectWithCancelEvent").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IObjectWithCancelEvent {
type Vtable = IObjectWithCancelEvent_Vtbl;
}
unsafe impl ::windows::core::Interface for IObjectWithCancelEvent {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf279b885_0ae9_4b85_ac06_ddecf9408941);
}
#[repr(C)]
#[doc(hidden)]
pub struct IObjectWithCancelEvent_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub GetCancelEvent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phevent: *mut super::super::Foundation::HANDLE) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetCancelEvent: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IObjectWithFolderEnumMode(::windows::core::IUnknown);
impl IObjectWithFolderEnumMode {
pub unsafe fn SetMode(&self, femode: FOLDER_ENUM_MODE) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetMode)(::windows::core::Vtable::as_raw(self), femode).ok()
}
pub unsafe fn GetMode(&self) -> ::windows::core::Result<FOLDER_ENUM_MODE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetMode)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IObjectWithFolderEnumMode, ::windows::core::IUnknown);
impl ::core::clone::Clone for IObjectWithFolderEnumMode {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IObjectWithFolderEnumMode {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IObjectWithFolderEnumMode {}
impl ::core::fmt::Debug for IObjectWithFolderEnumMode {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IObjectWithFolderEnumMode").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IObjectWithFolderEnumMode {
type Vtable = IObjectWithFolderEnumMode_Vtbl;
}
unsafe impl ::windows::core::Interface for IObjectWithFolderEnumMode {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6a9d9026_0e6e_464c_b000_42ecc07de673);
}
#[repr(C)]
#[doc(hidden)]
pub struct IObjectWithFolderEnumMode_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, femode: FOLDER_ENUM_MODE) -> ::windows::core::HRESULT,
pub GetMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfemode: *mut FOLDER_ENUM_MODE) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IObjectWithProgID(::windows::core::IUnknown);
impl IObjectWithProgID {
pub unsafe fn SetProgID<P0>(&self, pszprogid: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetProgID)(::windows::core::Vtable::as_raw(self), pszprogid.into().abi()).ok()
}
pub unsafe fn GetProgID(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetProgID)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IObjectWithProgID, ::windows::core::IUnknown);
impl ::core::clone::Clone for IObjectWithProgID {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IObjectWithProgID {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IObjectWithProgID {}
impl ::core::fmt::Debug for IObjectWithProgID {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IObjectWithProgID").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IObjectWithProgID {
type Vtable = IObjectWithProgID_Vtbl;
}
unsafe impl ::windows::core::Interface for IObjectWithProgID {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x71e806fb_8dee_46fc_bf8c_7748a8a1ae13);
}
#[repr(C)]
#[doc(hidden)]
pub struct IObjectWithProgID_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetProgID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszprogid: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub GetProgID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszprogid: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IObjectWithSelection(::windows::core::IUnknown);
impl IObjectWithSelection {
pub unsafe fn SetSelection<P0>(&self, psia: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItemArray>>,
{
(::windows::core::Vtable::vtable(self).SetSelection)(::windows::core::Vtable::as_raw(self), psia.into().abi()).ok()
}
pub unsafe fn GetSelection<T>(&self) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSelection)(::windows::core::Vtable::as_raw(self), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IObjectWithSelection, ::windows::core::IUnknown);
impl ::core::clone::Clone for IObjectWithSelection {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IObjectWithSelection {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IObjectWithSelection {}
impl ::core::fmt::Debug for IObjectWithSelection {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IObjectWithSelection").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IObjectWithSelection {
type Vtable = IObjectWithSelection_Vtbl;
}
unsafe impl ::windows::core::Interface for IObjectWithSelection {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1c9cd5bb_98e9_4491_a60f_31aacc72b83c);
}
#[repr(C)]
#[doc(hidden)]
pub struct IObjectWithSelection_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetSelection: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psia: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetSelection: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IOpenControlPanel(::windows::core::IUnknown);
impl IOpenControlPanel {
pub unsafe fn Open<P0, P1, P2>(&self, pszname: P0, pszpage: P1, punksite: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).Open)(::windows::core::Vtable::as_raw(self), pszname.into().abi(), pszpage.into().abi(), punksite.into().abi()).ok()
}
pub unsafe fn GetPath<P0>(&self, pszname: P0, pszpath: &mut [u16]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).GetPath)(::windows::core::Vtable::as_raw(self), pszname.into().abi(), ::core::mem::transmute(pszpath.as_ptr()), pszpath.len() as _).ok()
}
pub unsafe fn GetCurrentView(&self) -> ::windows::core::Result<CPVIEW> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCurrentView)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IOpenControlPanel, ::windows::core::IUnknown);
impl ::core::clone::Clone for IOpenControlPanel {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IOpenControlPanel {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IOpenControlPanel {}
impl ::core::fmt::Debug for IOpenControlPanel {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IOpenControlPanel").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IOpenControlPanel {
type Vtable = IOpenControlPanel_Vtbl;
}
unsafe impl ::windows::core::Interface for IOpenControlPanel {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd11ad862_66de_4df4_bf6c_1f5621996af1);
}
#[repr(C)]
#[doc(hidden)]
pub struct IOpenControlPanel_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Open: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszname: ::windows::core::PCWSTR, pszpage: ::windows::core::PCWSTR, punksite: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetPath: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszname: ::windows::core::PCWSTR, pszpath: ::windows::core::PWSTR, cchpath: u32) -> ::windows::core::HRESULT,
pub GetCurrentView: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pview: *mut CPVIEW) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IOpenSearchSource(::windows::core::IUnknown);
impl IOpenSearchSource {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetResults<P0, P1, T>(&self, hwnd: P0, pszquery: P1, dwstartindex: u32, dwcount: u32) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetResults)(::windows::core::Vtable::as_raw(self), hwnd.into(), pszquery.into().abi(), dwstartindex, dwcount, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IOpenSearchSource, ::windows::core::IUnknown);
impl ::core::clone::Clone for IOpenSearchSource {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IOpenSearchSource {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IOpenSearchSource {}
impl ::core::fmt::Debug for IOpenSearchSource {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IOpenSearchSource").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IOpenSearchSource {
type Vtable = IOpenSearchSource_Vtbl;
}
unsafe impl ::windows::core::Interface for IOpenSearchSource {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf0ee7333_e6fc_479b_9f25_a860c234a38e);
}
#[repr(C)]
#[doc(hidden)]
pub struct IOpenSearchSource_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub GetResults: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, pszquery: ::windows::core::PCWSTR, dwstartindex: u32, dwcount: u32, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetResults: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IOperationsProgressDialog(::windows::core::IUnknown);
impl IOperationsProgressDialog {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn StartProgressDialog<P0>(&self, hwndowner: P0, flags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).StartProgressDialog)(::windows::core::Vtable::as_raw(self), hwndowner.into(), flags).ok()
}
pub unsafe fn StopProgressDialog(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).StopProgressDialog)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetOperation(&self, action: SPACTION) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetOperation)(::windows::core::Vtable::as_raw(self), action).ok()
}
pub unsafe fn SetMode(&self, mode: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetMode)(::windows::core::Vtable::as_raw(self), mode).ok()
}
pub unsafe fn UpdateProgress(&self, ullpointscurrent: u64, ullpointstotal: u64, ullsizecurrent: u64, ullsizetotal: u64, ullitemscurrent: u64, ullitemstotal: u64) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UpdateProgress)(::windows::core::Vtable::as_raw(self), ullpointscurrent, ullpointstotal, ullsizecurrent, ullsizetotal, ullitemscurrent, ullitemstotal).ok()
}
pub unsafe fn UpdateLocations<P0, P1, P2>(&self, psisource: P0, psitarget: P1, psiitem: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P2: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).UpdateLocations)(::windows::core::Vtable::as_raw(self), psisource.into().abi(), psitarget.into().abi(), psiitem.into().abi()).ok()
}
pub unsafe fn ResetTimer(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ResetTimer)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn PauseTimer(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).PauseTimer)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ResumeTimer(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ResumeTimer)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GetMilliseconds(&self, pullelapsed: *mut u64, pullremaining: *mut u64) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetMilliseconds)(::windows::core::Vtable::as_raw(self), pullelapsed, pullremaining).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetOperationStatus(&self) -> ::windows::core::Result<PropertiesSystem::PDOPSTATUS> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetOperationStatus)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IOperationsProgressDialog, ::windows::core::IUnknown);
impl ::core::clone::Clone for IOperationsProgressDialog {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IOperationsProgressDialog {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IOperationsProgressDialog {}
impl ::core::fmt::Debug for IOperationsProgressDialog {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IOperationsProgressDialog").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IOperationsProgressDialog {
type Vtable = IOperationsProgressDialog_Vtbl;
}
unsafe impl ::windows::core::Interface for IOperationsProgressDialog {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0c9fb851_e5c9_43eb_a370_f0677b13874c);
}
#[repr(C)]
#[doc(hidden)]
pub struct IOperationsProgressDialog_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub StartProgressDialog: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndowner: super::super::Foundation::HWND, flags: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
StartProgressDialog: usize,
pub StopProgressDialog: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetOperation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, action: SPACTION) -> ::windows::core::HRESULT,
pub SetMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, mode: u32) -> ::windows::core::HRESULT,
pub UpdateProgress: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ullpointscurrent: u64, ullpointstotal: u64, ullsizecurrent: u64, ullsizetotal: u64, ullitemscurrent: u64, ullitemstotal: u64) -> ::windows::core::HRESULT,
pub UpdateLocations: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psisource: *mut ::core::ffi::c_void, psitarget: *mut ::core::ffi::c_void, psiitem: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub ResetTimer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub PauseTimer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub ResumeTimer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetMilliseconds: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pullelapsed: *mut u64, pullremaining: *mut u64) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetOperationStatus: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, popstatus: *mut PropertiesSystem::PDOPSTATUS) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetOperationStatus: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IPackageDebugSettings(::windows::core::IUnknown);
impl IPackageDebugSettings {
pub unsafe fn EnableDebugging<P0, P1, P2>(&self, packagefullname: P0, debuggercommandline: P1, environment: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).EnableDebugging)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi(), debuggercommandline.into().abi(), environment.into().abi()).ok()
}
pub unsafe fn DisableDebugging<P0>(&self, packagefullname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).DisableDebugging)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi()).ok()
}
pub unsafe fn Suspend<P0>(&self, packagefullname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).Suspend)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi()).ok()
}
pub unsafe fn Resume<P0>(&self, packagefullname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).Resume)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi()).ok()
}
pub unsafe fn TerminateAllProcesses<P0>(&self, packagefullname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).TerminateAllProcesses)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi()).ok()
}
pub unsafe fn SetTargetSessionId(&self, sessionid: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetTargetSessionId)(::windows::core::Vtable::as_raw(self), sessionid).ok()
}
pub unsafe fn EnumerateBackgroundTasks<P0>(&self, packagefullname: P0, taskcount: *mut u32, taskids: *mut *mut ::windows::core::GUID, tasknames: *mut *mut ::windows::core::PWSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).EnumerateBackgroundTasks)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi(), taskcount, taskids, tasknames).ok()
}
pub unsafe fn ActivateBackgroundTask(&self, taskid: *const ::windows::core::GUID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ActivateBackgroundTask)(::windows::core::Vtable::as_raw(self), taskid).ok()
}
pub unsafe fn StartServicing<P0>(&self, packagefullname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).StartServicing)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi()).ok()
}
pub unsafe fn StopServicing<P0>(&self, packagefullname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).StopServicing)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi()).ok()
}
pub unsafe fn StartSessionRedirection<P0>(&self, packagefullname: P0, sessionid: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).StartSessionRedirection)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi(), sessionid).ok()
}
pub unsafe fn StopSessionRedirection<P0>(&self, packagefullname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).StopSessionRedirection)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi()).ok()
}
pub unsafe fn GetPackageExecutionState<P0>(&self, packagefullname: P0) -> ::windows::core::Result<PACKAGE_EXECUTION_STATE>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPackageExecutionState)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn RegisterForPackageStateChanges<P0, P1>(&self, packagefullname: P0, ppackageexecutionstatechangenotification: P1) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<IPackageExecutionStateChangeNotification>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).RegisterForPackageStateChanges)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi(), ppackageexecutionstatechangenotification.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn UnregisterForPackageStateChanges(&self, dwcookie: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UnregisterForPackageStateChanges)(::windows::core::Vtable::as_raw(self), dwcookie).ok()
}
}
::windows::core::interface_hierarchy!(IPackageDebugSettings, ::windows::core::IUnknown);
impl ::core::clone::Clone for IPackageDebugSettings {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IPackageDebugSettings {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IPackageDebugSettings {}
impl ::core::fmt::Debug for IPackageDebugSettings {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IPackageDebugSettings").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IPackageDebugSettings {
type Vtable = IPackageDebugSettings_Vtbl;
}
unsafe impl ::windows::core::Interface for IPackageDebugSettings {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf27c3930_8029_4ad1_94e3_3dba417810c1);
}
#[repr(C)]
#[doc(hidden)]
pub struct IPackageDebugSettings_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub EnableDebugging: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, packagefullname: ::windows::core::PCWSTR, debuggercommandline: ::windows::core::PCWSTR, environment: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub DisableDebugging: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, packagefullname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub Suspend: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, packagefullname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub Resume: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, packagefullname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub TerminateAllProcesses: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, packagefullname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub SetTargetSessionId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, sessionid: u32) -> ::windows::core::HRESULT,
pub EnumerateBackgroundTasks: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, packagefullname: ::windows::core::PCWSTR, taskcount: *mut u32, taskids: *mut *mut ::windows::core::GUID, tasknames: *mut *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub ActivateBackgroundTask: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, taskid: *const ::windows::core::GUID) -> ::windows::core::HRESULT,
pub StartServicing: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, packagefullname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub StopServicing: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, packagefullname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub StartSessionRedirection: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, packagefullname: ::windows::core::PCWSTR, sessionid: u32) -> ::windows::core::HRESULT,
pub StopSessionRedirection: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, packagefullname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub GetPackageExecutionState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, packagefullname: ::windows::core::PCWSTR, packageexecutionstate: *mut PACKAGE_EXECUTION_STATE) -> ::windows::core::HRESULT,
pub RegisterForPackageStateChanges: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, packagefullname: ::windows::core::PCWSTR, ppackageexecutionstatechangenotification: *mut ::core::ffi::c_void, pdwcookie: *mut u32) -> ::windows::core::HRESULT,
pub UnregisterForPackageStateChanges: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwcookie: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IPackageDebugSettings2(::windows::core::IUnknown);
impl IPackageDebugSettings2 {
pub unsafe fn EnableDebugging<P0, P1, P2>(&self, packagefullname: P0, debuggercommandline: P1, environment: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.EnableDebugging)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi(), debuggercommandline.into().abi(), environment.into().abi()).ok()
}
pub unsafe fn DisableDebugging<P0>(&self, packagefullname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.DisableDebugging)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi()).ok()
}
pub unsafe fn Suspend<P0>(&self, packagefullname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.Suspend)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi()).ok()
}
pub unsafe fn Resume<P0>(&self, packagefullname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.Resume)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi()).ok()
}
pub unsafe fn TerminateAllProcesses<P0>(&self, packagefullname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.TerminateAllProcesses)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi()).ok()
}
pub unsafe fn SetTargetSessionId(&self, sessionid: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetTargetSessionId)(::windows::core::Vtable::as_raw(self), sessionid).ok()
}
pub unsafe fn EnumerateBackgroundTasks<P0>(&self, packagefullname: P0, taskcount: *mut u32, taskids: *mut *mut ::windows::core::GUID, tasknames: *mut *mut ::windows::core::PWSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.EnumerateBackgroundTasks)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi(), taskcount, taskids, tasknames).ok()
}
pub unsafe fn ActivateBackgroundTask(&self, taskid: *const ::windows::core::GUID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.ActivateBackgroundTask)(::windows::core::Vtable::as_raw(self), taskid).ok()
}
pub unsafe fn StartServicing<P0>(&self, packagefullname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.StartServicing)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi()).ok()
}
pub unsafe fn StopServicing<P0>(&self, packagefullname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.StopServicing)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi()).ok()
}
pub unsafe fn StartSessionRedirection<P0>(&self, packagefullname: P0, sessionid: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.StartSessionRedirection)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi(), sessionid).ok()
}
pub unsafe fn StopSessionRedirection<P0>(&self, packagefullname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.StopSessionRedirection)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi()).ok()
}
pub unsafe fn GetPackageExecutionState<P0>(&self, packagefullname: P0) -> ::windows::core::Result<PACKAGE_EXECUTION_STATE>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetPackageExecutionState)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn RegisterForPackageStateChanges<P0, P1>(&self, packagefullname: P0, ppackageexecutionstatechangenotification: P1) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<IPackageExecutionStateChangeNotification>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.RegisterForPackageStateChanges)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi(), ppackageexecutionstatechangenotification.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn UnregisterForPackageStateChanges(&self, dwcookie: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.UnregisterForPackageStateChanges)(::windows::core::Vtable::as_raw(self), dwcookie).ok()
}
pub unsafe fn EnumerateApps<P0>(&self, packagefullname: P0, appcount: *mut u32, appusermodelids: *mut *mut ::windows::core::PWSTR, appdisplaynames: *mut *mut ::windows::core::PWSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).EnumerateApps)(::windows::core::Vtable::as_raw(self), packagefullname.into().abi(), appcount, appusermodelids, appdisplaynames).ok()
}
}
::windows::core::interface_hierarchy!(IPackageDebugSettings2, ::windows::core::IUnknown, IPackageDebugSettings);
impl ::core::clone::Clone for IPackageDebugSettings2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IPackageDebugSettings2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IPackageDebugSettings2 {}
impl ::core::fmt::Debug for IPackageDebugSettings2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IPackageDebugSettings2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IPackageDebugSettings2 {
type Vtable = IPackageDebugSettings2_Vtbl;
}
unsafe impl ::windows::core::Interface for IPackageDebugSettings2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6e3194bb_ab82_4d22_93f5_fabda40e7b16);
}
#[repr(C)]
#[doc(hidden)]
pub struct IPackageDebugSettings2_Vtbl {
pub base__: IPackageDebugSettings_Vtbl,
pub EnumerateApps: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, packagefullname: ::windows::core::PCWSTR, appcount: *mut u32, appusermodelids: *mut *mut ::windows::core::PWSTR, appdisplaynames: *mut *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IPackageExecutionStateChangeNotification(::windows::core::IUnknown);
impl IPackageExecutionStateChangeNotification {
pub unsafe fn OnStateChanged<P0>(&self, pszpackagefullname: P0, pesnewstate: PACKAGE_EXECUTION_STATE) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).OnStateChanged)(::windows::core::Vtable::as_raw(self), pszpackagefullname.into().abi(), pesnewstate).ok()
}
}
::windows::core::interface_hierarchy!(IPackageExecutionStateChangeNotification, ::windows::core::IUnknown);
impl ::core::clone::Clone for IPackageExecutionStateChangeNotification {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IPackageExecutionStateChangeNotification {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IPackageExecutionStateChangeNotification {}
impl ::core::fmt::Debug for IPackageExecutionStateChangeNotification {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IPackageExecutionStateChangeNotification").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IPackageExecutionStateChangeNotification {
type Vtable = IPackageExecutionStateChangeNotification_Vtbl;
}
unsafe impl ::windows::core::Interface for IPackageExecutionStateChangeNotification {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1bb12a62_2ad8_432b_8ccf_0c2c52afcd5b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IPackageExecutionStateChangeNotification_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub OnStateChanged: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszpackagefullname: ::windows::core::PCWSTR, pesnewstate: PACKAGE_EXECUTION_STATE) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IParentAndItem(::windows::core::IUnknown);
impl IParentAndItem {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SetParentAndItem<P0>(&self, pidlparent: *const Common::ITEMIDLIST, psf: P0, pidlchild: *const Common::ITEMIDLIST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
{
(::windows::core::Vtable::vtable(self).SetParentAndItem)(::windows::core::Vtable::as_raw(self), pidlparent, psf.into().abi(), pidlchild).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetParentAndItem(&self, ppidlparent: ::core::option::Option<*mut *mut Common::ITEMIDLIST>, ppsf: ::core::option::Option<*mut ::core::option::Option<IShellFolder>>, ppidlchild: ::core::option::Option<*mut *mut Common::ITEMIDLIST>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetParentAndItem)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(ppidlparent.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(ppsf.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(ppidlchild.unwrap_or(::std::ptr::null_mut()))).ok()
}
}
::windows::core::interface_hierarchy!(IParentAndItem, ::windows::core::IUnknown);
impl ::core::clone::Clone for IParentAndItem {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IParentAndItem {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IParentAndItem {}
impl ::core::fmt::Debug for IParentAndItem {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IParentAndItem").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IParentAndItem {
type Vtable = IParentAndItem_Vtbl;
}
unsafe impl ::windows::core::Interface for IParentAndItem {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb3a4b685_b685_4805_99d9_5dead2873236);
}
#[repr(C)]
#[doc(hidden)]
pub struct IParentAndItem_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub SetParentAndItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidlparent: *const Common::ITEMIDLIST, psf: *mut ::core::ffi::c_void, pidlchild: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
SetParentAndItem: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetParentAndItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppidlparent: *mut *mut Common::ITEMIDLIST, ppsf: *mut *mut ::core::ffi::c_void, ppidlchild: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetParentAndItem: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IParseAndCreateItem(::windows::core::IUnknown);
impl IParseAndCreateItem {
pub unsafe fn SetItem<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).SetItem)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
pub unsafe fn GetItem<T>(&self) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItem)(::windows::core::Vtable::as_raw(self), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IParseAndCreateItem, ::windows::core::IUnknown);
impl ::core::clone::Clone for IParseAndCreateItem {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IParseAndCreateItem {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IParseAndCreateItem {}
impl ::core::fmt::Debug for IParseAndCreateItem {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IParseAndCreateItem").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IParseAndCreateItem {
type Vtable = IParseAndCreateItem_Vtbl;
}
unsafe impl ::windows::core::Interface for IParseAndCreateItem {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x67efed0e_e827_4408_b493_78f3982b685c);
}
#[repr(C)]
#[doc(hidden)]
pub struct IParseAndCreateItem_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IPersistFolder(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IPersistFolder {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn GetClassID(&self) -> ::windows::core::Result<::windows::core::GUID> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetClassID)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn Initialize(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self), pidl).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IPersistFolder, ::windows::core::IUnknown, super::super::System::Com::IPersist);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IPersistFolder {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IPersistFolder {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IPersistFolder {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IPersistFolder {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IPersistFolder").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IPersistFolder {
type Vtable = IPersistFolder_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IPersistFolder {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214ea_0000_0000_c000_000000000046);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IPersistFolder_Vtbl {
pub base__: super::super::System::Com::IPersist_Vtbl,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
Initialize: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IPersistFolder2(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IPersistFolder2 {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn GetClassID(&self) -> ::windows::core::Result<::windows::core::GUID> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetClassID)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn Initialize(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Initialize)(::windows::core::Vtable::as_raw(self), pidl).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetCurFolder(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCurFolder)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IPersistFolder2, ::windows::core::IUnknown, super::super::System::Com::IPersist, IPersistFolder);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IPersistFolder2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IPersistFolder2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IPersistFolder2 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IPersistFolder2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IPersistFolder2").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IPersistFolder2 {
type Vtable = IPersistFolder2_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IPersistFolder2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1ac3d9f0_175c_11d1_95be_00609797ea4f);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IPersistFolder2_Vtbl {
pub base__: IPersistFolder_Vtbl,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetCurFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppidl: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetCurFolder: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IPersistFolder3(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IPersistFolder3 {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn GetClassID(&self) -> ::windows::core::Result<::windows::core::GUID> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.GetClassID)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn Initialize(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.Initialize)(::windows::core::Vtable::as_raw(self), pidl).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetCurFolder(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetCurFolder)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn InitializeEx<P0>(&self, pbc: P0, pidlroot: *const Common::ITEMIDLIST, ppfti: *const PERSIST_FOLDER_TARGET_INFO) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
{
(::windows::core::Vtable::vtable(self).InitializeEx)(::windows::core::Vtable::as_raw(self), pbc.into().abi(), pidlroot, ppfti).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetFolderTargetInfo(&self, ppfti: *mut PERSIST_FOLDER_TARGET_INFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetFolderTargetInfo)(::windows::core::Vtable::as_raw(self), ppfti).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IPersistFolder3, ::windows::core::IUnknown, super::super::System::Com::IPersist, IPersistFolder, IPersistFolder2);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IPersistFolder3 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IPersistFolder3 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IPersistFolder3 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IPersistFolder3 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IPersistFolder3").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IPersistFolder3 {
type Vtable = IPersistFolder3_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IPersistFolder3 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcef04fdf_fe72_11d2_87a5_00c04f6837cf);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IPersistFolder3_Vtbl {
pub base__: IPersistFolder2_Vtbl,
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub InitializeEx: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbc: *mut ::core::ffi::c_void, pidlroot: *const Common::ITEMIDLIST, ppfti: *const PERSIST_FOLDER_TARGET_INFO) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common")))]
InitializeEx: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetFolderTargetInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppfti: *mut PERSIST_FOLDER_TARGET_INFO) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetFolderTargetInfo: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IPersistIDList(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IPersistIDList {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn GetClassID(&self) -> ::windows::core::Result<::windows::core::GUID> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetClassID)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SetIDList(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetIDList)(::windows::core::Vtable::as_raw(self), pidl).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetIDList(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetIDList)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IPersistIDList, ::windows::core::IUnknown, super::super::System::Com::IPersist);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IPersistIDList {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IPersistIDList {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IPersistIDList {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IPersistIDList {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IPersistIDList").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IPersistIDList {
type Vtable = IPersistIDList_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IPersistIDList {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1079acfc_29bd_11d3_8e0d_00c04f6837d5);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IPersistIDList_Vtbl {
pub base__: super::super::System::Com::IPersist_Vtbl,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub SetIDList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
SetIDList: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetIDList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppidl: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetIDList: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IPreviewHandler(::windows::core::IUnknown);
impl IPreviewHandler {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetWindow<P0>(&self, hwnd: P0, prc: *const super::super::Foundation::RECT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).SetWindow)(::windows::core::Vtable::as_raw(self), hwnd.into(), prc).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetRect(&self, prc: *const super::super::Foundation::RECT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetRect)(::windows::core::Vtable::as_raw(self), prc).ok()
}
pub unsafe fn DoPreview(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).DoPreview)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Unload(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Unload)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetFocus(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetFocus)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn QueryFocus(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).QueryFocus)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn TranslateAccelerator(&self, pmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).TranslateAccelerator)(::windows::core::Vtable::as_raw(self), pmsg).ok()
}
}
::windows::core::interface_hierarchy!(IPreviewHandler, ::windows::core::IUnknown);
impl ::core::clone::Clone for IPreviewHandler {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IPreviewHandler {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IPreviewHandler {}
impl ::core::fmt::Debug for IPreviewHandler {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IPreviewHandler").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IPreviewHandler {
type Vtable = IPreviewHandler_Vtbl;
}
unsafe impl ::windows::core::Interface for IPreviewHandler {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8895b1c6_b41f_4c1c_a562_0d564250836f);
}
#[repr(C)]
#[doc(hidden)]
pub struct IPreviewHandler_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub SetWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, prc: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetWindow: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetRect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, prc: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetRect: usize,
pub DoPreview: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Unload: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetFocus: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub QueryFocus: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phwnd: *mut super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
QueryFocus: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub TranslateAccelerator: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
TranslateAccelerator: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IPreviewHandlerFrame(::windows::core::IUnknown);
impl IPreviewHandlerFrame {
#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub unsafe fn GetWindowContext(&self) -> ::windows::core::Result<PREVIEWHANDLERFRAMEINFO> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetWindowContext)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn TranslateAccelerator(&self, pmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).TranslateAccelerator)(::windows::core::Vtable::as_raw(self), pmsg).ok()
}
}
::windows::core::interface_hierarchy!(IPreviewHandlerFrame, ::windows::core::IUnknown);
impl ::core::clone::Clone for IPreviewHandlerFrame {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IPreviewHandlerFrame {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IPreviewHandlerFrame {}
impl ::core::fmt::Debug for IPreviewHandlerFrame {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IPreviewHandlerFrame").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IPreviewHandlerFrame {
type Vtable = IPreviewHandlerFrame_Vtbl;
}
unsafe impl ::windows::core::Interface for IPreviewHandlerFrame {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfec87aaf_35f9_447a_adb7_20234491401a);
}
#[repr(C)]
#[doc(hidden)]
pub struct IPreviewHandlerFrame_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub GetWindowContext: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pinfo: *mut PREVIEWHANDLERFRAMEINFO) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_WindowsAndMessaging"))]
GetWindowContext: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub TranslateAccelerator: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
TranslateAccelerator: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IPreviewHandlerVisuals(::windows::core::IUnknown);
impl IPreviewHandlerVisuals {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetBackgroundColor<P0>(&self, color: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::COLORREF>,
{
(::windows::core::Vtable::vtable(self).SetBackgroundColor)(::windows::core::Vtable::as_raw(self), color.into()).ok()
}
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn SetFont(&self, plf: *const super::super::Graphics::Gdi::LOGFONTW) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetFont)(::windows::core::Vtable::as_raw(self), plf).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetTextColor<P0>(&self, color: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::COLORREF>,
{
(::windows::core::Vtable::vtable(self).SetTextColor)(::windows::core::Vtable::as_raw(self), color.into()).ok()
}
}
::windows::core::interface_hierarchy!(IPreviewHandlerVisuals, ::windows::core::IUnknown);
impl ::core::clone::Clone for IPreviewHandlerVisuals {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IPreviewHandlerVisuals {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IPreviewHandlerVisuals {}
impl ::core::fmt::Debug for IPreviewHandlerVisuals {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IPreviewHandlerVisuals").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IPreviewHandlerVisuals {
type Vtable = IPreviewHandlerVisuals_Vtbl;
}
unsafe impl ::windows::core::Interface for IPreviewHandlerVisuals {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x196bf9a5_b346_4ef0_aa1e_5dcdb76768b1);
}
#[repr(C)]
#[doc(hidden)]
pub struct IPreviewHandlerVisuals_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub SetBackgroundColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, color: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetBackgroundColor: usize,
#[cfg(feature = "Win32_Graphics_Gdi")]
pub SetFont: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plf: *const super::super::Graphics::Gdi::LOGFONTW) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Gdi"))]
SetFont: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetTextColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, color: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetTextColor: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IPreviewItem(::windows::core::IUnknown);
impl IPreviewItem {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetItemIDList(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItemIDList)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetItem(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItem)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IPreviewItem, ::windows::core::IUnknown, IRelatedItem);
impl ::core::clone::Clone for IPreviewItem {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IPreviewItem {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IPreviewItem {}
impl ::core::fmt::Debug for IPreviewItem {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IPreviewItem").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IPreviewItem {
type Vtable = IPreviewItem_Vtbl;
}
unsafe impl ::windows::core::Interface for IPreviewItem {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x36149969_0a8f_49c8_8b00_4aecb20222fb);
}
#[repr(C)]
#[doc(hidden)]
pub struct IPreviewItem_Vtbl {
pub base__: IRelatedItem_Vtbl,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IPreviousVersionsInfo(::windows::core::IUnknown);
impl IPreviousVersionsInfo {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn AreSnapshotsAvailable<P0, P1>(&self, pszpath: P0, foktobeslow: P1) -> ::windows::core::Result<super::super::Foundation::BOOL>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).AreSnapshotsAvailable)(::windows::core::Vtable::as_raw(self), pszpath.into().abi(), foktobeslow.into(), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IPreviousVersionsInfo, ::windows::core::IUnknown);
impl ::core::clone::Clone for IPreviousVersionsInfo {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IPreviousVersionsInfo {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IPreviousVersionsInfo {}
impl ::core::fmt::Debug for IPreviousVersionsInfo {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IPreviousVersionsInfo").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IPreviousVersionsInfo {
type Vtable = IPreviousVersionsInfo_Vtbl;
}
unsafe impl ::windows::core::Interface for IPreviousVersionsInfo {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x76e54780_ad74_48e3_a695_3ba9a0aff10d);
}
#[repr(C)]
#[doc(hidden)]
pub struct IPreviousVersionsInfo_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub AreSnapshotsAvailable: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszpath: ::windows::core::PCWSTR, foktobeslow: super::super::Foundation::BOOL, pfavailable: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
AreSnapshotsAvailable: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IProfferService(::windows::core::IUnknown);
impl IProfferService {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn ProfferService<P0>(&self, serviceid: *const ::windows::core::GUID, serviceprovider: P0) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IServiceProvider>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ProfferService)(::windows::core::Vtable::as_raw(self), serviceid, serviceprovider.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn RevokeService(&self, cookie: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RevokeService)(::windows::core::Vtable::as_raw(self), cookie).ok()
}
}
::windows::core::interface_hierarchy!(IProfferService, ::windows::core::IUnknown);
impl ::core::clone::Clone for IProfferService {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IProfferService {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IProfferService {}
impl ::core::fmt::Debug for IProfferService {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IProfferService").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IProfferService {
type Vtable = IProfferService_Vtbl;
}
unsafe impl ::windows::core::Interface for IProfferService {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcb728b20_f786_11ce_92ad_00aa00a74cd0);
}
#[repr(C)]
#[doc(hidden)]
pub struct IProfferService_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub ProfferService: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, serviceid: *const ::windows::core::GUID, serviceprovider: *mut ::core::ffi::c_void, cookie: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
ProfferService: usize,
pub RevokeService: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cookie: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IProgressDialog(::windows::core::IUnknown);
impl IProgressDialog {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn StartProgressDialog<P0, P1>(&self, hwndparent: P0, punkenablemodless: P1, dwflags: u32, pvresevered: ::core::option::Option<*const ::core::ffi::c_void>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).StartProgressDialog)(::windows::core::Vtable::as_raw(self), hwndparent.into(), punkenablemodless.into().abi(), dwflags, ::core::mem::transmute(pvresevered.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn StopProgressDialog(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).StopProgressDialog)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetTitle<P0>(&self, pwztitle: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetTitle)(::windows::core::Vtable::as_raw(self), pwztitle.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetAnimation<P0>(&self, hinstanimation: P0, idanimation: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HINSTANCE>,
{
(::windows::core::Vtable::vtable(self).SetAnimation)(::windows::core::Vtable::as_raw(self), hinstanimation.into(), idanimation).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn HasUserCancelled(&self) -> super::super::Foundation::BOOL {
(::windows::core::Vtable::vtable(self).HasUserCancelled)(::windows::core::Vtable::as_raw(self))
}
pub unsafe fn SetProgress(&self, dwcompleted: u32, dwtotal: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetProgress)(::windows::core::Vtable::as_raw(self), dwcompleted, dwtotal).ok()
}
pub unsafe fn SetProgress64(&self, ullcompleted: u64, ulltotal: u64) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetProgress64)(::windows::core::Vtable::as_raw(self), ullcompleted, ulltotal).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetLine<P0, P1>(&self, dwlinenum: u32, pwzstring: P0, fcompactpath: P1, pvresevered: ::core::option::Option<*const ::core::ffi::c_void>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetLine)(::windows::core::Vtable::as_raw(self), dwlinenum, pwzstring.into().abi(), fcompactpath.into(), ::core::mem::transmute(pvresevered.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn SetCancelMsg<P0>(&self, pwzcancelmsg: P0, pvresevered: ::core::option::Option<*const ::core::ffi::c_void>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetCancelMsg)(::windows::core::Vtable::as_raw(self), pwzcancelmsg.into().abi(), ::core::mem::transmute(pvresevered.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn Timer(&self, dwtimeraction: u32, pvresevered: ::core::option::Option<*const ::core::ffi::c_void>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Timer)(::windows::core::Vtable::as_raw(self), dwtimeraction, ::core::mem::transmute(pvresevered.unwrap_or(::std::ptr::null()))).ok()
}
}
::windows::core::interface_hierarchy!(IProgressDialog, ::windows::core::IUnknown);
impl ::core::clone::Clone for IProgressDialog {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IProgressDialog {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IProgressDialog {}
impl ::core::fmt::Debug for IProgressDialog {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IProgressDialog").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IProgressDialog {
type Vtable = IProgressDialog_Vtbl;
}
unsafe impl ::windows::core::Interface for IProgressDialog {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xebbc7c04_315e_11d2_b62f_006097df5bd4);
}
#[repr(C)]
#[doc(hidden)]
pub struct IProgressDialog_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub StartProgressDialog: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndparent: super::super::Foundation::HWND, punkenablemodless: *mut ::core::ffi::c_void, dwflags: u32, pvresevered: *const ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
StartProgressDialog: usize,
pub StopProgressDialog: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetTitle: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwztitle: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub SetAnimation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hinstanimation: super::super::Foundation::HINSTANCE, idanimation: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetAnimation: usize,
#[cfg(feature = "Win32_Foundation")]
pub HasUserCancelled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> super::super::Foundation::BOOL,
#[cfg(not(feature = "Win32_Foundation"))]
HasUserCancelled: usize,
pub SetProgress: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwcompleted: u32, dwtotal: u32) -> ::windows::core::HRESULT,
pub SetProgress64: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ullcompleted: u64, ulltotal: u64) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub SetLine: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwlinenum: u32, pwzstring: ::windows::core::PCWSTR, fcompactpath: super::super::Foundation::BOOL, pvresevered: *const ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetLine: usize,
pub SetCancelMsg: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwzcancelmsg: ::windows::core::PCWSTR, pvresevered: *const ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Timer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwtimeraction: u32, pvresevered: *const ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IPropertyKeyStore(::windows::core::IUnknown);
impl IPropertyKeyStore {
pub unsafe fn GetKeyCount(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetKeyCount)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetKeyAt(&self, index: i32, pkey: *mut PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetKeyAt)(::windows::core::Vtable::as_raw(self), index, pkey).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn AppendKey(&self, key: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AppendKey)(::windows::core::Vtable::as_raw(self), key).ok()
}
pub unsafe fn DeleteKey(&self, index: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).DeleteKey)(::windows::core::Vtable::as_raw(self), index).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn IsKeyInStore(&self, key: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).IsKeyInStore)(::windows::core::Vtable::as_raw(self), key).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn RemoveKey(&self, key: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RemoveKey)(::windows::core::Vtable::as_raw(self), key).ok()
}
}
::windows::core::interface_hierarchy!(IPropertyKeyStore, ::windows::core::IUnknown);
impl ::core::clone::Clone for IPropertyKeyStore {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IPropertyKeyStore {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IPropertyKeyStore {}
impl ::core::fmt::Debug for IPropertyKeyStore {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IPropertyKeyStore").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IPropertyKeyStore {
type Vtable = IPropertyKeyStore_Vtbl;
}
unsafe impl ::windows::core::Interface for IPropertyKeyStore {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x75bd59aa_f23b_4963_aba4_0b355752a91b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IPropertyKeyStore_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetKeyCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, keycount: *mut i32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetKeyAt: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, index: i32, pkey: *mut PropertiesSystem::PROPERTYKEY) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetKeyAt: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub AppendKey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, key: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
AppendKey: usize,
pub DeleteKey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, index: i32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub IsKeyInStore: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, key: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
IsKeyInStore: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub RemoveKey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, key: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
RemoveKey: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IPublishedApp(::windows::core::IUnknown);
impl IPublishedApp {
pub unsafe fn GetAppInfo(&self, pai: *mut APPINFODATA) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetAppInfo)(::windows::core::Vtable::as_raw(self), pai).ok()
}
pub unsafe fn GetPossibleActions(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetPossibleActions)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetSlowAppInfo(&self, psaid: *mut SLOWAPPINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetSlowAppInfo)(::windows::core::Vtable::as_raw(self), psaid).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetCachedSlowAppInfo(&self, psaid: *mut SLOWAPPINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetCachedSlowAppInfo)(::windows::core::Vtable::as_raw(self), psaid).ok()
}
pub unsafe fn IsInstalled(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.IsInstalled)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Install(&self, pstinstall: *const super::super::Foundation::SYSTEMTIME) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Install)(::windows::core::Vtable::as_raw(self), pstinstall).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetPublishedAppInfo(&self, ppai: *mut PUBAPPINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetPublishedAppInfo)(::windows::core::Vtable::as_raw(self), ppai).ok()
}
pub unsafe fn Unschedule(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Unschedule)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IPublishedApp, ::windows::core::IUnknown, IShellApp);
impl ::core::clone::Clone for IPublishedApp {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IPublishedApp {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IPublishedApp {}
impl ::core::fmt::Debug for IPublishedApp {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IPublishedApp").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IPublishedApp {
type Vtable = IPublishedApp_Vtbl;
}
unsafe impl ::windows::core::Interface for IPublishedApp {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1bc752e0_9046_11d1_b8b3_006008059382);
}
#[repr(C)]
#[doc(hidden)]
pub struct IPublishedApp_Vtbl {
pub base__: IShellApp_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub Install: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstinstall: *const super::super::Foundation::SYSTEMTIME) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Install: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetPublishedAppInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppai: *mut PUBAPPINFO) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetPublishedAppInfo: usize,
pub Unschedule: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IPublishedApp2(::windows::core::IUnknown);
impl IPublishedApp2 {
pub unsafe fn GetAppInfo(&self, pai: *mut APPINFODATA) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.GetAppInfo)(::windows::core::Vtable::as_raw(self), pai).ok()
}
pub unsafe fn GetPossibleActions(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetPossibleActions)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetSlowAppInfo(&self, psaid: *mut SLOWAPPINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.GetSlowAppInfo)(::windows::core::Vtable::as_raw(self), psaid).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetCachedSlowAppInfo(&self, psaid: *mut SLOWAPPINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.GetCachedSlowAppInfo)(::windows::core::Vtable::as_raw(self), psaid).ok()
}
pub unsafe fn IsInstalled(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.IsInstalled)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Install(&self, pstinstall: *const super::super::Foundation::SYSTEMTIME) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Install)(::windows::core::Vtable::as_raw(self), pstinstall).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetPublishedAppInfo(&self, ppai: *mut PUBAPPINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetPublishedAppInfo)(::windows::core::Vtable::as_raw(self), ppai).ok()
}
pub unsafe fn Unschedule(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Unschedule)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Install2<P0>(&self, pstinstall: *const super::super::Foundation::SYSTEMTIME, hwndparent: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).Install2)(::windows::core::Vtable::as_raw(self), pstinstall, hwndparent.into()).ok()
}
}
::windows::core::interface_hierarchy!(IPublishedApp2, ::windows::core::IUnknown, IShellApp, IPublishedApp);
impl ::core::clone::Clone for IPublishedApp2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IPublishedApp2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IPublishedApp2 {}
impl ::core::fmt::Debug for IPublishedApp2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IPublishedApp2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IPublishedApp2 {
type Vtable = IPublishedApp2_Vtbl;
}
unsafe impl ::windows::core::Interface for IPublishedApp2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x12b81347_1b3a_4a04_aa61_3f768b67fd7e);
}
#[repr(C)]
#[doc(hidden)]
pub struct IPublishedApp2_Vtbl {
pub base__: IPublishedApp_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub Install2: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstinstall: *const super::super::Foundation::SYSTEMTIME, hwndparent: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Install2: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IPublishingWizard(::windows::core::IUnknown);
impl IPublishingWizard {
#[doc = "*Required features: `\"Win32_UI_Controls\"`*"]
#[cfg(feature = "Win32_UI_Controls")]
pub unsafe fn AddPages(&self, apages: &mut [super::Controls::HPROPSHEETPAGE], pnpagesadded: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.AddPages)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(apages.as_ptr()), apages.len() as _, pnpagesadded).ok()
}
#[doc = "*Required features: `\"Win32_UI_Controls\"`*"]
#[cfg(feature = "Win32_UI_Controls")]
pub unsafe fn GetFirstPage(&self) -> ::windows::core::Result<super::Controls::HPROPSHEETPAGE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetFirstPage)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Controls\"`*"]
#[cfg(feature = "Win32_UI_Controls")]
pub unsafe fn GetLastPage(&self) -> ::windows::core::Result<super::Controls::HPROPSHEETPAGE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetLastPage)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Initialize<P0, P1>(&self, pdo: P0, dwoptions: u32, pszservicescope: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self), pdo.into().abi(), dwoptions, pszservicescope.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Data_Xml_MsXml\"`, `\"Win32_System_Com\"`*"]
#[cfg(all(feature = "Win32_Data_Xml_MsXml", feature = "Win32_System_Com"))]
pub unsafe fn GetTransferManifest(&self, phrfromtransfer: ::core::option::Option<*mut ::windows::core::HRESULT>, pdocmanifest: ::core::option::Option<*mut ::core::option::Option<super::super::Data::Xml::MsXml::IXMLDOMDocument>>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetTransferManifest)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(phrfromtransfer.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pdocmanifest.unwrap_or(::std::ptr::null_mut()))).ok()
}
}
::windows::core::interface_hierarchy!(IPublishingWizard, ::windows::core::IUnknown, IWizardExtension);
impl ::core::clone::Clone for IPublishingWizard {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IPublishingWizard {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IPublishingWizard {}
impl ::core::fmt::Debug for IPublishingWizard {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IPublishingWizard").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IPublishingWizard {
type Vtable = IPublishingWizard_Vtbl;
}
unsafe impl ::windows::core::Interface for IPublishingWizard {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xaa9198bb_ccec_472d_beed_19a4f6733f7a);
}
#[repr(C)]
#[doc(hidden)]
pub struct IPublishingWizard_Vtbl {
pub base__: IWizardExtension_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdo: *mut ::core::ffi::c_void, dwoptions: u32, pszservicescope: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Initialize: usize,
#[cfg(all(feature = "Win32_Data_Xml_MsXml", feature = "Win32_System_Com"))]
pub GetTransferManifest: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phrfromtransfer: *mut ::windows::core::HRESULT, pdocmanifest: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Data_Xml_MsXml", feature = "Win32_System_Com")))]
GetTransferManifest: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IQueryAssociations(::windows::core::IUnknown);
impl IQueryAssociations {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
pub unsafe fn Init<P0, P1, P2>(&self, flags: ASSOCF, pszassoc: P0, hkprogid: P1, hwnd: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<super::super::System::Registry::HKEY>,
P2: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).Init)(::windows::core::Vtable::as_raw(self), flags, pszassoc.into().abi(), hkprogid.into(), hwnd.into()).ok()
}
pub unsafe fn GetString<P0>(&self, flags: ASSOCF, str: ASSOCSTR, pszextra: P0, pszout: ::windows::core::PWSTR, pcchout: *mut u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).GetString)(::windows::core::Vtable::as_raw(self), flags, str, pszextra.into().abi(), ::core::mem::transmute(pszout), pcchout).ok()
}
#[doc = "*Required features: `\"Win32_System_Registry\"`*"]
#[cfg(feature = "Win32_System_Registry")]
pub unsafe fn GetKey<P0>(&self, flags: ASSOCF, key: ASSOCKEY, pszextra: P0) -> ::windows::core::Result<super::super::System::Registry::HKEY>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetKey)(::windows::core::Vtable::as_raw(self), flags, key, pszextra.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetData<P0>(&self, flags: ASSOCF, data: ASSOCDATA, pszextra: P0, pvout: ::core::option::Option<*mut ::core::ffi::c_void>, pcbout: ::core::option::Option<*mut u32>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).GetData)(::windows::core::Vtable::as_raw(self), flags, data, pszextra.into().abi(), ::core::mem::transmute(pvout.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcbout.unwrap_or(::std::ptr::null_mut()))).ok()
}
pub unsafe fn GetEnum<P0>(&self, flags: ASSOCF, assocenum: ASSOCENUM, pszextra: P0, riid: *const ::windows::core::GUID, ppvout: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).GetEnum)(::windows::core::Vtable::as_raw(self), flags, assocenum, pszextra.into().abi(), riid, ppvout).ok()
}
}
::windows::core::interface_hierarchy!(IQueryAssociations, ::windows::core::IUnknown);
impl ::core::clone::Clone for IQueryAssociations {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IQueryAssociations {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IQueryAssociations {}
impl ::core::fmt::Debug for IQueryAssociations {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IQueryAssociations").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IQueryAssociations {
type Vtable = IQueryAssociations_Vtbl;
}
unsafe impl ::windows::core::Interface for IQueryAssociations {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc46ca590_3c3f_11d2_bee6_0000f805ca57);
}
#[repr(C)]
#[doc(hidden)]
pub struct IQueryAssociations_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
pub Init: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, flags: ASSOCF, pszassoc: ::windows::core::PCWSTR, hkprogid: super::super::System::Registry::HKEY, hwnd: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Registry")))]
Init: usize,
pub GetString: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, flags: ASSOCF, str: ASSOCSTR, pszextra: ::windows::core::PCWSTR, pszout: ::windows::core::PWSTR, pcchout: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Registry")]
pub GetKey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, flags: ASSOCF, key: ASSOCKEY, pszextra: ::windows::core::PCWSTR, phkeyout: *mut super::super::System::Registry::HKEY) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Registry"))]
GetKey: usize,
pub GetData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, flags: ASSOCF, data: ASSOCDATA, pszextra: ::windows::core::PCWSTR, pvout: *mut ::core::ffi::c_void, pcbout: *mut u32) -> ::windows::core::HRESULT,
pub GetEnum: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, flags: ASSOCF, assocenum: ASSOCENUM, pszextra: ::windows::core::PCWSTR, riid: *const ::windows::core::GUID, ppvout: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IQueryCancelAutoPlay(::windows::core::IUnknown);
impl IQueryCancelAutoPlay {
pub unsafe fn AllowAutoPlay<P0, P1>(&self, pszpath: P0, dwcontenttype: u32, pszlabel: P1, dwserialnumber: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).AllowAutoPlay)(::windows::core::Vtable::as_raw(self), pszpath.into().abi(), dwcontenttype, pszlabel.into().abi(), dwserialnumber).ok()
}
}
::windows::core::interface_hierarchy!(IQueryCancelAutoPlay, ::windows::core::IUnknown);
impl ::core::clone::Clone for IQueryCancelAutoPlay {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IQueryCancelAutoPlay {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IQueryCancelAutoPlay {}
impl ::core::fmt::Debug for IQueryCancelAutoPlay {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IQueryCancelAutoPlay").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IQueryCancelAutoPlay {
type Vtable = IQueryCancelAutoPlay_Vtbl;
}
unsafe impl ::windows::core::Interface for IQueryCancelAutoPlay {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xddefe873_6997_4e68_be26_39b633adbe12);
}
#[repr(C)]
#[doc(hidden)]
pub struct IQueryCancelAutoPlay_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub AllowAutoPlay: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszpath: ::windows::core::PCWSTR, dwcontenttype: u32, pszlabel: ::windows::core::PCWSTR, dwserialnumber: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IQueryCodePage(::windows::core::IUnknown);
impl IQueryCodePage {
pub unsafe fn GetCodePage(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCodePage)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetCodePage(&self, uicodepage: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetCodePage)(::windows::core::Vtable::as_raw(self), uicodepage).ok()
}
}
::windows::core::interface_hierarchy!(IQueryCodePage, ::windows::core::IUnknown);
impl ::core::clone::Clone for IQueryCodePage {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IQueryCodePage {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IQueryCodePage {}
impl ::core::fmt::Debug for IQueryCodePage {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IQueryCodePage").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IQueryCodePage {
type Vtable = IQueryCodePage_Vtbl;
}
unsafe impl ::windows::core::Interface for IQueryCodePage {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc7b236ce_ee80_11d0_985f_006008059382);
}
#[repr(C)]
#[doc(hidden)]
pub struct IQueryCodePage_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetCodePage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, puicodepage: *mut u32) -> ::windows::core::HRESULT,
pub SetCodePage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uicodepage: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IQueryContinue(::windows::core::IUnknown);
impl IQueryContinue {
pub unsafe fn QueryContinue(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).QueryContinue)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IQueryContinue, ::windows::core::IUnknown);
impl ::core::clone::Clone for IQueryContinue {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IQueryContinue {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IQueryContinue {}
impl ::core::fmt::Debug for IQueryContinue {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IQueryContinue").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IQueryContinue {
type Vtable = IQueryContinue_Vtbl;
}
unsafe impl ::windows::core::Interface for IQueryContinue {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7307055c_b24a_486b_9f25_163e597a28a9);
}
#[repr(C)]
#[doc(hidden)]
pub struct IQueryContinue_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub QueryContinue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IQueryContinueWithStatus(::windows::core::IUnknown);
impl IQueryContinueWithStatus {
pub unsafe fn QueryContinue(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.QueryContinue)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetStatusMessage<P0>(&self, psz: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetStatusMessage)(::windows::core::Vtable::as_raw(self), psz.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IQueryContinueWithStatus, ::windows::core::IUnknown, IQueryContinue);
impl ::core::clone::Clone for IQueryContinueWithStatus {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IQueryContinueWithStatus {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IQueryContinueWithStatus {}
impl ::core::fmt::Debug for IQueryContinueWithStatus {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IQueryContinueWithStatus").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IQueryContinueWithStatus {
type Vtable = IQueryContinueWithStatus_Vtbl;
}
unsafe impl ::windows::core::Interface for IQueryContinueWithStatus {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9090be5b_502b_41fb_bccc_0049a6c7254b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IQueryContinueWithStatus_Vtbl {
pub base__: IQueryContinue_Vtbl,
pub SetStatusMessage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psz: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IQueryInfo(::windows::core::IUnknown);
impl IQueryInfo {
pub unsafe fn GetInfoTip(&self, dwflags: QITIPF_FLAGS) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetInfoTip)(::windows::core::Vtable::as_raw(self), dwflags, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetInfoFlags(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetInfoFlags)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IQueryInfo, ::windows::core::IUnknown);
impl ::core::clone::Clone for IQueryInfo {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IQueryInfo {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IQueryInfo {}
impl ::core::fmt::Debug for IQueryInfo {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IQueryInfo").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IQueryInfo {
type Vtable = IQueryInfo_Vtbl;
}
unsafe impl ::windows::core::Interface for IQueryInfo {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00021500_0000_0000_c000_000000000046);
}
#[repr(C)]
#[doc(hidden)]
pub struct IQueryInfo_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetInfoTip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: QITIPF_FLAGS, ppwsztip: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetInfoFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwflags: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IRegTreeItem(::windows::core::IUnknown);
impl IRegTreeItem {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetCheckState(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCheckState)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetCheckState<P0>(&self, bcheck: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetCheckState)(::windows::core::Vtable::as_raw(self), bcheck.into()).ok()
}
}
::windows::core::interface_hierarchy!(IRegTreeItem, ::windows::core::IUnknown);
impl ::core::clone::Clone for IRegTreeItem {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IRegTreeItem {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IRegTreeItem {}
impl ::core::fmt::Debug for IRegTreeItem {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IRegTreeItem").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IRegTreeItem {
type Vtable = IRegTreeItem_Vtbl;
}
unsafe impl ::windows::core::Interface for IRegTreeItem {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa9521922_0812_4d44_9ec3_7fd38c726f3d);
}
#[repr(C)]
#[doc(hidden)]
pub struct IRegTreeItem_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub GetCheckState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbcheck: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetCheckState: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetCheckState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bcheck: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetCheckState: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IRelatedItem(::windows::core::IUnknown);
impl IRelatedItem {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetItemIDList(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItemIDList)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetItem(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItem)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IRelatedItem, ::windows::core::IUnknown);
impl ::core::clone::Clone for IRelatedItem {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IRelatedItem {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IRelatedItem {}
impl ::core::fmt::Debug for IRelatedItem {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IRelatedItem").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IRelatedItem {
type Vtable = IRelatedItem_Vtbl;
}
unsafe impl ::windows::core::Interface for IRelatedItem {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa73ce67a_8ab1_44f1_8d43_d2fcbf6b1cd0);
}
#[repr(C)]
#[doc(hidden)]
pub struct IRelatedItem_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetItemIDList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppidl: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetItemIDList: usize,
pub GetItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppsi: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IRemoteComputer(::windows::core::IUnknown);
impl IRemoteComputer {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Initialize<P0, P1>(&self, pszmachine: P0, benumerating: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self), pszmachine.into().abi(), benumerating.into()).ok()
}
}
::windows::core::interface_hierarchy!(IRemoteComputer, ::windows::core::IUnknown);
impl ::core::clone::Clone for IRemoteComputer {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IRemoteComputer {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IRemoteComputer {}
impl ::core::fmt::Debug for IRemoteComputer {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IRemoteComputer").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IRemoteComputer {
type Vtable = IRemoteComputer_Vtbl;
}
unsafe impl ::windows::core::Interface for IRemoteComputer {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214fe_0000_0000_c000_000000000046);
}
#[repr(C)]
#[doc(hidden)]
pub struct IRemoteComputer_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszmachine: ::windows::core::PCWSTR, benumerating: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Initialize: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IResolveShellLink(::windows::core::IUnknown);
impl IResolveShellLink {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ResolveShellLink<P0, P1>(&self, punklink: P0, hwnd: P1, fflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).ResolveShellLink)(::windows::core::Vtable::as_raw(self), punklink.into().abi(), hwnd.into(), fflags).ok()
}
}
::windows::core::interface_hierarchy!(IResolveShellLink, ::windows::core::IUnknown);
impl ::core::clone::Clone for IResolveShellLink {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IResolveShellLink {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IResolveShellLink {}
impl ::core::fmt::Debug for IResolveShellLink {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IResolveShellLink").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IResolveShellLink {
type Vtable = IResolveShellLink_Vtbl;
}
unsafe impl ::windows::core::Interface for IResolveShellLink {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5cd52983_9449_11d2_963a_00c04f79adf0);
}
#[repr(C)]
#[doc(hidden)]
pub struct IResolveShellLink_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub ResolveShellLink: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punklink: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, fflags: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
ResolveShellLink: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IResultsFolder(::windows::core::IUnknown);
impl IResultsFolder {
pub unsafe fn AddItem<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).AddItem)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn AddIDList(&self, pidl: *const Common::ITEMIDLIST, ppidladded: ::core::option::Option<*mut *mut Common::ITEMIDLIST>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AddIDList)(::windows::core::Vtable::as_raw(self), pidl, ::core::mem::transmute(ppidladded.unwrap_or(::std::ptr::null_mut()))).ok()
}
pub unsafe fn RemoveItem<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).RemoveItem)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn RemoveIDList(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RemoveIDList)(::windows::core::Vtable::as_raw(self), pidl).ok()
}
pub unsafe fn RemoveAll(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RemoveAll)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IResultsFolder, ::windows::core::IUnknown);
impl ::core::clone::Clone for IResultsFolder {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IResultsFolder {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IResultsFolder {}
impl ::core::fmt::Debug for IResultsFolder {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IResultsFolder").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IResultsFolder {
type Vtable = IResultsFolder_Vtbl;
}
unsafe impl ::windows::core::Interface for IResultsFolder {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x96e5ae6d_6ae1_4b1c_900c_c6480eaa8828);
}
#[repr(C)]
#[doc(hidden)]
pub struct IResultsFolder_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub AddItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub AddIDList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, ppidladded: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
AddIDList: usize,
pub RemoveItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub RemoveIDList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
RemoveIDList: usize,
pub RemoveAll: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IRunnableTask(::windows::core::IUnknown);
impl IRunnableTask {
pub unsafe fn Run(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Run)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Kill<P0>(&self, bwait: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).Kill)(::windows::core::Vtable::as_raw(self), bwait.into()).ok()
}
pub unsafe fn Suspend(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Suspend)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Resume(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Resume)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn IsRunning(&self) -> u32 {
(::windows::core::Vtable::vtable(self).IsRunning)(::windows::core::Vtable::as_raw(self))
}
}
::windows::core::interface_hierarchy!(IRunnableTask, ::windows::core::IUnknown);
impl ::core::clone::Clone for IRunnableTask {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IRunnableTask {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IRunnableTask {}
impl ::core::fmt::Debug for IRunnableTask {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IRunnableTask").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IRunnableTask {
type Vtable = IRunnableTask_Vtbl;
}
unsafe impl ::windows::core::Interface for IRunnableTask {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x85788d00_6807_11d0_b810_00c04fd706ec);
}
#[repr(C)]
#[doc(hidden)]
pub struct IRunnableTask_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Run: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub Kill: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bwait: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Kill: usize,
pub Suspend: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Resume: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub IsRunning: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> u32,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IScriptErrorList(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IScriptErrorList {
pub unsafe fn advanceError(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).advanceError)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn retreatError(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).retreatError)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn canAdvanceError(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).canAdvanceError)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn canRetreatError(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).canRetreatError)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn getErrorLine(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).getErrorLine)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn getErrorChar(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).getErrorChar)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn getErrorCode(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).getErrorCode)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn getErrorMsg(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).getErrorMsg)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn getErrorUrl(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).getErrorUrl)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn getAlwaysShowLockState(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).getAlwaysShowLockState)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn getDetailsPaneOpen(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).getDetailsPaneOpen)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn setDetailsPaneOpen<P0>(&self, fdetailspaneopen: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).setDetailsPaneOpen)(::windows::core::Vtable::as_raw(self), fdetailspaneopen.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn getPerErrorDisplay(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).getPerErrorDisplay)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn setPerErrorDisplay<P0>(&self, fpererrordisplay: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).setPerErrorDisplay)(::windows::core::Vtable::as_raw(self), fpererrordisplay.into()).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IScriptErrorList, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IScriptErrorList {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IScriptErrorList {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IScriptErrorList {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IScriptErrorList {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IScriptErrorList").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IScriptErrorList {
type Vtable = IScriptErrorList_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IScriptErrorList {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf3470f24_15fd_11d2_bb2e_00805ff7efca);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IScriptErrorList_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
pub advanceError: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub retreatError: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub canAdvanceError: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfcanadvance: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
canAdvanceError: usize,
#[cfg(feature = "Win32_Foundation")]
pub canRetreatError: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfcanretreat: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
canRetreatError: usize,
pub getErrorLine: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plline: *mut i32) -> ::windows::core::HRESULT,
pub getErrorChar: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plchar: *mut i32) -> ::windows::core::HRESULT,
pub getErrorCode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plcode: *mut i32) -> ::windows::core::HRESULT,
pub getErrorMsg: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstr: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub getErrorUrl: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstr: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub getAlwaysShowLockState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfalwaysshowlocked: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
getAlwaysShowLockState: usize,
#[cfg(feature = "Win32_Foundation")]
pub getDetailsPaneOpen: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfdetailspaneopen: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
getDetailsPaneOpen: usize,
#[cfg(feature = "Win32_Foundation")]
pub setDetailsPaneOpen: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fdetailspaneopen: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
setDetailsPaneOpen: usize,
#[cfg(feature = "Win32_Foundation")]
pub getPerErrorDisplay: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfpererrordisplay: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
getPerErrorDisplay: usize,
#[cfg(feature = "Win32_Foundation")]
pub setPerErrorDisplay: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fpererrordisplay: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
setPerErrorDisplay: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISearchBoxInfo(::windows::core::IUnknown);
impl ISearchBoxInfo {
pub unsafe fn GetCondition<T>(&self) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCondition)(::windows::core::Vtable::as_raw(self), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetText(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetText)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ISearchBoxInfo, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISearchBoxInfo {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISearchBoxInfo {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISearchBoxInfo {}
impl ::core::fmt::Debug for ISearchBoxInfo {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISearchBoxInfo").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISearchBoxInfo {
type Vtable = ISearchBoxInfo_Vtbl;
}
unsafe impl ::windows::core::Interface for ISearchBoxInfo {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6af6e03f_d664_4ef4_9626_f7e0ed36755e);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISearchBoxInfo_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetCondition: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppsz: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISearchContext(::windows::core::IUnknown);
impl ISearchContext {
pub unsafe fn GetSearchUrl(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSearchUrl)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetSearchText(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSearchText)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetSearchStyle(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSearchStyle)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ISearchContext, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISearchContext {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISearchContext {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISearchContext {}
impl ::core::fmt::Debug for ISearchContext {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISearchContext").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISearchContext {
type Vtable = ISearchContext_Vtbl;
}
unsafe impl ::windows::core::Interface for ISearchContext {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x09f656a2_41af_480c_88f7_16cc0d164615);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISearchContext_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetSearchUrl: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstrsearchurl: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetSearchText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstrsearchtext: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetSearchStyle: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwsearchstyle: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISearchFolderItemFactory(::windows::core::IUnknown);
impl ISearchFolderItemFactory {
pub unsafe fn SetDisplayName<P0>(&self, pszdisplayname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetDisplayName)(::windows::core::Vtable::as_raw(self), pszdisplayname.into().abi()).ok()
}
pub unsafe fn SetFolderTypeID(&self, ftid: ::windows::core::GUID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetFolderTypeID)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(ftid)).ok()
}
pub unsafe fn SetFolderLogicalViewMode(&self, flvm: FOLDERLOGICALVIEWMODE) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetFolderLogicalViewMode)(::windows::core::Vtable::as_raw(self), flvm).ok()
}
pub unsafe fn SetIconSize(&self, iiconsize: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetIconSize)(::windows::core::Vtable::as_raw(self), iiconsize).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn SetVisibleColumns(&self, rgkey: &[PropertiesSystem::PROPERTYKEY]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetVisibleColumns)(::windows::core::Vtable::as_raw(self), rgkey.len() as _, ::core::mem::transmute(rgkey.as_ptr())).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn SetSortColumns(&self, rgsortcolumns: &[SORTCOLUMN]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetSortColumns)(::windows::core::Vtable::as_raw(self), rgsortcolumns.len() as _, ::core::mem::transmute(rgsortcolumns.as_ptr())).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn SetGroupColumn(&self, keygroup: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetGroupColumn)(::windows::core::Vtable::as_raw(self), keygroup).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn SetStacks(&self, rgstackkeys: &[PropertiesSystem::PROPERTYKEY]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetStacks)(::windows::core::Vtable::as_raw(self), rgstackkeys.len() as _, ::core::mem::transmute(rgstackkeys.as_ptr())).ok()
}
pub unsafe fn SetScope<P0>(&self, psiascope: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItemArray>>,
{
(::windows::core::Vtable::vtable(self).SetScope)(::windows::core::Vtable::as_raw(self), psiascope.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_System_Search\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_System_Search"))]
pub unsafe fn SetCondition<P0>(&self, pcondition: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Search::ICondition>>,
{
(::windows::core::Vtable::vtable(self).SetCondition)(::windows::core::Vtable::as_raw(self), pcondition.into().abi()).ok()
}
pub unsafe fn GetShellItem<T>(&self) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetShellItem)(::windows::core::Vtable::as_raw(self), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetIDList(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetIDList)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ISearchFolderItemFactory, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISearchFolderItemFactory {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISearchFolderItemFactory {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISearchFolderItemFactory {}
impl ::core::fmt::Debug for ISearchFolderItemFactory {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISearchFolderItemFactory").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISearchFolderItemFactory {
type Vtable = ISearchFolderItemFactory_Vtbl;
}
unsafe impl ::windows::core::Interface for ISearchFolderItemFactory {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa0ffbc28_5482_4366_be27_3e81e78e06c2);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISearchFolderItemFactory_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetDisplayName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszdisplayname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub SetFolderTypeID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ftid: ::windows::core::GUID) -> ::windows::core::HRESULT,
pub SetFolderLogicalViewMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, flvm: FOLDERLOGICALVIEWMODE) -> ::windows::core::HRESULT,
pub SetIconSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, iiconsize: i32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub SetVisibleColumns: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cvisiblecolumns: u32, rgkey: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
SetVisibleColumns: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub SetSortColumns: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, csortcolumns: u32, rgsortcolumns: *const SORTCOLUMN) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
SetSortColumns: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub SetGroupColumn: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, keygroup: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
SetGroupColumn: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub SetStacks: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cstackkeys: u32, rgstackkeys: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
SetStacks: usize,
pub SetScope: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiascope: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_System_Search"))]
pub SetCondition: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcondition: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_System_Com", feature = "Win32_System_Search")))]
SetCondition: usize,
pub GetShellItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetIDList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppidl: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetIDList: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISharedBitmap(::windows::core::IUnknown);
impl ISharedBitmap {
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn GetSharedBitmap(&self) -> ::windows::core::Result<super::super::Graphics::Gdi::HBITMAP> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSharedBitmap)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetSize(&self) -> ::windows::core::Result<super::super::Foundation::SIZE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSize)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetFormat(&self) -> ::windows::core::Result<WTS_ALPHATYPE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFormat)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn InitializeBitmap<P0>(&self, hbm: P0, wtsat: WTS_ALPHATYPE) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Graphics::Gdi::HBITMAP>,
{
(::windows::core::Vtable::vtable(self).InitializeBitmap)(::windows::core::Vtable::as_raw(self), hbm.into(), wtsat).ok()
}
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn Detach(&self) -> ::windows::core::Result<super::super::Graphics::Gdi::HBITMAP> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Detach)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ISharedBitmap, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISharedBitmap {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISharedBitmap {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISharedBitmap {}
impl ::core::fmt::Debug for ISharedBitmap {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISharedBitmap").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISharedBitmap {
type Vtable = ISharedBitmap_Vtbl;
}
unsafe impl ::windows::core::Interface for ISharedBitmap {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x091162a4_bc96_411f_aae8_c5122cd03363);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISharedBitmap_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Graphics_Gdi")]
pub GetSharedBitmap: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phbm: *mut super::super::Graphics::Gdi::HBITMAP) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Gdi"))]
GetSharedBitmap: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psize: *mut super::super::Foundation::SIZE) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetSize: usize,
pub GetFormat: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pat: *mut WTS_ALPHATYPE) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Graphics_Gdi")]
pub InitializeBitmap: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hbm: super::super::Graphics::Gdi::HBITMAP, wtsat: WTS_ALPHATYPE) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Gdi"))]
InitializeBitmap: usize,
#[cfg(feature = "Win32_Graphics_Gdi")]
pub Detach: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phbm: *mut super::super::Graphics::Gdi::HBITMAP) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Gdi"))]
Detach: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISharingConfigurationManager(::windows::core::IUnknown);
impl ISharingConfigurationManager {
pub unsafe fn CreateShare(&self, dsid: DEF_SHARE_ID, role: SHARE_ROLE) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).CreateShare)(::windows::core::Vtable::as_raw(self), dsid, role).ok()
}
pub unsafe fn DeleteShare(&self, dsid: DEF_SHARE_ID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).DeleteShare)(::windows::core::Vtable::as_raw(self), dsid).ok()
}
pub unsafe fn ShareExists(&self, dsid: DEF_SHARE_ID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ShareExists)(::windows::core::Vtable::as_raw(self), dsid).ok()
}
pub unsafe fn GetSharePermissions(&self, dsid: DEF_SHARE_ID) -> ::windows::core::Result<SHARE_ROLE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSharePermissions)(::windows::core::Vtable::as_raw(self), dsid, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SharePrinters(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SharePrinters)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn StopSharingPrinters(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).StopSharingPrinters)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ArePrintersShared(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ArePrintersShared)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(ISharingConfigurationManager, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISharingConfigurationManager {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISharingConfigurationManager {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISharingConfigurationManager {}
impl ::core::fmt::Debug for ISharingConfigurationManager {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISharingConfigurationManager").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISharingConfigurationManager {
type Vtable = ISharingConfigurationManager_Vtbl;
}
unsafe impl ::windows::core::Interface for ISharingConfigurationManager {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb4cd448a_9c86_4466_9201_2e62105b87ae);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISharingConfigurationManager_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub CreateShare: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dsid: DEF_SHARE_ID, role: SHARE_ROLE) -> ::windows::core::HRESULT,
pub DeleteShare: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dsid: DEF_SHARE_ID) -> ::windows::core::HRESULT,
pub ShareExists: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dsid: DEF_SHARE_ID) -> ::windows::core::HRESULT,
pub GetSharePermissions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dsid: DEF_SHARE_ID, prole: *mut SHARE_ROLE) -> ::windows::core::HRESULT,
pub SharePrinters: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub StopSharingPrinters: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub ArePrintersShared: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellApp(::windows::core::IUnknown);
impl IShellApp {
pub unsafe fn GetAppInfo(&self, pai: *mut APPINFODATA) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetAppInfo)(::windows::core::Vtable::as_raw(self), pai).ok()
}
pub unsafe fn GetPossibleActions(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPossibleActions)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetSlowAppInfo(&self, psaid: *mut SLOWAPPINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetSlowAppInfo)(::windows::core::Vtable::as_raw(self), psaid).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetCachedSlowAppInfo(&self, psaid: *mut SLOWAPPINFO) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetCachedSlowAppInfo)(::windows::core::Vtable::as_raw(self), psaid).ok()
}
pub unsafe fn IsInstalled(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).IsInstalled)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IShellApp, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellApp {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellApp {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellApp {}
impl ::core::fmt::Debug for IShellApp {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellApp").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellApp {
type Vtable = IShellApp_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellApp {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa3e14960_935f_11d1_b8b8_006008059382);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellApp_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetAppInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pai: *mut APPINFODATA) -> ::windows::core::HRESULT,
pub GetPossibleActions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwactions: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetSlowAppInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psaid: *mut SLOWAPPINFO) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetSlowAppInfo: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetCachedSlowAppInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psaid: *mut SLOWAPPINFO) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetCachedSlowAppInfo: usize,
pub IsInstalled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
#[repr(transparent)]
pub struct IShellBrowser(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Ole")]
impl IShellBrowser {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn GetWindow(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetWindow)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn ContextSensitiveHelp<P0>(&self, fentermode: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.ContextSensitiveHelp)(::windows::core::Vtable::as_raw(self), fentermode.into()).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_System_Ole", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn InsertMenusSB<P0>(&self, hmenushared: P0, lpmenuwidths: *mut super::super::System::Ole::OLEMENUGROUPWIDTHS) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::WindowsAndMessaging::HMENU>,
{
(::windows::core::Vtable::vtable(self).InsertMenusSB)(::windows::core::Vtable::as_raw(self), hmenushared.into(), lpmenuwidths).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn SetMenuSB<P0, P1>(&self, hmenushared: P0, holemenures: isize, hwndactiveobject: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::WindowsAndMessaging::HMENU>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).SetMenuSB)(::windows::core::Vtable::as_raw(self), hmenushared.into(), holemenures, hwndactiveobject.into()).ok()
}
#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub unsafe fn RemoveMenusSB<P0>(&self, hmenushared: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::WindowsAndMessaging::HMENU>,
{
(::windows::core::Vtable::vtable(self).RemoveMenusSB)(::windows::core::Vtable::as_raw(self), hmenushared.into()).ok()
}
pub unsafe fn SetStatusTextSB<P0>(&self, pszstatustext: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetStatusTextSB)(::windows::core::Vtable::as_raw(self), pszstatustext.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn EnableModelessSB<P0>(&self, fenable: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).EnableModelessSB)(::windows::core::Vtable::as_raw(self), fenable.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn TranslateAcceleratorSB(&self, pmsg: *const super::WindowsAndMessaging::MSG, wid: u16) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).TranslateAcceleratorSB)(::windows::core::Vtable::as_raw(self), pmsg, wid).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn BrowseObject(&self, pidl: *const Common::ITEMIDLIST, wflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).BrowseObject)(::windows::core::Vtable::as_raw(self), pidl, wflags).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn GetViewStateStream(&self, grfmode: u32) -> ::windows::core::Result<super::super::System::Com::IStream> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetViewStateStream)(::windows::core::Vtable::as_raw(self), grfmode, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetControlWindow(&self, id: u32) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetControlWindow)(::windows::core::Vtable::as_raw(self), id, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SendControlMsg<P0, P1>(&self, id: u32, umsg: u32, wparam: P0, lparam: P1, pret: ::core::option::Option<*mut super::super::Foundation::LRESULT>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::WPARAM>,
P1: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).SendControlMsg)(::windows::core::Vtable::as_raw(self), id, umsg, wparam.into(), lparam.into(), ::core::mem::transmute(pret.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn QueryActiveShellView(&self) -> ::windows::core::Result<IShellView> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).QueryActiveShellView)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn OnViewWindowActive<P0>(&self, pshv: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
(::windows::core::Vtable::vtable(self).OnViewWindowActive)(::windows::core::Vtable::as_raw(self), pshv.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Controls\"`*"]
#[cfg(feature = "Win32_UI_Controls")]
pub unsafe fn SetToolbarItems(&self, lpbuttons: ::core::option::Option<&[super::Controls::TBBUTTON]>, uflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetToolbarItems)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(lpbuttons.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), lpbuttons.as_deref().map_or(0, |slice| slice.len() as _), uflags).ok()
}
}
#[cfg(feature = "Win32_System_Ole")]
::windows::core::interface_hierarchy!(IShellBrowser, ::windows::core::IUnknown, super::super::System::Ole::IOleWindow);
#[cfg(feature = "Win32_System_Ole")]
impl ::core::clone::Clone for IShellBrowser {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::PartialEq for IShellBrowser {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::Eq for IShellBrowser {}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::fmt::Debug for IShellBrowser {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellBrowser").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Vtable for IShellBrowser {
type Vtable = IShellBrowser_Vtbl;
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Interface for IShellBrowser {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214e2_0000_0000_c000_000000000046);
}
#[cfg(feature = "Win32_System_Ole")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellBrowser_Vtbl {
pub base__: super::super::System::Ole::IOleWindow_Vtbl,
#[cfg(all(feature = "Win32_System_Ole", feature = "Win32_UI_WindowsAndMessaging"))]
pub InsertMenusSB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hmenushared: super::WindowsAndMessaging::HMENU, lpmenuwidths: *mut super::super::System::Ole::OLEMENUGROUPWIDTHS) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_System_Ole", feature = "Win32_UI_WindowsAndMessaging")))]
InsertMenusSB: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub SetMenuSB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hmenushared: super::WindowsAndMessaging::HMENU, holemenures: isize, hwndactiveobject: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
SetMenuSB: usize,
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub RemoveMenusSB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hmenushared: super::WindowsAndMessaging::HMENU) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_WindowsAndMessaging"))]
RemoveMenusSB: usize,
pub SetStatusTextSB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszstatustext: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub EnableModelessSB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fenable: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
EnableModelessSB: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub TranslateAcceleratorSB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pmsg: *const super::WindowsAndMessaging::MSG, wid: u16) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
TranslateAcceleratorSB: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub BrowseObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, wflags: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
BrowseObject: usize,
#[cfg(feature = "Win32_System_Com")]
pub GetViewStateStream: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, grfmode: u32, ppstrm: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
GetViewStateStream: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetControlWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, id: u32, phwnd: *mut super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetControlWindow: usize,
#[cfg(feature = "Win32_Foundation")]
pub SendControlMsg: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, id: u32, umsg: u32, wparam: super::super::Foundation::WPARAM, lparam: super::super::Foundation::LPARAM, pret: *mut super::super::Foundation::LRESULT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SendControlMsg: usize,
#[cfg(feature = "Win32_System_Ole")]
pub QueryActiveShellView: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppshv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Ole"))]
QueryActiveShellView: usize,
#[cfg(feature = "Win32_System_Ole")]
pub OnViewWindowActive: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pshv: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Ole"))]
OnViewWindowActive: usize,
#[cfg(feature = "Win32_UI_Controls")]
pub SetToolbarItems: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpbuttons: *const super::Controls::TBBUTTON, nbuttons: u32, uflags: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Controls"))]
SetToolbarItems: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellChangeNotify(::windows::core::IUnknown);
impl IShellChangeNotify {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn OnChange(&self, levent: i32, pidl1: ::core::option::Option<*const Common::ITEMIDLIST>, pidl2: ::core::option::Option<*const Common::ITEMIDLIST>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OnChange)(::windows::core::Vtable::as_raw(self), levent, ::core::mem::transmute(pidl1.unwrap_or(::std::ptr::null())), ::core::mem::transmute(pidl2.unwrap_or(::std::ptr::null()))).ok()
}
}
::windows::core::interface_hierarchy!(IShellChangeNotify, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellChangeNotify {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellChangeNotify {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellChangeNotify {}
impl ::core::fmt::Debug for IShellChangeNotify {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellChangeNotify").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellChangeNotify {
type Vtable = IShellChangeNotify_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellChangeNotify {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd82be2b1_5764_11d0_a96e_00c04fd705a2);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellChangeNotify_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub OnChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, levent: i32, pidl1: *const Common::ITEMIDLIST, pidl2: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
OnChange: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellDetails(::windows::core::IUnknown);
impl IShellDetails {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetDetailsOf(&self, pidl: ::core::option::Option<*const Common::ITEMIDLIST>, icolumn: u32, pdetails: *mut Common::SHELLDETAILS) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetDetailsOf)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pidl.unwrap_or(::std::ptr::null())), icolumn, pdetails).ok()
}
pub unsafe fn ColumnClick(&self, icolumn: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ColumnClick)(::windows::core::Vtable::as_raw(self), icolumn).ok()
}
}
::windows::core::interface_hierarchy!(IShellDetails, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellDetails {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellDetails {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellDetails {}
impl ::core::fmt::Debug for IShellDetails {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellDetails").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellDetails {
type Vtable = IShellDetails_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellDetails {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214ec_0000_0000_c000_000000000046);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellDetails_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetDetailsOf: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, icolumn: u32, pdetails: *mut Common::SHELLDETAILS) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetDetailsOf: usize,
pub ColumnClick: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, icolumn: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellDispatch(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellDispatch {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn NameSpace(&self, vdir: super::super::System::Com::VARIANT) -> ::windows::core::Result<Folder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).NameSpace)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vdir), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn BrowseForFolder(&self, hwnd: i32, title: &::windows::core::BSTR, options: i32, rootfolder: super::super::System::Com::VARIANT) -> ::windows::core::Result<Folder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).BrowseForFolder)(::windows::core::Vtable::as_raw(self), hwnd, ::core::mem::transmute_copy(title), options, ::core::mem::transmute(rootfolder), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Windows(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Windows)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Open(&self, vdir: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Open)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vdir)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Explore(&self, vdir: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Explore)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vdir)).ok()
}
pub unsafe fn MinimizeAll(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).MinimizeAll)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn UndoMinimizeALL(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UndoMinimizeALL)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FileRun(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).FileRun)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn CascadeWindows(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).CascadeWindows)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn TileVertically(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).TileVertically)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn TileHorizontally(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).TileHorizontally)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ShutdownWindows(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ShutdownWindows)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Suspend(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Suspend)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn EjectPC(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).EjectPC)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetTime(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetTime)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn TrayProperties(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).TrayProperties)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Help(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Help)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FindFiles(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).FindFiles)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FindComputer(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).FindComputer)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn RefreshMenu(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RefreshMenu)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ControlPanelItem(&self, bstrdir: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ControlPanelItem)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrdir)).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellDispatch, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellDispatch {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellDispatch {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellDispatch {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellDispatch {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellDispatch").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellDispatch {
type Vtable = IShellDispatch_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellDispatch {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd8f015c0_c278_11ce_a49e_444553540000);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellDispatch_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub Application: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Application: usize,
#[cfg(feature = "Win32_System_Com")]
pub Parent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Parent: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub NameSpace: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vdir: super::super::System::Com::VARIANT, ppsdf: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
NameSpace: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub BrowseForFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: i32, title: *mut ::core::ffi::c_void, options: i32, rootfolder: super::super::System::Com::VARIANT, ppsdf: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
BrowseForFolder: usize,
#[cfg(feature = "Win32_System_Com")]
pub Windows: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Windows: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub Open: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vdir: super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
Open: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub Explore: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vdir: super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
Explore: usize,
pub MinimizeAll: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub UndoMinimizeALL: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub FileRun: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub CascadeWindows: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub TileVertically: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub TileHorizontally: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub ShutdownWindows: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Suspend: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub EjectPC: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetTime: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub TrayProperties: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Help: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub FindFiles: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub FindComputer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub RefreshMenu: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub ControlPanelItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrdir: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellDispatch2(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellDispatch2 {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn NameSpace(&self, vdir: super::super::System::Com::VARIANT) -> ::windows::core::Result<Folder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.NameSpace)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vdir), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn BrowseForFolder(&self, hwnd: i32, title: &::windows::core::BSTR, options: i32, rootfolder: super::super::System::Com::VARIANT) -> ::windows::core::Result<Folder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.BrowseForFolder)(::windows::core::Vtable::as_raw(self), hwnd, ::core::mem::transmute_copy(title), options, ::core::mem::transmute(rootfolder), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Windows(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Windows)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Open(&self, vdir: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Open)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vdir)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Explore(&self, vdir: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Explore)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vdir)).ok()
}
pub unsafe fn MinimizeAll(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.MinimizeAll)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn UndoMinimizeALL(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.UndoMinimizeALL)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FileRun(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.FileRun)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn CascadeWindows(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.CascadeWindows)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn TileVertically(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.TileVertically)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn TileHorizontally(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.TileHorizontally)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ShutdownWindows(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.ShutdownWindows)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Suspend(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Suspend)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn EjectPC(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.EjectPC)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetTime(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetTime)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn TrayProperties(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.TrayProperties)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Help(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Help)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FindFiles(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.FindFiles)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FindComputer(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.FindComputer)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn RefreshMenu(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.RefreshMenu)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ControlPanelItem(&self, bstrdir: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.ControlPanelItem)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrdir)).ok()
}
pub unsafe fn IsRestricted(&self, group: &::windows::core::BSTR, restriction: &::windows::core::BSTR) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IsRestricted)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(group), ::core::mem::transmute_copy(restriction), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShellExecute(&self, file: &::windows::core::BSTR, vargs: super::super::System::Com::VARIANT, vdir: super::super::System::Com::VARIANT, voperation: super::super::System::Com::VARIANT, vshow: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ShellExecute)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(file), ::core::mem::transmute(vargs), ::core::mem::transmute(vdir), ::core::mem::transmute(voperation), ::core::mem::transmute(vshow)).ok()
}
pub unsafe fn FindPrinter(&self, name: &::windows::core::BSTR, location: &::windows::core::BSTR, model: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).FindPrinter)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(name), ::core::mem::transmute_copy(location), ::core::mem::transmute_copy(model)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn GetSystemInformation(&self, name: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSystemInformation)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(name), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ServiceStart(&self, servicename: &::windows::core::BSTR, persistent: super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ServiceStart)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), ::core::mem::transmute(persistent), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ServiceStop(&self, servicename: &::windows::core::BSTR, persistent: super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ServiceStop)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), ::core::mem::transmute(persistent), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn IsServiceRunning(&self, servicename: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IsServiceRunning)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn CanStartStopService(&self, servicename: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CanStartStopService)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShowBrowserBar(&self, bstrclsid: &::windows::core::BSTR, bshow: super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ShowBrowserBar)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrclsid), ::core::mem::transmute(bshow), result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellDispatch2, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IShellDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellDispatch2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellDispatch2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellDispatch2 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellDispatch2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellDispatch2").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellDispatch2 {
type Vtable = IShellDispatch2_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellDispatch2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa4c6892c_3ba9_11d2_9dea_00c04fb16162);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellDispatch2_Vtbl {
pub base__: IShellDispatch_Vtbl,
pub IsRestricted: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, group: *mut ::core::ffi::c_void, restriction: *mut ::core::ffi::c_void, plrestrictvalue: *mut i32) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub ShellExecute: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, file: *mut ::core::ffi::c_void, vargs: super::super::System::Com::VARIANT, vdir: super::super::System::Com::VARIANT, voperation: super::super::System::Com::VARIANT, vshow: super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
ShellExecute: usize,
pub FindPrinter: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, name: *mut ::core::ffi::c_void, location: *mut ::core::ffi::c_void, model: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub GetSystemInformation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, name: *mut ::core::ffi::c_void, pv: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
GetSystemInformation: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub ServiceStart: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, servicename: *mut ::core::ffi::c_void, persistent: super::super::System::Com::VARIANT, psuccess: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
ServiceStart: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub ServiceStop: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, servicename: *mut ::core::ffi::c_void, persistent: super::super::System::Com::VARIANT, psuccess: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
ServiceStop: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub IsServiceRunning: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, servicename: *mut ::core::ffi::c_void, prunning: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
IsServiceRunning: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub CanStartStopService: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, servicename: *mut ::core::ffi::c_void, pcanstartstop: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
CanStartStopService: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub ShowBrowserBar: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrclsid: *mut ::core::ffi::c_void, bshow: super::super::System::Com::VARIANT, psuccess: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
ShowBrowserBar: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellDispatch3(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellDispatch3 {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn NameSpace(&self, vdir: super::super::System::Com::VARIANT) -> ::windows::core::Result<Folder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.NameSpace)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vdir), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn BrowseForFolder(&self, hwnd: i32, title: &::windows::core::BSTR, options: i32, rootfolder: super::super::System::Com::VARIANT) -> ::windows::core::Result<Folder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.BrowseForFolder)(::windows::core::Vtable::as_raw(self), hwnd, ::core::mem::transmute_copy(title), options, ::core::mem::transmute(rootfolder), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Windows(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Windows)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Open(&self, vdir: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.Open)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vdir)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Explore(&self, vdir: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.Explore)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vdir)).ok()
}
pub unsafe fn MinimizeAll(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.MinimizeAll)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn UndoMinimizeALL(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.UndoMinimizeALL)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FileRun(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.FileRun)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn CascadeWindows(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.CascadeWindows)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn TileVertically(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.TileVertically)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn TileHorizontally(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.TileHorizontally)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ShutdownWindows(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.ShutdownWindows)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Suspend(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.Suspend)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn EjectPC(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.EjectPC)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetTime(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.SetTime)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn TrayProperties(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.TrayProperties)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Help(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.Help)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FindFiles(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.FindFiles)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FindComputer(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.FindComputer)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn RefreshMenu(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.RefreshMenu)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ControlPanelItem(&self, bstrdir: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.ControlPanelItem)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrdir)).ok()
}
pub unsafe fn IsRestricted(&self, group: &::windows::core::BSTR, restriction: &::windows::core::BSTR) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.IsRestricted)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(group), ::core::mem::transmute_copy(restriction), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShellExecute(&self, file: &::windows::core::BSTR, vargs: super::super::System::Com::VARIANT, vdir: super::super::System::Com::VARIANT, voperation: super::super::System::Com::VARIANT, vshow: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.ShellExecute)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(file), ::core::mem::transmute(vargs), ::core::mem::transmute(vdir), ::core::mem::transmute(voperation), ::core::mem::transmute(vshow)).ok()
}
pub unsafe fn FindPrinter(&self, name: &::windows::core::BSTR, location: &::windows::core::BSTR, model: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.FindPrinter)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(name), ::core::mem::transmute_copy(location), ::core::mem::transmute_copy(model)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn GetSystemInformation(&self, name: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetSystemInformation)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(name), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ServiceStart(&self, servicename: &::windows::core::BSTR, persistent: super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.ServiceStart)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), ::core::mem::transmute(persistent), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ServiceStop(&self, servicename: &::windows::core::BSTR, persistent: super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.ServiceStop)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), ::core::mem::transmute(persistent), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn IsServiceRunning(&self, servicename: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.IsServiceRunning)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn CanStartStopService(&self, servicename: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.CanStartStopService)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShowBrowserBar(&self, bstrclsid: &::windows::core::BSTR, bshow: super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.ShowBrowserBar)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrclsid), ::core::mem::transmute(bshow), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddToRecent(&self, varfile: super::super::System::Com::VARIANT, bstrcategory: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AddToRecent)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(varfile), ::core::mem::transmute_copy(bstrcategory)).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellDispatch3, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IShellDispatch, IShellDispatch2);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellDispatch3 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellDispatch3 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellDispatch3 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellDispatch3 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellDispatch3").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellDispatch3 {
type Vtable = IShellDispatch3_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellDispatch3 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x177160ca_bb5a_411c_841d_bd38facdeaa0);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellDispatch3_Vtbl {
pub base__: IShellDispatch2_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub AddToRecent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, varfile: super::super::System::Com::VARIANT, bstrcategory: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
AddToRecent: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellDispatch4(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellDispatch4 {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn NameSpace(&self, vdir: super::super::System::Com::VARIANT) -> ::windows::core::Result<Folder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.NameSpace)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vdir), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn BrowseForFolder(&self, hwnd: i32, title: &::windows::core::BSTR, options: i32, rootfolder: super::super::System::Com::VARIANT) -> ::windows::core::Result<Folder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.BrowseForFolder)(::windows::core::Vtable::as_raw(self), hwnd, ::core::mem::transmute_copy(title), options, ::core::mem::transmute(rootfolder), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Windows(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.Windows)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Open(&self, vdir: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.Open)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vdir)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Explore(&self, vdir: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.Explore)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vdir)).ok()
}
pub unsafe fn MinimizeAll(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.MinimizeAll)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn UndoMinimizeALL(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.UndoMinimizeALL)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FileRun(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.FileRun)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn CascadeWindows(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.CascadeWindows)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn TileVertically(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.TileVertically)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn TileHorizontally(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.TileHorizontally)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ShutdownWindows(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.ShutdownWindows)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Suspend(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.Suspend)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn EjectPC(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.EjectPC)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetTime(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.SetTime)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn TrayProperties(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.TrayProperties)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Help(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.Help)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FindFiles(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.FindFiles)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FindComputer(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.FindComputer)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn RefreshMenu(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.RefreshMenu)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ControlPanelItem(&self, bstrdir: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.ControlPanelItem)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrdir)).ok()
}
pub unsafe fn IsRestricted(&self, group: &::windows::core::BSTR, restriction: &::windows::core::BSTR) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.IsRestricted)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(group), ::core::mem::transmute_copy(restriction), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShellExecute(&self, file: &::windows::core::BSTR, vargs: super::super::System::Com::VARIANT, vdir: super::super::System::Com::VARIANT, voperation: super::super::System::Com::VARIANT, vshow: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.ShellExecute)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(file), ::core::mem::transmute(vargs), ::core::mem::transmute(vdir), ::core::mem::transmute(voperation), ::core::mem::transmute(vshow)).ok()
}
pub unsafe fn FindPrinter(&self, name: &::windows::core::BSTR, location: &::windows::core::BSTR, model: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.FindPrinter)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(name), ::core::mem::transmute_copy(location), ::core::mem::transmute_copy(model)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn GetSystemInformation(&self, name: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetSystemInformation)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(name), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ServiceStart(&self, servicename: &::windows::core::BSTR, persistent: super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.ServiceStart)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), ::core::mem::transmute(persistent), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ServiceStop(&self, servicename: &::windows::core::BSTR, persistent: super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.ServiceStop)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), ::core::mem::transmute(persistent), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn IsServiceRunning(&self, servicename: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.IsServiceRunning)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn CanStartStopService(&self, servicename: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.CanStartStopService)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShowBrowserBar(&self, bstrclsid: &::windows::core::BSTR, bshow: super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.ShowBrowserBar)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrclsid), ::core::mem::transmute(bshow), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddToRecent(&self, varfile: super::super::System::Com::VARIANT, bstrcategory: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.AddToRecent)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(varfile), ::core::mem::transmute_copy(bstrcategory)).ok()
}
pub unsafe fn WindowsSecurity(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).WindowsSecurity)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ToggleDesktop(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ToggleDesktop)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ExplorerPolicy(&self, bstrpolicyname: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ExplorerPolicy)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrpolicyname), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetSetting(&self, lsetting: i32) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSetting)(::windows::core::Vtable::as_raw(self), lsetting, result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellDispatch4, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IShellDispatch, IShellDispatch2, IShellDispatch3);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellDispatch4 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellDispatch4 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellDispatch4 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellDispatch4 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellDispatch4").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellDispatch4 {
type Vtable = IShellDispatch4_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellDispatch4 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xefd84b2d_4bcf_4298_be25_eb542a59fbda);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellDispatch4_Vtbl {
pub base__: IShellDispatch3_Vtbl,
pub WindowsSecurity: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub ToggleDesktop: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub ExplorerPolicy: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrpolicyname: *mut ::core::ffi::c_void, pvalue: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
ExplorerPolicy: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetSetting: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lsetting: i32, presult: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetSetting: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellDispatch5(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellDispatch5 {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn NameSpace(&self, vdir: super::super::System::Com::VARIANT) -> ::windows::core::Result<Folder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.NameSpace)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vdir), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn BrowseForFolder(&self, hwnd: i32, title: &::windows::core::BSTR, options: i32, rootfolder: super::super::System::Com::VARIANT) -> ::windows::core::Result<Folder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.BrowseForFolder)(::windows::core::Vtable::as_raw(self), hwnd, ::core::mem::transmute_copy(title), options, ::core::mem::transmute(rootfolder), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Windows(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.Windows)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Open(&self, vdir: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.Open)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vdir)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Explore(&self, vdir: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.Explore)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vdir)).ok()
}
pub unsafe fn MinimizeAll(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.MinimizeAll)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn UndoMinimizeALL(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.UndoMinimizeALL)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FileRun(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.FileRun)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn CascadeWindows(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.CascadeWindows)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn TileVertically(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.TileVertically)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn TileHorizontally(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.TileHorizontally)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ShutdownWindows(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.ShutdownWindows)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Suspend(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.Suspend)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn EjectPC(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.EjectPC)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetTime(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.SetTime)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn TrayProperties(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.TrayProperties)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Help(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.Help)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FindFiles(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.FindFiles)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FindComputer(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.FindComputer)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn RefreshMenu(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.RefreshMenu)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ControlPanelItem(&self, bstrdir: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.ControlPanelItem)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrdir)).ok()
}
pub unsafe fn IsRestricted(&self, group: &::windows::core::BSTR, restriction: &::windows::core::BSTR) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.IsRestricted)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(group), ::core::mem::transmute_copy(restriction), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShellExecute(&self, file: &::windows::core::BSTR, vargs: super::super::System::Com::VARIANT, vdir: super::super::System::Com::VARIANT, voperation: super::super::System::Com::VARIANT, vshow: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.ShellExecute)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(file), ::core::mem::transmute(vargs), ::core::mem::transmute(vdir), ::core::mem::transmute(voperation), ::core::mem::transmute(vshow)).ok()
}
pub unsafe fn FindPrinter(&self, name: &::windows::core::BSTR, location: &::windows::core::BSTR, model: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.FindPrinter)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(name), ::core::mem::transmute_copy(location), ::core::mem::transmute_copy(model)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn GetSystemInformation(&self, name: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.GetSystemInformation)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(name), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ServiceStart(&self, servicename: &::windows::core::BSTR, persistent: super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.ServiceStart)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), ::core::mem::transmute(persistent), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ServiceStop(&self, servicename: &::windows::core::BSTR, persistent: super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.ServiceStop)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), ::core::mem::transmute(persistent), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn IsServiceRunning(&self, servicename: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.IsServiceRunning)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn CanStartStopService(&self, servicename: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.CanStartStopService)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShowBrowserBar(&self, bstrclsid: &::windows::core::BSTR, bshow: super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.ShowBrowserBar)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrclsid), ::core::mem::transmute(bshow), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddToRecent(&self, varfile: super::super::System::Com::VARIANT, bstrcategory: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.AddToRecent)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(varfile), ::core::mem::transmute_copy(bstrcategory)).ok()
}
pub unsafe fn WindowsSecurity(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.WindowsSecurity)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ToggleDesktop(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.ToggleDesktop)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ExplorerPolicy(&self, bstrpolicyname: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.ExplorerPolicy)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrpolicyname), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetSetting(&self, lsetting: i32) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetSetting)(::windows::core::Vtable::as_raw(self), lsetting, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn WindowSwitcher(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).WindowSwitcher)(::windows::core::Vtable::as_raw(self)).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellDispatch5, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IShellDispatch, IShellDispatch2, IShellDispatch3, IShellDispatch4);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellDispatch5 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellDispatch5 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellDispatch5 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellDispatch5 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellDispatch5").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellDispatch5 {
type Vtable = IShellDispatch5_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellDispatch5 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x866738b9_6cf2_4de8_8767_f794ebe74f4e);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellDispatch5_Vtbl {
pub base__: IShellDispatch4_Vtbl,
pub WindowSwitcher: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellDispatch6(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellDispatch6 {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn NameSpace(&self, vdir: super::super::System::Com::VARIANT) -> ::windows::core::Result<Folder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.NameSpace)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vdir), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn BrowseForFolder(&self, hwnd: i32, title: &::windows::core::BSTR, options: i32, rootfolder: super::super::System::Com::VARIANT) -> ::windows::core::Result<Folder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.BrowseForFolder)(::windows::core::Vtable::as_raw(self), hwnd, ::core::mem::transmute_copy(title), options, ::core::mem::transmute(rootfolder), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Windows(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.Windows)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Open(&self, vdir: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.Open)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vdir)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Explore(&self, vdir: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.Explore)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vdir)).ok()
}
pub unsafe fn MinimizeAll(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.MinimizeAll)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn UndoMinimizeALL(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.UndoMinimizeALL)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FileRun(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.FileRun)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn CascadeWindows(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.CascadeWindows)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn TileVertically(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.TileVertically)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn TileHorizontally(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.TileHorizontally)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ShutdownWindows(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.ShutdownWindows)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Suspend(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.Suspend)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn EjectPC(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.EjectPC)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetTime(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.SetTime)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn TrayProperties(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.TrayProperties)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Help(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.Help)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FindFiles(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.FindFiles)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FindComputer(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.FindComputer)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn RefreshMenu(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.RefreshMenu)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ControlPanelItem(&self, bstrdir: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.ControlPanelItem)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrdir)).ok()
}
pub unsafe fn IsRestricted(&self, group: &::windows::core::BSTR, restriction: &::windows::core::BSTR) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.IsRestricted)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(group), ::core::mem::transmute_copy(restriction), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShellExecute(&self, file: &::windows::core::BSTR, vargs: super::super::System::Com::VARIANT, vdir: super::super::System::Com::VARIANT, voperation: super::super::System::Com::VARIANT, vshow: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.ShellExecute)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(file), ::core::mem::transmute(vargs), ::core::mem::transmute(vdir), ::core::mem::transmute(voperation), ::core::mem::transmute(vshow)).ok()
}
pub unsafe fn FindPrinter(&self, name: &::windows::core::BSTR, location: &::windows::core::BSTR, model: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.FindPrinter)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(name), ::core::mem::transmute_copy(location), ::core::mem::transmute_copy(model)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn GetSystemInformation(&self, name: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.GetSystemInformation)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(name), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ServiceStart(&self, servicename: &::windows::core::BSTR, persistent: super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.ServiceStart)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), ::core::mem::transmute(persistent), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ServiceStop(&self, servicename: &::windows::core::BSTR, persistent: super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.ServiceStop)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), ::core::mem::transmute(persistent), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn IsServiceRunning(&self, servicename: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.IsServiceRunning)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn CanStartStopService(&self, servicename: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.CanStartStopService)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(servicename), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShowBrowserBar(&self, bstrclsid: &::windows::core::BSTR, bshow: super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.ShowBrowserBar)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrclsid), ::core::mem::transmute(bshow), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddToRecent(&self, varfile: super::super::System::Com::VARIANT, bstrcategory: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.AddToRecent)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(varfile), ::core::mem::transmute_copy(bstrcategory)).ok()
}
pub unsafe fn WindowsSecurity(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.WindowsSecurity)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ToggleDesktop(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.ToggleDesktop)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ExplorerPolicy(&self, bstrpolicyname: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.ExplorerPolicy)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrpolicyname), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetSetting(&self, lsetting: i32) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetSetting)(::windows::core::Vtable::as_raw(self), lsetting, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn WindowSwitcher(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.WindowSwitcher)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SearchCommand(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SearchCommand)(::windows::core::Vtable::as_raw(self)).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellDispatch6, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IShellDispatch, IShellDispatch2, IShellDispatch3, IShellDispatch4, IShellDispatch5);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellDispatch6 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellDispatch6 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellDispatch6 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellDispatch6 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellDispatch6").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellDispatch6 {
type Vtable = IShellDispatch6_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellDispatch6 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x286e6f1b_7113_4355_9562_96b7e9d64c54);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellDispatch6_Vtbl {
pub base__: IShellDispatch5_Vtbl,
pub SearchCommand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellExtInit(::windows::core::IUnknown);
impl IShellExtInit {
#[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_System_Registry\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_System_Registry", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn Initialize<P0, P1>(&self, pidlfolder: ::core::option::Option<*const Common::ITEMIDLIST>, pdtobj: P0, hkeyprogid: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
P1: ::std::convert::Into<super::super::System::Registry::HKEY>,
{
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pidlfolder.unwrap_or(::std::ptr::null())), pdtobj.into().abi(), hkeyprogid.into()).ok()
}
}
::windows::core::interface_hierarchy!(IShellExtInit, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellExtInit {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellExtInit {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellExtInit {}
impl ::core::fmt::Debug for IShellExtInit {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellExtInit").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellExtInit {
type Vtable = IShellExtInit_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellExtInit {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214e8_0000_0000_c000_000000000046);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellExtInit_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_System_Registry", feature = "Win32_UI_Shell_Common"))]
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidlfolder: *const Common::ITEMIDLIST, pdtobj: *mut ::core::ffi::c_void, hkeyprogid: super::super::System::Registry::HKEY) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_System_Com", feature = "Win32_System_Registry", feature = "Win32_UI_Shell_Common")))]
Initialize: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellFavoritesNameSpace(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellFavoritesNameSpace {
pub unsafe fn MoveSelectionUp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).MoveSelectionUp)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn MoveSelectionDown(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).MoveSelectionDown)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ResetSort(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ResetSort)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn NewFolder(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).NewFolder)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Synchronize(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Synchronize)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Import(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Import)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Export(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Export)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn InvokeContextMenuCommand(&self, strcommand: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).InvokeContextMenuCommand)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(strcommand)).ok()
}
pub unsafe fn MoveSelectionTo(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).MoveSelectionTo)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SubscriptionsEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).SubscriptionsEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CreateSubscriptionForSelection(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CreateSubscriptionForSelection)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn DeleteSubscriptionForSelection(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).DeleteSubscriptionForSelection)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetRoot(&self, bstrfullpath: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetRoot)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrfullpath)).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellFavoritesNameSpace, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellFavoritesNameSpace {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellFavoritesNameSpace {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellFavoritesNameSpace {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellFavoritesNameSpace {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellFavoritesNameSpace").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellFavoritesNameSpace {
type Vtable = IShellFavoritesNameSpace_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellFavoritesNameSpace {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x55136804_b2de_11d1_b9f2_00a0c98bc547);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellFavoritesNameSpace_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
pub MoveSelectionUp: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub MoveSelectionDown: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub ResetSort: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub NewFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Synchronize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Import: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Export: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub InvokeContextMenuCommand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, strcommand: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub MoveSelectionTo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub SubscriptionsEnabled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbool: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SubscriptionsEnabled: usize,
#[cfg(feature = "Win32_Foundation")]
pub CreateSubscriptionForSelection: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbool: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
CreateSubscriptionForSelection: usize,
#[cfg(feature = "Win32_Foundation")]
pub DeleteSubscriptionForSelection: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbool: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
DeleteSubscriptionForSelection: usize,
pub SetRoot: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrfullpath: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellFolder(::windows::core::IUnknown);
impl IShellFolder {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn ParseDisplayName<P0, P1, P2>(&self, hwnd: P0, pbc: P1, pszdisplayname: P2, pcheaten: ::core::option::Option<*mut u32>, ppidl: *mut *mut Common::ITEMIDLIST, pdwattributes: *mut u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).ParseDisplayName)(::windows::core::Vtable::as_raw(self), hwnd.into(), pbc.into().abi(), pszdisplayname.into().abi(), ::core::mem::transmute(pcheaten.unwrap_or(::std::ptr::null_mut())), ppidl, pdwattributes).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn EnumObjects<P0>(&self, hwnd: P0, grfflags: u32, ppenumidlist: *mut ::core::option::Option<IEnumIDList>) -> ::windows::core::HRESULT
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).EnumObjects)(::windows::core::Vtable::as_raw(self), hwnd.into(), grfflags, ::core::mem::transmute(ppenumidlist))
}
#[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn BindToObject<P0, T>(&self, pidl: *const Common::ITEMIDLIST, pbc: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).BindToObject)(::windows::core::Vtable::as_raw(self), pidl, pbc.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn BindToStorage<P0, T>(&self, pidl: *const Common::ITEMIDLIST, pbc: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).BindToStorage)(::windows::core::Vtable::as_raw(self), pidl, pbc.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn CompareIDs<P0>(&self, lparam: P0, pidl1: *const Common::ITEMIDLIST, pidl2: *const Common::ITEMIDLIST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).CompareIDs)(::windows::core::Vtable::as_raw(self), lparam.into(), pidl1, pidl2).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CreateViewObject<P0, T>(&self, hwndowner: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CreateViewObject)(::windows::core::Vtable::as_raw(self), hwndowner.into(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetAttributesOf(&self, apidl: &[*const Common::ITEMIDLIST], rgfinout: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetAttributesOf)(::windows::core::Vtable::as_raw(self), apidl.len() as _, ::core::mem::transmute(apidl.as_ptr()), rgfinout).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn GetUIObjectOf<P0, T>(&self, hwndowner: P0, apidl: &[*const Common::ITEMIDLIST], rgfreserved: ::core::option::Option<*mut u32>) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetUIObjectOf)(::windows::core::Vtable::as_raw(self), hwndowner.into(), apidl.len() as _, ::core::mem::transmute(apidl.as_ptr()), &<T as ::windows::core::Interface>::IID, ::core::mem::transmute(rgfreserved.unwrap_or(::std::ptr::null_mut())), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetDisplayNameOf(&self, pidl: *const Common::ITEMIDLIST, uflags: SHGDNF, pname: *mut Common::STRRET) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetDisplayNameOf)(::windows::core::Vtable::as_raw(self), pidl, uflags, pname).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn SetNameOf<P0, P1>(&self, hwnd: P0, pidl: *const Common::ITEMIDLIST, pszname: P1, uflags: SHGDNF, ppidlout: ::core::option::Option<*mut *mut Common::ITEMIDLIST>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetNameOf)(::windows::core::Vtable::as_raw(self), hwnd.into(), pidl, pszname.into().abi(), uflags, ::core::mem::transmute(ppidlout.unwrap_or(::std::ptr::null_mut()))).ok()
}
}
::windows::core::interface_hierarchy!(IShellFolder, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellFolder {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellFolder {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellFolder {}
impl ::core::fmt::Debug for IShellFolder {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellFolder").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellFolder {
type Vtable = IShellFolder_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellFolder {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214e6_0000_0000_c000_000000000046);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellFolder_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub ParseDisplayName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, pbc: *mut ::core::ffi::c_void, pszdisplayname: ::windows::core::PCWSTR, pcheaten: *mut u32, ppidl: *mut *mut Common::ITEMIDLIST, pdwattributes: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common")))]
ParseDisplayName: usize,
#[cfg(feature = "Win32_Foundation")]
pub EnumObjects: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, grfflags: u32, ppenumidlist: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
EnumObjects: usize,
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub BindToObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, pbc: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common")))]
BindToObject: usize,
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub BindToStorage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, pbc: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common")))]
BindToStorage: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub CompareIDs: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lparam: super::super::Foundation::LPARAM, pidl1: *const Common::ITEMIDLIST, pidl2: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common")))]
CompareIDs: usize,
#[cfg(feature = "Win32_Foundation")]
pub CreateViewObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndowner: super::super::Foundation::HWND, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
CreateViewObject: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetAttributesOf: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cidl: u32, apidl: *const *const Common::ITEMIDLIST, rgfinout: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetAttributesOf: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub GetUIObjectOf: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndowner: super::super::Foundation::HWND, cidl: u32, apidl: *const *const Common::ITEMIDLIST, riid: *const ::windows::core::GUID, rgfreserved: *mut u32, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common")))]
GetUIObjectOf: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetDisplayNameOf: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, uflags: SHGDNF, pname: *mut Common::STRRET) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetDisplayNameOf: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub SetNameOf: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, pidl: *const Common::ITEMIDLIST, pszname: ::windows::core::PCWSTR, uflags: SHGDNF, ppidlout: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common")))]
SetNameOf: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellFolder2(::windows::core::IUnknown);
impl IShellFolder2 {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn ParseDisplayName<P0, P1, P2>(&self, hwnd: P0, pbc: P1, pszdisplayname: P2, pcheaten: ::core::option::Option<*mut u32>, ppidl: *mut *mut Common::ITEMIDLIST, pdwattributes: *mut u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.ParseDisplayName)(::windows::core::Vtable::as_raw(self), hwnd.into(), pbc.into().abi(), pszdisplayname.into().abi(), ::core::mem::transmute(pcheaten.unwrap_or(::std::ptr::null_mut())), ppidl, pdwattributes).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn EnumObjects<P0>(&self, hwnd: P0, grfflags: u32, ppenumidlist: *mut ::core::option::Option<IEnumIDList>) -> ::windows::core::HRESULT
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.EnumObjects)(::windows::core::Vtable::as_raw(self), hwnd.into(), grfflags, ::core::mem::transmute(ppenumidlist))
}
#[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn BindToObject<P0, T>(&self, pidl: *const Common::ITEMIDLIST, pbc: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.BindToObject)(::windows::core::Vtable::as_raw(self), pidl, pbc.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn BindToStorage<P0, T>(&self, pidl: *const Common::ITEMIDLIST, pbc: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.BindToStorage)(::windows::core::Vtable::as_raw(self), pidl, pbc.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn CompareIDs<P0>(&self, lparam: P0, pidl1: *const Common::ITEMIDLIST, pidl2: *const Common::ITEMIDLIST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).base__.CompareIDs)(::windows::core::Vtable::as_raw(self), lparam.into(), pidl1, pidl2).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CreateViewObject<P0, T>(&self, hwndowner: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.CreateViewObject)(::windows::core::Vtable::as_raw(self), hwndowner.into(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetAttributesOf(&self, apidl: &[*const Common::ITEMIDLIST], rgfinout: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetAttributesOf)(::windows::core::Vtable::as_raw(self), apidl.len() as _, ::core::mem::transmute(apidl.as_ptr()), rgfinout).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn GetUIObjectOf<P0, T>(&self, hwndowner: P0, apidl: &[*const Common::ITEMIDLIST], rgfreserved: ::core::option::Option<*mut u32>) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetUIObjectOf)(::windows::core::Vtable::as_raw(self), hwndowner.into(), apidl.len() as _, ::core::mem::transmute(apidl.as_ptr()), &<T as ::windows::core::Interface>::IID, ::core::mem::transmute(rgfreserved.unwrap_or(::std::ptr::null_mut())), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetDisplayNameOf(&self, pidl: *const Common::ITEMIDLIST, uflags: SHGDNF, pname: *mut Common::STRRET) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetDisplayNameOf)(::windows::core::Vtable::as_raw(self), pidl, uflags, pname).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn SetNameOf<P0, P1>(&self, hwnd: P0, pidl: *const Common::ITEMIDLIST, pszname: P1, uflags: SHGDNF, ppidlout: ::core::option::Option<*mut *mut Common::ITEMIDLIST>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetNameOf)(::windows::core::Vtable::as_raw(self), hwnd.into(), pidl, pszname.into().abi(), uflags, ::core::mem::transmute(ppidlout.unwrap_or(::std::ptr::null_mut()))).ok()
}
pub unsafe fn GetDefaultSearchGUID(&self) -> ::windows::core::Result<::windows::core::GUID> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetDefaultSearchGUID)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn EnumSearches(&self) -> ::windows::core::Result<IEnumExtraSearch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).EnumSearches)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetDefaultColumn(&self, dwres: u32, psort: *mut u32, pdisplay: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetDefaultColumn)(::windows::core::Vtable::as_raw(self), dwres, psort, pdisplay).ok()
}
pub unsafe fn GetDefaultColumnState(&self, icolumn: u32) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetDefaultColumnState)(::windows::core::Vtable::as_raw(self), icolumn, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub unsafe fn GetDetailsEx(&self, pidl: *const Common::ITEMIDLIST, pscid: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetDetailsEx)(::windows::core::Vtable::as_raw(self), pidl, pscid, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetDetailsOf(&self, pidl: *const Common::ITEMIDLIST, icolumn: u32, psd: *mut Common::SHELLDETAILS) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetDetailsOf)(::windows::core::Vtable::as_raw(self), pidl, icolumn, psd).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn MapColumnToSCID(&self, icolumn: u32, pscid: *mut PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).MapColumnToSCID)(::windows::core::Vtable::as_raw(self), icolumn, pscid).ok()
}
}
::windows::core::interface_hierarchy!(IShellFolder2, ::windows::core::IUnknown, IShellFolder);
impl ::core::clone::Clone for IShellFolder2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellFolder2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellFolder2 {}
impl ::core::fmt::Debug for IShellFolder2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellFolder2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellFolder2 {
type Vtable = IShellFolder2_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellFolder2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x93f2f68c_1d1b_11d3_a30e_00c04f79abd1);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellFolder2_Vtbl {
pub base__: IShellFolder_Vtbl,
pub GetDefaultSearchGUID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pguid: *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
pub EnumSearches: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetDefaultColumn: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwres: u32, psort: *mut u32, pdisplay: *mut u32) -> ::windows::core::HRESULT,
pub GetDefaultColumnState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, icolumn: u32, pcsflags: *mut u32) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub GetDetailsEx: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, pscid: *const PropertiesSystem::PROPERTYKEY, pv: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_Shell_PropertiesSystem")))]
GetDetailsEx: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetDetailsOf: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, icolumn: u32, psd: *mut Common::SHELLDETAILS) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetDetailsOf: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub MapColumnToSCID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, icolumn: u32, pscid: *mut PropertiesSystem::PROPERTYKEY) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
MapColumnToSCID: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellFolderBand(::windows::core::IUnknown);
impl IShellFolderBand {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn InitializeSFB<P0>(&self, psf: P0, pidl: ::core::option::Option<*const Common::ITEMIDLIST>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
{
(::windows::core::Vtable::vtable(self).InitializeSFB)(::windows::core::Vtable::as_raw(self), psf.into().abi(), ::core::mem::transmute(pidl.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn SetBandInfoSFB(&self, pbi: *const BANDINFOSFB) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetBandInfoSFB)(::windows::core::Vtable::as_raw(self), pbi).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn GetBandInfoSFB(&self, pbi: *mut BANDINFOSFB) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetBandInfoSFB)(::windows::core::Vtable::as_raw(self), pbi).ok()
}
}
::windows::core::interface_hierarchy!(IShellFolderBand, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellFolderBand {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellFolderBand {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellFolderBand {}
impl ::core::fmt::Debug for IShellFolderBand {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellFolderBand").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellFolderBand {
type Vtable = IShellFolderBand_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellFolderBand {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7fe80cc8_c247_11d0_b93a_00a0c90312e1);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellFolderBand_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub InitializeSFB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psf: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
InitializeSFB: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub SetBandInfoSFB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbi: *const BANDINFOSFB) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common")))]
SetBandInfoSFB: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub GetBandInfoSFB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbi: *mut BANDINFOSFB) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common")))]
GetBandInfoSFB: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellFolderView(::windows::core::IUnknown);
impl IShellFolderView {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Rearrange<P0>(&self, lparamsort: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).Rearrange)(::windows::core::Vtable::as_raw(self), lparamsort.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetArrangeParam(&self) -> ::windows::core::Result<super::super::Foundation::LPARAM> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetArrangeParam)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn ArrangeGrid(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ArrangeGrid)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn AutoArrange(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AutoArrange)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GetAutoArrange(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetAutoArrange)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn AddObject(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).AddObject)(::windows::core::Vtable::as_raw(self), pidl, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetObject(&self, ppidl: *mut *mut Common::ITEMIDLIST, uitem: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetObject)(::windows::core::Vtable::as_raw(self), ppidl, uitem).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn RemoveObject(&self, pidl: ::core::option::Option<*const Common::ITEMIDLIST>) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).RemoveObject)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pidl.unwrap_or(::std::ptr::null())), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetObjectCount(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetObjectCount)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetObjectCount(&self, ucount: u32, dwflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetObjectCount)(::windows::core::Vtable::as_raw(self), ucount, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn UpdateObject(&self, pidlold: *const Common::ITEMIDLIST, pidlnew: *const Common::ITEMIDLIST) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).UpdateObject)(::windows::core::Vtable::as_raw(self), pidlold, pidlnew, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn RefreshObject(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).RefreshObject)(::windows::core::Vtable::as_raw(self), pidl, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetRedraw<P0>(&self, bredraw: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetRedraw)(::windows::core::Vtable::as_raw(self), bredraw.into()).ok()
}
pub unsafe fn GetSelectedCount(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSelectedCount)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetSelectedObjects(&self, pppidl: *mut *mut *mut Common::ITEMIDLIST, puitems: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetSelectedObjects)(::windows::core::Vtable::as_raw(self), pppidl, puitems).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn IsDropOnSource<P0>(&self, pdroptarget: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Ole::IDropTarget>>,
{
(::windows::core::Vtable::vtable(self).IsDropOnSource)(::windows::core::Vtable::as_raw(self), pdroptarget.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetDragPoint(&self) -> ::windows::core::Result<super::super::Foundation::POINT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetDragPoint)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetDropPoint(&self) -> ::windows::core::Result<super::super::Foundation::POINT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetDropPoint)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn MoveIcons<P0>(&self, pdataobject: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
{
(::windows::core::Vtable::vtable(self).MoveIcons)(::windows::core::Vtable::as_raw(self), pdataobject.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn SetItemPos(&self, pidl: *const Common::ITEMIDLIST, ppt: *const super::super::Foundation::POINT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetItemPos)(::windows::core::Vtable::as_raw(self), pidl, ppt).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn IsBkDropTarget<P0>(&self, pdroptarget: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Ole::IDropTarget>>,
{
(::windows::core::Vtable::vtable(self).IsBkDropTarget)(::windows::core::Vtable::as_raw(self), pdroptarget.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetClipboard<P0>(&self, bmove: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetClipboard)(::windows::core::Vtable::as_raw(self), bmove.into()).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn SetPoints<P0>(&self, pdataobject: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDataObject>>,
{
(::windows::core::Vtable::vtable(self).SetPoints)(::windows::core::Vtable::as_raw(self), pdataobject.into().abi()).ok()
}
pub unsafe fn GetItemSpacing(&self) -> ::windows::core::Result<ITEMSPACING> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItemSpacing)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetCallback<P0>(&self, pnewcb: P0) -> ::windows::core::Result<IShellFolderViewCB>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolderViewCB>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).SetCallback)(::windows::core::Vtable::as_raw(self), pnewcb.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Select(&self, dwflags: SFVS_SELECT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Select)(::windows::core::Vtable::as_raw(self), dwflags).ok()
}
pub unsafe fn QuerySupport(&self, pdwsupport: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).QuerySupport)(::windows::core::Vtable::as_raw(self), pdwsupport).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn SetAutomationObject<P0>(&self, pdisp: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDispatch>>,
{
(::windows::core::Vtable::vtable(self).SetAutomationObject)(::windows::core::Vtable::as_raw(self), pdisp.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IShellFolderView, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellFolderView {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellFolderView {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellFolderView {}
impl ::core::fmt::Debug for IShellFolderView {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellFolderView").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellFolderView {
type Vtable = IShellFolderView_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellFolderView {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x37a378c0_f82d_11ce_ae65_08002b2e1262);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellFolderView_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub Rearrange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lparamsort: super::super::Foundation::LPARAM) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Rearrange: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetArrangeParam: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plparamsort: *mut super::super::Foundation::LPARAM) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetArrangeParam: usize,
pub ArrangeGrid: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub AutoArrange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetAutoArrange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub AddObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, puitem: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
AddObject: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppidl: *mut *mut Common::ITEMIDLIST, uitem: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetObject: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub RemoveObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, puitem: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
RemoveObject: usize,
pub GetObjectCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pucount: *mut u32) -> ::windows::core::HRESULT,
pub SetObjectCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ucount: u32, dwflags: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub UpdateObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidlold: *const Common::ITEMIDLIST, pidlnew: *const Common::ITEMIDLIST, puitem: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
UpdateObject: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub RefreshObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, puitem: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
RefreshObject: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetRedraw: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bredraw: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetRedraw: usize,
pub GetSelectedCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, puselected: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetSelectedObjects: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pppidl: *mut *mut *mut Common::ITEMIDLIST, puitems: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetSelectedObjects: usize,
#[cfg(feature = "Win32_System_Ole")]
pub IsDropOnSource: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdroptarget: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Ole"))]
IsDropOnSource: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetDragPoint: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppt: *mut super::super::Foundation::POINT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetDragPoint: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetDropPoint: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppt: *mut super::super::Foundation::POINT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetDropPoint: usize,
#[cfg(feature = "Win32_System_Com")]
pub MoveIcons: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdataobject: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
MoveIcons: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub SetItemPos: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, ppt: *const super::super::Foundation::POINT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common")))]
SetItemPos: usize,
#[cfg(feature = "Win32_System_Ole")]
pub IsBkDropTarget: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdroptarget: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Ole"))]
IsBkDropTarget: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetClipboard: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bmove: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetClipboard: usize,
#[cfg(feature = "Win32_System_Com")]
pub SetPoints: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdataobject: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
SetPoints: usize,
pub GetItemSpacing: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pspacing: *mut ITEMSPACING) -> ::windows::core::HRESULT,
pub SetCallback: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pnewcb: *mut ::core::ffi::c_void, ppoldcb: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Select: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: SFVS_SELECT) -> ::windows::core::HRESULT,
pub QuerySupport: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwsupport: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub SetAutomationObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdisp: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
SetAutomationObject: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellFolderViewCB(::windows::core::IUnknown);
impl IShellFolderViewCB {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn MessageSFVCB<P0, P1>(&self, umsg: SFVM_MESSAGE_ID, wparam: P0, lparam: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::WPARAM>,
P1: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).MessageSFVCB)(::windows::core::Vtable::as_raw(self), umsg, wparam.into(), lparam.into()).ok()
}
}
::windows::core::interface_hierarchy!(IShellFolderViewCB, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellFolderViewCB {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellFolderViewCB {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellFolderViewCB {}
impl ::core::fmt::Debug for IShellFolderViewCB {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellFolderViewCB").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellFolderViewCB {
type Vtable = IShellFolderViewCB_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellFolderViewCB {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2047e320_f2a9_11ce_ae65_08002b2e1262);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellFolderViewCB_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub MessageSFVCB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, umsg: SFVM_MESSAGE_ID, wparam: super::super::Foundation::WPARAM, lparam: super::super::Foundation::LPARAM) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
MessageSFVCB: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellFolderViewDual(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellFolderViewDual {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Folder(&self) -> ::windows::core::Result<Folder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Folder)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn SelectedItems(&self) -> ::windows::core::Result<FolderItems> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).SelectedItems)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn FocusedItem(&self) -> ::windows::core::Result<FolderItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).FocusedItem)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn SelectItem(&self, pvfi: *const super::super::System::Com::VARIANT, dwflags: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SelectItem)(::windows::core::Vtable::as_raw(self), pvfi, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn PopupItemMenu<P0>(&self, pfi: P0, vx: super::super::System::Com::VARIANT, vy: super::super::System::Com::VARIANT) -> ::windows::core::Result<::windows::core::BSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<FolderItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).PopupItemMenu)(::windows::core::Vtable::as_raw(self), pfi.into().abi(), ::core::mem::transmute(vx), ::core::mem::transmute(vy), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Script(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Script)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn ViewOptions(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ViewOptions)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellFolderViewDual, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellFolderViewDual {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellFolderViewDual {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellFolderViewDual {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellFolderViewDual {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellFolderViewDual").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellFolderViewDual {
type Vtable = IShellFolderViewDual_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellFolderViewDual {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe7a1af80_4d96_11cf_960c_0080c7f4ee85);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellFolderViewDual_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub Application: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Application: usize,
#[cfg(feature = "Win32_System_Com")]
pub Parent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Parent: usize,
#[cfg(feature = "Win32_System_Com")]
pub Folder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Folder: usize,
#[cfg(feature = "Win32_System_Com")]
pub SelectedItems: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
SelectedItems: usize,
#[cfg(feature = "Win32_System_Com")]
pub FocusedItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
FocusedItem: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub SelectItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pvfi: *const super::super::System::Com::VARIANT, dwflags: i32) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
SelectItem: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub PopupItemMenu: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfi: *mut ::core::ffi::c_void, vx: super::super::System::Com::VARIANT, vy: super::super::System::Com::VARIANT, pbs: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
PopupItemMenu: usize,
#[cfg(feature = "Win32_System_Com")]
pub Script: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppdisp: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Script: usize,
pub ViewOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plviewoptions: *mut i32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellFolderViewDual2(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellFolderViewDual2 {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Folder(&self) -> ::windows::core::Result<Folder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Folder)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn SelectedItems(&self) -> ::windows::core::Result<FolderItems> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.SelectedItems)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn FocusedItem(&self) -> ::windows::core::Result<FolderItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.FocusedItem)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn SelectItem(&self, pvfi: *const super::super::System::Com::VARIANT, dwflags: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SelectItem)(::windows::core::Vtable::as_raw(self), pvfi, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn PopupItemMenu<P0>(&self, pfi: P0, vx: super::super::System::Com::VARIANT, vy: super::super::System::Com::VARIANT) -> ::windows::core::Result<::windows::core::BSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<FolderItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.PopupItemMenu)(::windows::core::Vtable::as_raw(self), pfi.into().abi(), ::core::mem::transmute(vx), ::core::mem::transmute(vy), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Script(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Script)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn ViewOptions(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.ViewOptions)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn CurrentViewMode(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CurrentViewMode)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetCurrentViewMode(&self, viewmode: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetCurrentViewMode)(::windows::core::Vtable::as_raw(self), viewmode).ok()
}
pub unsafe fn SelectItemRelative(&self, irelative: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SelectItemRelative)(::windows::core::Vtable::as_raw(self), irelative).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellFolderViewDual2, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IShellFolderViewDual);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellFolderViewDual2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellFolderViewDual2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellFolderViewDual2 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellFolderViewDual2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellFolderViewDual2").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellFolderViewDual2 {
type Vtable = IShellFolderViewDual2_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellFolderViewDual2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x31c147b6_0ade_4a3c_b514_ddf932ef6d17);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellFolderViewDual2_Vtbl {
pub base__: IShellFolderViewDual_Vtbl,
pub CurrentViewMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pviewmode: *mut u32) -> ::windows::core::HRESULT,
pub SetCurrentViewMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, viewmode: u32) -> ::windows::core::HRESULT,
pub SelectItemRelative: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, irelative: i32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellFolderViewDual3(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellFolderViewDual3 {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Folder(&self) -> ::windows::core::Result<Folder> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Folder)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn SelectedItems(&self) -> ::windows::core::Result<FolderItems> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.SelectedItems)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn FocusedItem(&self) -> ::windows::core::Result<FolderItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.FocusedItem)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn SelectItem(&self, pvfi: *const super::super::System::Com::VARIANT, dwflags: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.SelectItem)(::windows::core::Vtable::as_raw(self), pvfi, dwflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn PopupItemMenu<P0>(&self, pfi: P0, vx: super::super::System::Com::VARIANT, vy: super::super::System::Com::VARIANT) -> ::windows::core::Result<::windows::core::BSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<FolderItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.PopupItemMenu)(::windows::core::Vtable::as_raw(self), pfi.into().abi(), ::core::mem::transmute(vx), ::core::mem::transmute(vy), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Script(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Script)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn ViewOptions(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.ViewOptions)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn CurrentViewMode(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.CurrentViewMode)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetCurrentViewMode(&self, viewmode: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetCurrentViewMode)(::windows::core::Vtable::as_raw(self), viewmode).ok()
}
pub unsafe fn SelectItemRelative(&self, irelative: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SelectItemRelative)(::windows::core::Vtable::as_raw(self), irelative).ok()
}
pub unsafe fn GroupBy(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GroupBy)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetGroupBy(&self, bstrgroupby: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetGroupBy)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrgroupby)).ok()
}
pub unsafe fn FolderFlags(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).FolderFlags)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetFolderFlags(&self, dwflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetFolderFlags)(::windows::core::Vtable::as_raw(self), dwflags).ok()
}
pub unsafe fn SortColumns(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).SortColumns)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetSortColumns(&self, bstrsortcolumns: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetSortColumns)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrsortcolumns)).ok()
}
pub unsafe fn SetIconSize(&self, iiconsize: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetIconSize)(::windows::core::Vtable::as_raw(self), iiconsize).ok()
}
pub unsafe fn IconSize(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IconSize)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn FilterView(&self, bstrfiltertext: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).FilterView)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrfiltertext)).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellFolderViewDual3, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IShellFolderViewDual, IShellFolderViewDual2);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellFolderViewDual3 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellFolderViewDual3 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellFolderViewDual3 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellFolderViewDual3 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellFolderViewDual3").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellFolderViewDual3 {
type Vtable = IShellFolderViewDual3_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellFolderViewDual3 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x29ec8e6c_46d3_411f_baaa_611a6c9cac66);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellFolderViewDual3_Vtbl {
pub base__: IShellFolderViewDual2_Vtbl,
pub GroupBy: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstrgroupby: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetGroupBy: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrgroupby: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub FolderFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwflags: *mut u32) -> ::windows::core::HRESULT,
pub SetFolderFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32) -> ::windows::core::HRESULT,
pub SortColumns: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstrsortcolumns: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetSortColumns: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrsortcolumns: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetIconSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, iiconsize: i32) -> ::windows::core::HRESULT,
pub IconSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, piiconsize: *mut i32) -> ::windows::core::HRESULT,
pub FilterView: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrfiltertext: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellIcon(::windows::core::IUnknown);
impl IShellIcon {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetIconOf(&self, pidl: *const Common::ITEMIDLIST, flags: u32) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetIconOf)(::windows::core::Vtable::as_raw(self), pidl, flags, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IShellIcon, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellIcon {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellIcon {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellIcon {}
impl ::core::fmt::Debug for IShellIcon {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellIcon").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellIcon {
type Vtable = IShellIcon_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellIcon {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214e5_0000_0000_c000_000000000046);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellIcon_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetIconOf: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, flags: u32, piconindex: *mut i32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetIconOf: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellIconOverlay(::windows::core::IUnknown);
impl IShellIconOverlay {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetOverlayIndex(&self, pidl: *const Common::ITEMIDLIST, pindex: *mut i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetOverlayIndex)(::windows::core::Vtable::as_raw(self), pidl, pindex).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetOverlayIconIndex(&self, pidl: *const Common::ITEMIDLIST, piconindex: *mut i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetOverlayIconIndex)(::windows::core::Vtable::as_raw(self), pidl, piconindex).ok()
}
}
::windows::core::interface_hierarchy!(IShellIconOverlay, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellIconOverlay {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellIconOverlay {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellIconOverlay {}
impl ::core::fmt::Debug for IShellIconOverlay {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellIconOverlay").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellIconOverlay {
type Vtable = IShellIconOverlay_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellIconOverlay {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7d688a70_c613_11d0_999b_00c04fd655e1);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellIconOverlay_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetOverlayIndex: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, pindex: *mut i32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetOverlayIndex: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetOverlayIconIndex: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, piconindex: *mut i32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetOverlayIconIndex: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellIconOverlayIdentifier(::windows::core::IUnknown);
impl IShellIconOverlayIdentifier {
pub unsafe fn IsMemberOf<P0>(&self, pwszpath: P0, dwattrib: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).IsMemberOf)(::windows::core::Vtable::as_raw(self), pwszpath.into().abi(), dwattrib).ok()
}
pub unsafe fn GetOverlayInfo(&self, pwsziconfile: &mut [u16], pindex: *mut i32, pdwflags: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetOverlayInfo)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pwsziconfile.as_ptr()), pwsziconfile.len() as _, pindex, pdwflags).ok()
}
pub unsafe fn GetPriority(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPriority)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IShellIconOverlayIdentifier, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellIconOverlayIdentifier {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellIconOverlayIdentifier {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellIconOverlayIdentifier {}
impl ::core::fmt::Debug for IShellIconOverlayIdentifier {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellIconOverlayIdentifier").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellIconOverlayIdentifier {
type Vtable = IShellIconOverlayIdentifier_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellIconOverlayIdentifier {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0c6c4200_c589_11d0_999a_00c04fd655e1);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellIconOverlayIdentifier_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub IsMemberOf: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwszpath: ::windows::core::PCWSTR, dwattrib: u32) -> ::windows::core::HRESULT,
pub GetOverlayInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwsziconfile: ::windows::core::PWSTR, cchmax: i32, pindex: *mut i32, pdwflags: *mut u32) -> ::windows::core::HRESULT,
pub GetPriority: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppriority: *mut i32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellIconOverlayManager(::windows::core::IUnknown);
impl IShellIconOverlayManager {
pub unsafe fn GetFileOverlayInfo<P0>(&self, pwszpath: P0, dwattrib: u32, pindex: *mut i32, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).GetFileOverlayInfo)(::windows::core::Vtable::as_raw(self), pwszpath.into().abi(), dwattrib, pindex, dwflags).ok()
}
pub unsafe fn GetReservedOverlayInfo<P0>(&self, pwszpath: P0, dwattrib: u32, pindex: *mut i32, dwflags: u32, ireservedid: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).GetReservedOverlayInfo)(::windows::core::Vtable::as_raw(self), pwszpath.into().abi(), dwattrib, pindex, dwflags, ireservedid).ok()
}
pub unsafe fn RefreshOverlayImages(&self, dwflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RefreshOverlayImages)(::windows::core::Vtable::as_raw(self), dwflags).ok()
}
pub unsafe fn LoadNonloadedOverlayIdentifiers(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).LoadNonloadedOverlayIdentifiers)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OverlayIndexFromImageIndex<P0>(&self, iimage: i32, piindex: *mut i32, fadd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).OverlayIndexFromImageIndex)(::windows::core::Vtable::as_raw(self), iimage, piindex, fadd.into()).ok()
}
}
::windows::core::interface_hierarchy!(IShellIconOverlayManager, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellIconOverlayManager {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellIconOverlayManager {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellIconOverlayManager {}
impl ::core::fmt::Debug for IShellIconOverlayManager {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellIconOverlayManager").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellIconOverlayManager {
type Vtable = IShellIconOverlayManager_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellIconOverlayManager {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf10b5e34_dd3b_42a7_aa7d_2f4ec54bb09b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellIconOverlayManager_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetFileOverlayInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwszpath: ::windows::core::PCWSTR, dwattrib: u32, pindex: *mut i32, dwflags: u32) -> ::windows::core::HRESULT,
pub GetReservedOverlayInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwszpath: ::windows::core::PCWSTR, dwattrib: u32, pindex: *mut i32, dwflags: u32, ireservedid: i32) -> ::windows::core::HRESULT,
pub RefreshOverlayImages: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32) -> ::windows::core::HRESULT,
pub LoadNonloadedOverlayIdentifiers: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub OverlayIndexFromImageIndex: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, iimage: i32, piindex: *mut i32, fadd: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
OverlayIndexFromImageIndex: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellImageData(::windows::core::IUnknown);
impl IShellImageData {
pub unsafe fn Decode(&self, dwflags: u32, cxdesired: u32, cydesired: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Decode)(::windows::core::Vtable::as_raw(self), dwflags, cxdesired, cydesired).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
pub unsafe fn Draw<P0>(&self, hdc: P0, prcdest: *mut super::super::Foundation::RECT, prcsrc: *mut super::super::Foundation::RECT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Graphics::Gdi::HDC>,
{
(::windows::core::Vtable::vtable(self).Draw)(::windows::core::Vtable::as_raw(self), hdc.into(), prcdest, prcsrc).ok()
}
pub unsafe fn NextFrame(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).NextFrame)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn NextPage(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).NextPage)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn PrevPage(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).PrevPage)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn IsTransparent(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).IsTransparent)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn IsAnimated(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).IsAnimated)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn IsVector(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).IsVector)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn IsMultipage(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).IsMultipage)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn IsEditable(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).IsEditable)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn IsPrintable(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).IsPrintable)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn IsDecoded(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).IsDecoded)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GetCurrentPage(&self, pnpage: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetCurrentPage)(::windows::core::Vtable::as_raw(self), pnpage).ok()
}
pub unsafe fn GetPageCount(&self, pcpages: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetPageCount)(::windows::core::Vtable::as_raw(self), pcpages).ok()
}
pub unsafe fn SelectPage(&self, ipage: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SelectPage)(::windows::core::Vtable::as_raw(self), ipage).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetSize(&self, psize: *mut super::super::Foundation::SIZE) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetSize)(::windows::core::Vtable::as_raw(self), psize).ok()
}
pub unsafe fn GetRawDataFormat(&self, pdataformat: *mut ::windows::core::GUID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetRawDataFormat)(::windows::core::Vtable::as_raw(self), pdataformat).ok()
}
pub unsafe fn GetPixelFormat(&self, pformat: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetPixelFormat)(::windows::core::Vtable::as_raw(self), pformat).ok()
}
pub unsafe fn GetDelay(&self, pdwdelay: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetDelay)(::windows::core::Vtable::as_raw(self), pdwdelay).ok()
}
#[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"]
#[cfg(feature = "Win32_System_Com_StructuredStorage")]
pub unsafe fn GetProperties(&self, dwmode: u32) -> ::windows::core::Result<super::super::System::Com::StructuredStorage::IPropertySetStorage> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetProperties)(::windows::core::Vtable::as_raw(self), dwmode, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Rotate(&self, dwangle: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Rotate)(::windows::core::Vtable::as_raw(self), dwangle).ok()
}
pub unsafe fn Scale(&self, cx: u32, cy: u32, hints: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Scale)(::windows::core::Vtable::as_raw(self), cx, cy, hints).ok()
}
pub unsafe fn DiscardEdit(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).DiscardEdit)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"]
#[cfg(feature = "Win32_System_Com_StructuredStorage")]
pub unsafe fn SetEncoderParams<P0>(&self, pbagenc: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::StructuredStorage::IPropertyBag>>,
{
(::windows::core::Vtable::vtable(self).SetEncoderParams)(::windows::core::Vtable::as_raw(self), pbagenc.into().abi()).ok()
}
pub unsafe fn DisplayName<P0>(&self, wszname: P0, cch: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).DisplayName)(::windows::core::Vtable::as_raw(self), wszname.into().abi(), cch).ok()
}
pub unsafe fn GetResolution(&self, puresolutionx: *mut u32, puresolutiony: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetResolution)(::windows::core::Vtable::as_raw(self), puresolutionx, puresolutiony).ok()
}
pub unsafe fn GetEncoderParams(&self, pguidfmt: *mut ::windows::core::GUID, ppencparams: *mut *mut u8) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetEncoderParams)(::windows::core::Vtable::as_raw(self), pguidfmt, ppencparams).ok()
}
pub unsafe fn RegisterAbort<P0>(&self, pabort: P0) -> ::windows::core::Result<IShellImageDataAbort>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellImageDataAbort>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).RegisterAbort)(::windows::core::Vtable::as_raw(self), pabort.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn CloneFrame(&self, ppimg: *mut *mut u8) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).CloneFrame)(::windows::core::Vtable::as_raw(self), ppimg).ok()
}
pub unsafe fn ReplaceFrame(&self, pimg: *mut u8) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ReplaceFrame)(::windows::core::Vtable::as_raw(self), pimg).ok()
}
}
::windows::core::interface_hierarchy!(IShellImageData, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellImageData {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellImageData {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellImageData {}
impl ::core::fmt::Debug for IShellImageData {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellImageData").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellImageData {
type Vtable = IShellImageData_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellImageData {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbfdeec12_8040_4403_a5ea_9e07dafcf530);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellImageData_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Decode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32, cxdesired: u32, cydesired: u32) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
pub Draw: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hdc: super::super::Graphics::Gdi::HDC, prcdest: *mut super::super::Foundation::RECT, prcsrc: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi")))]
Draw: usize,
pub NextFrame: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub NextPage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub PrevPage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub IsTransparent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub IsAnimated: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub IsVector: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub IsMultipage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub IsEditable: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub IsPrintable: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub IsDecoded: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetCurrentPage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pnpage: *mut u32) -> ::windows::core::HRESULT,
pub GetPageCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcpages: *mut u32) -> ::windows::core::HRESULT,
pub SelectPage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ipage: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psize: *mut super::super::Foundation::SIZE) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetSize: usize,
pub GetRawDataFormat: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdataformat: *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
pub GetPixelFormat: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pformat: *mut u32) -> ::windows::core::HRESULT,
pub GetDelay: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwdelay: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com_StructuredStorage")]
pub GetProperties: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwmode: u32, pppropset: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com_StructuredStorage"))]
GetProperties: usize,
pub Rotate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwangle: u32) -> ::windows::core::HRESULT,
pub Scale: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cx: u32, cy: u32, hints: u32) -> ::windows::core::HRESULT,
pub DiscardEdit: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com_StructuredStorage")]
pub SetEncoderParams: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbagenc: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com_StructuredStorage"))]
SetEncoderParams: usize,
pub DisplayName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, wszname: ::windows::core::PCWSTR, cch: u32) -> ::windows::core::HRESULT,
pub GetResolution: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, puresolutionx: *mut u32, puresolutiony: *mut u32) -> ::windows::core::HRESULT,
pub GetEncoderParams: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pguidfmt: *mut ::windows::core::GUID, ppencparams: *mut *mut u8) -> ::windows::core::HRESULT,
pub RegisterAbort: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pabort: *mut ::core::ffi::c_void, ppabortprev: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub CloneFrame: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppimg: *mut *mut u8) -> ::windows::core::HRESULT,
pub ReplaceFrame: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pimg: *mut u8) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellImageDataAbort(::windows::core::IUnknown);
impl IShellImageDataAbort {
pub unsafe fn QueryAbort(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).QueryAbort)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IShellImageDataAbort, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellImageDataAbort {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellImageDataAbort {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellImageDataAbort {}
impl ::core::fmt::Debug for IShellImageDataAbort {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellImageDataAbort").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellImageDataAbort {
type Vtable = IShellImageDataAbort_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellImageDataAbort {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x53fb8e58_50c0_4003_b4aa_0c8df28e7f3a);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellImageDataAbort_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub QueryAbort: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellImageDataFactory(::windows::core::IUnknown);
impl IShellImageDataFactory {
pub unsafe fn CreateIShellImageData(&self) -> ::windows::core::Result<IShellImageData> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CreateIShellImageData)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn CreateImageFromFile<P0>(&self, pszpath: P0) -> ::windows::core::Result<IShellImageData>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CreateImageFromFile)(::windows::core::Vtable::as_raw(self), pszpath.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn CreateImageFromStream<P0>(&self, pstream: P0) -> ::windows::core::Result<IShellImageData>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CreateImageFromStream)(::windows::core::Vtable::as_raw(self), pstream.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetDataFormatFromPath<P0>(&self, pszpath: P0) -> ::windows::core::Result<::windows::core::GUID>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetDataFormatFromPath)(::windows::core::Vtable::as_raw(self), pszpath.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IShellImageDataFactory, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellImageDataFactory {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellImageDataFactory {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellImageDataFactory {}
impl ::core::fmt::Debug for IShellImageDataFactory {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellImageDataFactory").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellImageDataFactory {
type Vtable = IShellImageDataFactory_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellImageDataFactory {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9be8ed5c_edab_4d75_90f3_bd5bdbb21c82);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellImageDataFactory_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub CreateIShellImageData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppshimg: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub CreateImageFromFile: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszpath: ::windows::core::PCWSTR, ppshimg: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub CreateImageFromStream: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstream: *mut ::core::ffi::c_void, ppshimg: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
CreateImageFromStream: usize,
pub GetDataFormatFromPath: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszpath: ::windows::core::PCWSTR, pdataformat: *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellItem(::windows::core::IUnknown);
impl IShellItem {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn BindToHandler<P0, T>(&self, pbc: P0, bhid: *const ::windows::core::GUID) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).BindToHandler)(::windows::core::Vtable::as_raw(self), pbc.into().abi(), bhid, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetParent(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetParent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetDisplayName(&self, sigdnname: SIGDN) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetDisplayName)(::windows::core::Vtable::as_raw(self), sigdnname, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"]
#[cfg(feature = "Win32_System_SystemServices")]
pub unsafe fn GetAttributes(&self, sfgaomask: super::super::System::SystemServices::SFGAO_FLAGS) -> ::windows::core::Result<super::super::System::SystemServices::SFGAO_FLAGS> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetAttributes)(::windows::core::Vtable::as_raw(self), sfgaomask, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Compare<P0>(&self, psi: P0, hint: u32) -> ::windows::core::Result<i32>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Compare)(::windows::core::Vtable::as_raw(self), psi.into().abi(), hint, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IShellItem, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellItem {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellItem {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellItem {}
impl ::core::fmt::Debug for IShellItem {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellItem").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellItem {
type Vtable = IShellItem_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellItem {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x43826d1e_e718_42ee_bc55_a1e261c37bfe);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellItem_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub BindToHandler: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbc: *mut ::core::ffi::c_void, bhid: *const ::windows::core::GUID, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
BindToHandler: usize,
pub GetParent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppsi: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetDisplayName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, sigdnname: SIGDN, ppszname: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_SystemServices")]
pub GetAttributes: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, sfgaomask: super::super::System::SystemServices::SFGAO_FLAGS, psfgaoattribs: *mut super::super::System::SystemServices::SFGAO_FLAGS) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_SystemServices"))]
GetAttributes: usize,
pub Compare: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, hint: u32, piorder: *mut i32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellItem2(::windows::core::IUnknown);
impl IShellItem2 {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn BindToHandler<P0, T>(&self, pbc: P0, bhid: *const ::windows::core::GUID) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.BindToHandler)(::windows::core::Vtable::as_raw(self), pbc.into().abi(), bhid, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetParent(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetParent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetDisplayName(&self, sigdnname: SIGDN) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetDisplayName)(::windows::core::Vtable::as_raw(self), sigdnname, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"]
#[cfg(feature = "Win32_System_SystemServices")]
pub unsafe fn GetAttributes(&self, sfgaomask: super::super::System::SystemServices::SFGAO_FLAGS) -> ::windows::core::Result<super::super::System::SystemServices::SFGAO_FLAGS> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetAttributes)(::windows::core::Vtable::as_raw(self), sfgaomask, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Compare<P0>(&self, psi: P0, hint: u32) -> ::windows::core::Result<i32>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Compare)(::windows::core::Vtable::as_raw(self), psi.into().abi(), hint, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetPropertyStore<T>(&self, flags: PropertiesSystem::GETPROPERTYSTOREFLAGS) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPropertyStore)(::windows::core::Vtable::as_raw(self), flags, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetPropertyStoreWithCreateObject<P0, T>(&self, flags: PropertiesSystem::GETPROPERTYSTOREFLAGS, punkcreateobject: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPropertyStoreWithCreateObject)(::windows::core::Vtable::as_raw(self), flags, punkcreateobject.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetPropertyStoreForKeys<T>(&self, rgkeys: &[PropertiesSystem::PROPERTYKEY], flags: PropertiesSystem::GETPROPERTYSTOREFLAGS) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPropertyStoreForKeys)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(rgkeys.as_ptr()), rgkeys.len() as _, flags, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetPropertyDescriptionList<T>(&self, keytype: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPropertyDescriptionList)(::windows::core::Vtable::as_raw(self), keytype, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Update<P0>(&self, pbc: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
{
(::windows::core::Vtable::vtable(self).Update)(::windows::core::Vtable::as_raw(self), pbc.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub unsafe fn GetProperty(&self, key: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<super::super::System::Com::StructuredStorage::PROPVARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetProperty)(::windows::core::Vtable::as_raw(self), key, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetCLSID(&self, key: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<::windows::core::GUID> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCLSID)(::windows::core::Vtable::as_raw(self), key, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub unsafe fn GetFileTime(&self, key: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<super::super::Foundation::FILETIME> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFileTime)(::windows::core::Vtable::as_raw(self), key, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetInt32(&self, key: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetInt32)(::windows::core::Vtable::as_raw(self), key, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetString(&self, key: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetString)(::windows::core::Vtable::as_raw(self), key, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetUInt32(&self, key: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetUInt32)(::windows::core::Vtable::as_raw(self), key, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetUInt64(&self, key: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<u64> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetUInt64)(::windows::core::Vtable::as_raw(self), key, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub unsafe fn GetBool(&self, key: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<super::super::Foundation::BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetBool)(::windows::core::Vtable::as_raw(self), key, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IShellItem2, ::windows::core::IUnknown, IShellItem);
impl ::core::clone::Clone for IShellItem2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellItem2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellItem2 {}
impl ::core::fmt::Debug for IShellItem2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellItem2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellItem2 {
type Vtable = IShellItem2_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellItem2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7e9fb0d3_919f_4307_ab2e_9b1860310c93);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellItem2_Vtbl {
pub base__: IShellItem_Vtbl,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetPropertyStore: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, flags: PropertiesSystem::GETPROPERTYSTOREFLAGS, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetPropertyStore: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetPropertyStoreWithCreateObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, flags: PropertiesSystem::GETPROPERTYSTOREFLAGS, punkcreateobject: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetPropertyStoreWithCreateObject: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetPropertyStoreForKeys: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rgkeys: *const PropertiesSystem::PROPERTYKEY, ckeys: u32, flags: PropertiesSystem::GETPROPERTYSTOREFLAGS, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetPropertyStoreForKeys: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetPropertyDescriptionList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, keytype: *const PropertiesSystem::PROPERTYKEY, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetPropertyDescriptionList: usize,
#[cfg(feature = "Win32_System_Com")]
pub Update: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbc: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Update: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub GetProperty: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, key: *const PropertiesSystem::PROPERTYKEY, ppropvar: *mut super::super::System::Com::StructuredStorage::PROPVARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_UI_Shell_PropertiesSystem")))]
GetProperty: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetCLSID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, key: *const PropertiesSystem::PROPERTYKEY, pclsid: *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetCLSID: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub GetFileTime: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, key: *const PropertiesSystem::PROPERTYKEY, pft: *mut super::super::Foundation::FILETIME) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem")))]
GetFileTime: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetInt32: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, key: *const PropertiesSystem::PROPERTYKEY, pi: *mut i32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetInt32: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetString: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, key: *const PropertiesSystem::PROPERTYKEY, ppsz: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetString: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetUInt32: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, key: *const PropertiesSystem::PROPERTYKEY, pui: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetUInt32: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetUInt64: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, key: *const PropertiesSystem::PROPERTYKEY, pull: *mut u64) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetUInt64: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub GetBool: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, key: *const PropertiesSystem::PROPERTYKEY, pf: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_PropertiesSystem")))]
GetBool: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellItemArray(::windows::core::IUnknown);
impl IShellItemArray {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn BindToHandler<P0, T>(&self, pbc: P0, bhid: *const ::windows::core::GUID) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).BindToHandler)(::windows::core::Vtable::as_raw(self), pbc.into().abi(), bhid, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetPropertyStore<T>(&self, flags: PropertiesSystem::GETPROPERTYSTOREFLAGS) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPropertyStore)(::windows::core::Vtable::as_raw(self), flags, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetPropertyDescriptionList<T>(&self, keytype: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPropertyDescriptionList)(::windows::core::Vtable::as_raw(self), keytype, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"]
#[cfg(feature = "Win32_System_SystemServices")]
pub unsafe fn GetAttributes(&self, attribflags: SIATTRIBFLAGS, sfgaomask: super::super::System::SystemServices::SFGAO_FLAGS) -> ::windows::core::Result<super::super::System::SystemServices::SFGAO_FLAGS> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetAttributes)(::windows::core::Vtable::as_raw(self), attribflags, sfgaomask, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetCount(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCount)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetItemAt(&self, dwindex: u32) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItemAt)(::windows::core::Vtable::as_raw(self), dwindex, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn EnumItems(&self) -> ::windows::core::Result<IEnumShellItems> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).EnumItems)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IShellItemArray, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellItemArray {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellItemArray {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellItemArray {}
impl ::core::fmt::Debug for IShellItemArray {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellItemArray").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellItemArray {
type Vtable = IShellItemArray_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellItemArray {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb63ea76d_1f85_456f_a19c_48159efa858b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellItemArray_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub BindToHandler: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbc: *mut ::core::ffi::c_void, bhid: *const ::windows::core::GUID, riid: *const ::windows::core::GUID, ppvout: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
BindToHandler: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetPropertyStore: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, flags: PropertiesSystem::GETPROPERTYSTOREFLAGS, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetPropertyStore: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetPropertyDescriptionList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, keytype: *const PropertiesSystem::PROPERTYKEY, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetPropertyDescriptionList: usize,
#[cfg(feature = "Win32_System_SystemServices")]
pub GetAttributes: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, attribflags: SIATTRIBFLAGS, sfgaomask: super::super::System::SystemServices::SFGAO_FLAGS, psfgaoattribs: *mut super::super::System::SystemServices::SFGAO_FLAGS) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_SystemServices"))]
GetAttributes: usize,
pub GetCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwnumitems: *mut u32) -> ::windows::core::HRESULT,
pub GetItemAt: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwindex: u32, ppsi: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub EnumItems: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenumshellitems: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellItemFilter(::windows::core::IUnknown);
impl IShellItemFilter {
pub unsafe fn IncludeItem<P0>(&self, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).IncludeItem)(::windows::core::Vtable::as_raw(self), psi.into().abi()).ok()
}
pub unsafe fn GetEnumFlagsForItem<P0>(&self, psi: P0) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetEnumFlagsForItem)(::windows::core::Vtable::as_raw(self), psi.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IShellItemFilter, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellItemFilter {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellItemFilter {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellItemFilter {}
impl ::core::fmt::Debug for IShellItemFilter {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellItemFilter").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellItemFilter {
type Vtable = IShellItemFilter_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellItemFilter {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2659b475_eeb8_48b7_8f07_b378810f48cf);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellItemFilter_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub IncludeItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetEnumFlagsForItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, pgrfflags: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellItemImageFactory(::windows::core::IUnknown);
impl IShellItemImageFactory {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
pub unsafe fn GetImage(&self, size: super::super::Foundation::SIZE, flags: SIIGBF) -> ::windows::core::Result<super::super::Graphics::Gdi::HBITMAP> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetImage)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(size), flags, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IShellItemImageFactory, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellItemImageFactory {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellItemImageFactory {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellItemImageFactory {}
impl ::core::fmt::Debug for IShellItemImageFactory {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellItemImageFactory").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellItemImageFactory {
type Vtable = IShellItemImageFactory_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellItemImageFactory {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbcc18b79_ba16_442f_80c4_8a59c30c463b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellItemImageFactory_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
pub GetImage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, size: super::super::Foundation::SIZE, flags: SIIGBF, phbm: *mut super::super::Graphics::Gdi::HBITMAP) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi")))]
GetImage: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellItemResources(::windows::core::IUnknown);
impl IShellItemResources {
pub unsafe fn GetAttributes(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetAttributes)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetSize(&self) -> ::windows::core::Result<u64> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSize)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetTimes(&self, pftcreation: *mut super::super::Foundation::FILETIME, pftwrite: *mut super::super::Foundation::FILETIME, pftaccess: *mut super::super::Foundation::FILETIME) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetTimes)(::windows::core::Vtable::as_raw(self), pftcreation, pftwrite, pftaccess).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetTimes(&self, pftcreation: *const super::super::Foundation::FILETIME, pftwrite: *const super::super::Foundation::FILETIME, pftaccess: *const super::super::Foundation::FILETIME) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetTimes)(::windows::core::Vtable::as_raw(self), pftcreation, pftwrite, pftaccess).ok()
}
pub unsafe fn GetResourceDescription(&self, pcsir: *const SHELL_ITEM_RESOURCE) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetResourceDescription)(::windows::core::Vtable::as_raw(self), pcsir, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn EnumResources(&self) -> ::windows::core::Result<IEnumResources> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).EnumResources)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SupportsResource(&self, pcsir: *const SHELL_ITEM_RESOURCE) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SupportsResource)(::windows::core::Vtable::as_raw(self), pcsir).ok()
}
pub unsafe fn OpenResource<T>(&self, pcsir: *const SHELL_ITEM_RESOURCE) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).OpenResource)(::windows::core::Vtable::as_raw(self), pcsir, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn CreateResource<T>(&self, pcsir: *const SHELL_ITEM_RESOURCE) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CreateResource)(::windows::core::Vtable::as_raw(self), pcsir, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn MarkForDelete(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).MarkForDelete)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(IShellItemResources, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellItemResources {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellItemResources {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellItemResources {}
impl ::core::fmt::Debug for IShellItemResources {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellItemResources").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellItemResources {
type Vtable = IShellItemResources_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellItemResources {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xff5693be_2ce0_4d48_b5c5_40817d1acdb9);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellItemResources_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetAttributes: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwattributes: *mut u32) -> ::windows::core::HRESULT,
pub GetSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pullsize: *mut u64) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetTimes: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pftcreation: *mut super::super::Foundation::FILETIME, pftwrite: *mut super::super::Foundation::FILETIME, pftaccess: *mut super::super::Foundation::FILETIME) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetTimes: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetTimes: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pftcreation: *const super::super::Foundation::FILETIME, pftwrite: *const super::super::Foundation::FILETIME, pftaccess: *const super::super::Foundation::FILETIME) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetTimes: usize,
pub GetResourceDescription: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcsir: *const SHELL_ITEM_RESOURCE, ppszdescription: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub EnumResources: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenumr: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SupportsResource: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcsir: *const SHELL_ITEM_RESOURCE) -> ::windows::core::HRESULT,
pub OpenResource: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcsir: *const SHELL_ITEM_RESOURCE, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub CreateResource: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcsir: *const SHELL_ITEM_RESOURCE, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub MarkForDelete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellLibrary(::windows::core::IUnknown);
impl IShellLibrary {
pub unsafe fn LoadLibraryFromItem<P0>(&self, psilibrary: P0, grfmode: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).LoadLibraryFromItem)(::windows::core::Vtable::as_raw(self), psilibrary.into().abi(), grfmode).ok()
}
pub unsafe fn LoadLibraryFromKnownFolder(&self, kfidlibrary: *const ::windows::core::GUID, grfmode: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).LoadLibraryFromKnownFolder)(::windows::core::Vtable::as_raw(self), kfidlibrary, grfmode).ok()
}
pub unsafe fn AddFolder<P0>(&self, psilocation: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).AddFolder)(::windows::core::Vtable::as_raw(self), psilocation.into().abi()).ok()
}
pub unsafe fn RemoveFolder<P0>(&self, psilocation: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).RemoveFolder)(::windows::core::Vtable::as_raw(self), psilocation.into().abi()).ok()
}
pub unsafe fn GetFolders<T>(&self, lff: LIBRARYFOLDERFILTER) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFolders)(::windows::core::Vtable::as_raw(self), lff, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn ResolveFolder<P0, T>(&self, psifoldertoresolve: P0, dwtimeout: u32) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ResolveFolder)(::windows::core::Vtable::as_raw(self), psifoldertoresolve.into().abi(), dwtimeout, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetDefaultSaveFolder<T>(&self, dsft: DEFAULTSAVEFOLDERTYPE) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetDefaultSaveFolder)(::windows::core::Vtable::as_raw(self), dsft, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetDefaultSaveFolder<P0>(&self, dsft: DEFAULTSAVEFOLDERTYPE, psi: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).SetDefaultSaveFolder)(::windows::core::Vtable::as_raw(self), dsft, psi.into().abi()).ok()
}
pub unsafe fn GetOptions(&self) -> ::windows::core::Result<LIBRARYOPTIONFLAGS> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetOptions)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetOptions(&self, lofmask: LIBRARYOPTIONFLAGS, lofoptions: LIBRARYOPTIONFLAGS) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetOptions)(::windows::core::Vtable::as_raw(self), lofmask, lofoptions).ok()
}
pub unsafe fn GetFolderType(&self) -> ::windows::core::Result<::windows::core::GUID> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFolderType)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetFolderType(&self, ftid: *const ::windows::core::GUID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetFolderType)(::windows::core::Vtable::as_raw(self), ftid).ok()
}
pub unsafe fn GetIcon(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetIcon)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetIcon<P0>(&self, pszicon: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetIcon)(::windows::core::Vtable::as_raw(self), pszicon.into().abi()).ok()
}
pub unsafe fn Commit(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Commit)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Save<P0, P1>(&self, psifoldertosavein: P0, pszlibraryname: P1, lsf: LIBRARYSAVEFLAGS) -> ::windows::core::Result<IShellItem>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Save)(::windows::core::Vtable::as_raw(self), psifoldertosavein.into().abi(), pszlibraryname.into().abi(), lsf, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SaveInKnownFolder<P0>(&self, kfidtosavein: *const ::windows::core::GUID, pszlibraryname: P0, lsf: LIBRARYSAVEFLAGS) -> ::windows::core::Result<IShellItem>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).SaveInKnownFolder)(::windows::core::Vtable::as_raw(self), kfidtosavein, pszlibraryname.into().abi(), lsf, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IShellLibrary, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellLibrary {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellLibrary {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellLibrary {}
impl ::core::fmt::Debug for IShellLibrary {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellLibrary").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellLibrary {
type Vtable = IShellLibrary_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellLibrary {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x11a66efa_382e_451a_9234_1e0e12ef3085);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellLibrary_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub LoadLibraryFromItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psilibrary: *mut ::core::ffi::c_void, grfmode: u32) -> ::windows::core::HRESULT,
pub LoadLibraryFromKnownFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, kfidlibrary: *const ::windows::core::GUID, grfmode: u32) -> ::windows::core::HRESULT,
pub AddFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psilocation: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub RemoveFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psilocation: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetFolders: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lff: LIBRARYFOLDERFILTER, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub ResolveFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psifoldertoresolve: *mut ::core::ffi::c_void, dwtimeout: u32, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetDefaultSaveFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dsft: DEFAULTSAVEFOLDERTYPE, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetDefaultSaveFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dsft: DEFAULTSAVEFOLDERTYPE, psi: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plofoptions: *mut LIBRARYOPTIONFLAGS) -> ::windows::core::HRESULT,
pub SetOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lofmask: LIBRARYOPTIONFLAGS, lofoptions: LIBRARYOPTIONFLAGS) -> ::windows::core::HRESULT,
pub GetFolderType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pftid: *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
pub SetFolderType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ftid: *const ::windows::core::GUID) -> ::windows::core::HRESULT,
pub GetIcon: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszicon: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub SetIcon: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszicon: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub Commit: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Save: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psifoldertosavein: *mut ::core::ffi::c_void, pszlibraryname: ::windows::core::PCWSTR, lsf: LIBRARYSAVEFLAGS, ppsisavedto: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SaveInKnownFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, kfidtosavein: *const ::windows::core::GUID, pszlibraryname: ::windows::core::PCWSTR, lsf: LIBRARYSAVEFLAGS, ppsisavedto: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellLinkA(::windows::core::IUnknown);
impl IShellLinkA {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Storage_FileSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_FileSystem"))]
pub unsafe fn GetPath(&self, pszfile: &mut [u8], pfd: *mut super::super::Storage::FileSystem::WIN32_FIND_DATAA, fflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetPath)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszfile.as_ptr()), pszfile.len() as _, pfd, fflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetIDList(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetIDList)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SetIDList(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetIDList)(::windows::core::Vtable::as_raw(self), pidl).ok()
}
pub unsafe fn GetDescription(&self, pszname: &mut [u8]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetDescription)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszname.as_ptr()), pszname.len() as _).ok()
}
pub unsafe fn SetDescription<P0>(&self, pszname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
(::windows::core::Vtable::vtable(self).SetDescription)(::windows::core::Vtable::as_raw(self), pszname.into().abi()).ok()
}
pub unsafe fn GetWorkingDirectory(&self, pszdir: &mut [u8]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetWorkingDirectory)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszdir.as_ptr()), pszdir.len() as _).ok()
}
pub unsafe fn SetWorkingDirectory<P0>(&self, pszdir: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
(::windows::core::Vtable::vtable(self).SetWorkingDirectory)(::windows::core::Vtable::as_raw(self), pszdir.into().abi()).ok()
}
pub unsafe fn GetArguments(&self, pszargs: &mut [u8]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetArguments)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszargs.as_ptr()), pszargs.len() as _).ok()
}
pub unsafe fn SetArguments<P0>(&self, pszargs: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
(::windows::core::Vtable::vtable(self).SetArguments)(::windows::core::Vtable::as_raw(self), pszargs.into().abi()).ok()
}
pub unsafe fn GetHotkey(&self) -> ::windows::core::Result<u16> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetHotkey)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetHotkey(&self, whotkey: u16) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetHotkey)(::windows::core::Vtable::as_raw(self), whotkey).ok()
}
pub unsafe fn GetShowCmd(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetShowCmd)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetShowCmd(&self, ishowcmd: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetShowCmd)(::windows::core::Vtable::as_raw(self), ishowcmd).ok()
}
pub unsafe fn GetIconLocation(&self, psziconpath: &mut [u8], piicon: *mut i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetIconLocation)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(psziconpath.as_ptr()), psziconpath.len() as _, piicon).ok()
}
pub unsafe fn SetIconLocation<P0>(&self, psziconpath: P0, iicon: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
(::windows::core::Vtable::vtable(self).SetIconLocation)(::windows::core::Vtable::as_raw(self), psziconpath.into().abi(), iicon).ok()
}
pub unsafe fn SetRelativePath<P0>(&self, pszpathrel: P0, dwreserved: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
(::windows::core::Vtable::vtable(self).SetRelativePath)(::windows::core::Vtable::as_raw(self), pszpathrel.into().abi(), dwreserved).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Resolve<P0>(&self, hwnd: P0, fflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).Resolve)(::windows::core::Vtable::as_raw(self), hwnd.into(), fflags).ok()
}
pub unsafe fn SetPath<P0>(&self, pszfile: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
(::windows::core::Vtable::vtable(self).SetPath)(::windows::core::Vtable::as_raw(self), pszfile.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IShellLinkA, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellLinkA {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellLinkA {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellLinkA {}
impl ::core::fmt::Debug for IShellLinkA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellLinkA").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellLinkA {
type Vtable = IShellLinkA_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellLinkA {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214ee_0000_0000_c000_000000000046);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellLinkA_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_FileSystem"))]
pub GetPath: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszfile: ::windows::core::PSTR, cch: i32, pfd: *mut super::super::Storage::FileSystem::WIN32_FIND_DATAA, fflags: u32) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Storage_FileSystem")))]
GetPath: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetIDList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppidl: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetIDList: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub SetIDList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
SetIDList: usize,
pub GetDescription: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszname: ::windows::core::PSTR, cch: i32) -> ::windows::core::HRESULT,
pub SetDescription: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszname: ::windows::core::PCSTR) -> ::windows::core::HRESULT,
pub GetWorkingDirectory: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszdir: ::windows::core::PSTR, cch: i32) -> ::windows::core::HRESULT,
pub SetWorkingDirectory: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszdir: ::windows::core::PCSTR) -> ::windows::core::HRESULT,
pub GetArguments: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszargs: ::windows::core::PSTR, cch: i32) -> ::windows::core::HRESULT,
pub SetArguments: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszargs: ::windows::core::PCSTR) -> ::windows::core::HRESULT,
pub GetHotkey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwhotkey: *mut u16) -> ::windows::core::HRESULT,
pub SetHotkey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, whotkey: u16) -> ::windows::core::HRESULT,
pub GetShowCmd: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pishowcmd: *mut i32) -> ::windows::core::HRESULT,
pub SetShowCmd: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ishowcmd: i32) -> ::windows::core::HRESULT,
pub GetIconLocation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psziconpath: ::windows::core::PSTR, cch: i32, piicon: *mut i32) -> ::windows::core::HRESULT,
pub SetIconLocation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psziconpath: ::windows::core::PCSTR, iicon: i32) -> ::windows::core::HRESULT,
pub SetRelativePath: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszpathrel: ::windows::core::PCSTR, dwreserved: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub Resolve: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, fflags: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Resolve: usize,
pub SetPath: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszfile: ::windows::core::PCSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellLinkDataList(::windows::core::IUnknown);
impl IShellLinkDataList {
pub unsafe fn AddDataBlock(&self, pdatablock: *const ::core::ffi::c_void) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AddDataBlock)(::windows::core::Vtable::as_raw(self), pdatablock).ok()
}
pub unsafe fn CopyDataBlock(&self, dwsig: u32, ppdatablock: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).CopyDataBlock)(::windows::core::Vtable::as_raw(self), dwsig, ppdatablock).ok()
}
pub unsafe fn RemoveDataBlock(&self, dwsig: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RemoveDataBlock)(::windows::core::Vtable::as_raw(self), dwsig).ok()
}
pub unsafe fn GetFlags(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFlags)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetFlags(&self, dwflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetFlags)(::windows::core::Vtable::as_raw(self), dwflags).ok()
}
}
::windows::core::interface_hierarchy!(IShellLinkDataList, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellLinkDataList {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellLinkDataList {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellLinkDataList {}
impl ::core::fmt::Debug for IShellLinkDataList {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellLinkDataList").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellLinkDataList {
type Vtable = IShellLinkDataList_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellLinkDataList {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x45e2b4ae_b1c3_11d0_b92f_00a0c90312e1);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellLinkDataList_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub AddDataBlock: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdatablock: *const ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub CopyDataBlock: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwsig: u32, ppdatablock: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub RemoveDataBlock: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwsig: u32) -> ::windows::core::HRESULT,
pub GetFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwflags: *mut u32) -> ::windows::core::HRESULT,
pub SetFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellLinkDual(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellLinkDual {
pub unsafe fn Path(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Path)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetPath(&self, bs: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetPath)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bs)).ok()
}
pub unsafe fn Description(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Description)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetDescription(&self, bs: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetDescription)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bs)).ok()
}
pub unsafe fn WorkingDirectory(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).WorkingDirectory)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetWorkingDirectory(&self, bs: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetWorkingDirectory)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bs)).ok()
}
pub unsafe fn Arguments(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Arguments)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetArguments(&self, bs: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetArguments)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bs)).ok()
}
pub unsafe fn Hotkey(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Hotkey)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetHotkey(&self, ihk: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetHotkey)(::windows::core::Vtable::as_raw(self), ihk).ok()
}
pub unsafe fn ShowCommand(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ShowCommand)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetShowCommand(&self, ishowcommand: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetShowCommand)(::windows::core::Vtable::as_raw(self), ishowcommand).ok()
}
pub unsafe fn Resolve(&self, fflags: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Resolve)(::windows::core::Vtable::as_raw(self), fflags).ok()
}
pub unsafe fn GetIconLocation(&self, pbs: *mut ::windows::core::BSTR, piicon: *mut i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetIconLocation)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pbs), piicon).ok()
}
pub unsafe fn SetIconLocation(&self, bs: &::windows::core::BSTR, iicon: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetIconLocation)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bs), iicon).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Save(&self, vwhere: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Save)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vwhere)).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellLinkDual, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellLinkDual {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellLinkDual {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellLinkDual {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellLinkDual {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellLinkDual").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellLinkDual {
type Vtable = IShellLinkDual_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellLinkDual {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x88a05c00_f000_11ce_8350_444553540000);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellLinkDual_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
pub Path: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbs: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetPath: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bs: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Description: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbs: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetDescription: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bs: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub WorkingDirectory: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbs: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetWorkingDirectory: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bs: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Arguments: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbs: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetArguments: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bs: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Hotkey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pihk: *mut i32) -> ::windows::core::HRESULT,
pub SetHotkey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ihk: i32) -> ::windows::core::HRESULT,
pub ShowCommand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pishowcommand: *mut i32) -> ::windows::core::HRESULT,
pub SetShowCommand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ishowcommand: i32) -> ::windows::core::HRESULT,
pub Resolve: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fflags: i32) -> ::windows::core::HRESULT,
pub GetIconLocation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbs: *mut *mut ::core::ffi::c_void, piicon: *mut i32) -> ::windows::core::HRESULT,
pub SetIconLocation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bs: *mut ::core::ffi::c_void, iicon: i32) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub Save: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vwhere: super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
Save: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellLinkDual2(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellLinkDual2 {
pub unsafe fn Path(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Path)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetPath(&self, bs: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetPath)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bs)).ok()
}
pub unsafe fn Description(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Description)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetDescription(&self, bs: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetDescription)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bs)).ok()
}
pub unsafe fn WorkingDirectory(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.WorkingDirectory)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetWorkingDirectory(&self, bs: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetWorkingDirectory)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bs)).ok()
}
pub unsafe fn Arguments(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Arguments)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetArguments(&self, bs: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetArguments)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bs)).ok()
}
pub unsafe fn Hotkey(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Hotkey)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetHotkey(&self, ihk: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetHotkey)(::windows::core::Vtable::as_raw(self), ihk).ok()
}
pub unsafe fn ShowCommand(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.ShowCommand)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetShowCommand(&self, ishowcommand: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetShowCommand)(::windows::core::Vtable::as_raw(self), ishowcommand).ok()
}
pub unsafe fn Resolve(&self, fflags: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Resolve)(::windows::core::Vtable::as_raw(self), fflags).ok()
}
pub unsafe fn GetIconLocation(&self, pbs: *mut ::windows::core::BSTR, piicon: *mut i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetIconLocation)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pbs), piicon).ok()
}
pub unsafe fn SetIconLocation(&self, bs: &::windows::core::BSTR, iicon: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetIconLocation)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bs), iicon).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Save(&self, vwhere: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Save)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(vwhere)).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Target(&self) -> ::windows::core::Result<FolderItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Target)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellLinkDual2, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IShellLinkDual);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellLinkDual2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellLinkDual2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellLinkDual2 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellLinkDual2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellLinkDual2").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellLinkDual2 {
type Vtable = IShellLinkDual2_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellLinkDual2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x317ee249_f12e_11d2_b1e4_00c04f8eeb3e);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellLinkDual2_Vtbl {
pub base__: IShellLinkDual_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub Target: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppfi: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Target: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellLinkW(::windows::core::IUnknown);
impl IShellLinkW {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Storage_FileSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_FileSystem"))]
pub unsafe fn GetPath(&self, pszfile: &mut [u16], pfd: *mut super::super::Storage::FileSystem::WIN32_FIND_DATAW, fflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetPath)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszfile.as_ptr()), pszfile.len() as _, pfd, fflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetIDList(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetIDList)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SetIDList(&self, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetIDList)(::windows::core::Vtable::as_raw(self), pidl).ok()
}
pub unsafe fn GetDescription(&self, pszname: &mut [u16]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetDescription)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszname.as_ptr()), pszname.len() as _).ok()
}
pub unsafe fn SetDescription<P0>(&self, pszname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetDescription)(::windows::core::Vtable::as_raw(self), pszname.into().abi()).ok()
}
pub unsafe fn GetWorkingDirectory(&self, pszdir: &mut [u16]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetWorkingDirectory)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszdir.as_ptr()), pszdir.len() as _).ok()
}
pub unsafe fn SetWorkingDirectory<P0>(&self, pszdir: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetWorkingDirectory)(::windows::core::Vtable::as_raw(self), pszdir.into().abi()).ok()
}
pub unsafe fn GetArguments(&self, pszargs: &mut [u16]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetArguments)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pszargs.as_ptr()), pszargs.len() as _).ok()
}
pub unsafe fn SetArguments<P0>(&self, pszargs: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetArguments)(::windows::core::Vtable::as_raw(self), pszargs.into().abi()).ok()
}
pub unsafe fn GetHotkey(&self) -> ::windows::core::Result<u16> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetHotkey)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetHotkey(&self, whotkey: u16) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetHotkey)(::windows::core::Vtable::as_raw(self), whotkey).ok()
}
pub unsafe fn GetShowCmd(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetShowCmd)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetShowCmd(&self, ishowcmd: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetShowCmd)(::windows::core::Vtable::as_raw(self), ishowcmd).ok()
}
pub unsafe fn GetIconLocation(&self, psziconpath: &mut [u16], piicon: *mut i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetIconLocation)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(psziconpath.as_ptr()), psziconpath.len() as _, piicon).ok()
}
pub unsafe fn SetIconLocation<P0>(&self, psziconpath: P0, iicon: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetIconLocation)(::windows::core::Vtable::as_raw(self), psziconpath.into().abi(), iicon).ok()
}
pub unsafe fn SetRelativePath<P0>(&self, pszpathrel: P0, dwreserved: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetRelativePath)(::windows::core::Vtable::as_raw(self), pszpathrel.into().abi(), dwreserved).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Resolve<P0>(&self, hwnd: P0, fflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).Resolve)(::windows::core::Vtable::as_raw(self), hwnd.into(), fflags).ok()
}
pub unsafe fn SetPath<P0>(&self, pszfile: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetPath)(::windows::core::Vtable::as_raw(self), pszfile.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IShellLinkW, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellLinkW {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellLinkW {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellLinkW {}
impl ::core::fmt::Debug for IShellLinkW {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellLinkW").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellLinkW {
type Vtable = IShellLinkW_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellLinkW {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214f9_0000_0000_c000_000000000046);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellLinkW_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_FileSystem"))]
pub GetPath: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszfile: ::windows::core::PWSTR, cch: i32, pfd: *mut super::super::Storage::FileSystem::WIN32_FIND_DATAW, fflags: u32) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Storage_FileSystem")))]
GetPath: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetIDList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppidl: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetIDList: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub SetIDList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
SetIDList: usize,
pub GetDescription: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszname: ::windows::core::PWSTR, cch: i32) -> ::windows::core::HRESULT,
pub SetDescription: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub GetWorkingDirectory: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszdir: ::windows::core::PWSTR, cch: i32) -> ::windows::core::HRESULT,
pub SetWorkingDirectory: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszdir: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub GetArguments: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszargs: ::windows::core::PWSTR, cch: i32) -> ::windows::core::HRESULT,
pub SetArguments: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszargs: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub GetHotkey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwhotkey: *mut u16) -> ::windows::core::HRESULT,
pub SetHotkey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, whotkey: u16) -> ::windows::core::HRESULT,
pub GetShowCmd: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pishowcmd: *mut i32) -> ::windows::core::HRESULT,
pub SetShowCmd: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ishowcmd: i32) -> ::windows::core::HRESULT,
pub GetIconLocation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psziconpath: ::windows::core::PWSTR, cch: i32, piicon: *mut i32) -> ::windows::core::HRESULT,
pub SetIconLocation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psziconpath: ::windows::core::PCWSTR, iicon: i32) -> ::windows::core::HRESULT,
pub SetRelativePath: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszpathrel: ::windows::core::PCWSTR, dwreserved: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub Resolve: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, fflags: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Resolve: usize,
pub SetPath: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszfile: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellMenu(::windows::core::IUnknown);
impl IShellMenu {
pub unsafe fn Initialize<P0>(&self, psmc: P0, uid: u32, uidancestor: u32, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellMenuCallback>>,
{
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self), psmc.into().abi(), uid, uidancestor, dwflags).ok()
}
pub unsafe fn GetMenuInfo(&self, ppsmc: ::core::option::Option<*mut ::core::option::Option<IShellMenuCallback>>, puid: ::core::option::Option<*mut u32>, puidancestor: ::core::option::Option<*mut u32>, pdwflags: ::core::option::Option<*mut u32>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetMenuInfo)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(ppsmc.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(puid.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(puidancestor.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pdwflags.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_System_Registry\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Registry", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn SetShellFolder<P0, P1>(&self, psf: P0, pidlfolder: ::core::option::Option<*const Common::ITEMIDLIST>, hkey: P1, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
P1: ::std::convert::Into<super::super::System::Registry::HKEY>,
{
(::windows::core::Vtable::vtable(self).SetShellFolder)(::windows::core::Vtable::as_raw(self), psf.into().abi(), ::core::mem::transmute(pidlfolder.unwrap_or(::std::ptr::null())), hkey.into(), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetShellFolder(&self, pdwflags: *mut u32, ppidl: *mut *mut Common::ITEMIDLIST, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetShellFolder)(::windows::core::Vtable::as_raw(self), pdwflags, ppidl, riid, ppv).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn SetMenu<P0, P1>(&self, hmenu: P0, hwnd: P1, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::WindowsAndMessaging::HMENU>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).SetMenu)(::windows::core::Vtable::as_raw(self), hmenu.into(), hwnd.into(), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn GetMenu(&self, phmenu: ::core::option::Option<*mut super::WindowsAndMessaging::HMENU>, phwnd: ::core::option::Option<*mut super::super::Foundation::HWND>, pdwflags: ::core::option::Option<*mut u32>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetMenu)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(phmenu.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(phwnd.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pdwflags.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn InvalidateItem(&self, psmd: ::core::option::Option<*const SMDATA>, dwflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).InvalidateItem)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(psmd.unwrap_or(::std::ptr::null())), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn GetState(&self, psmd: *mut SMDATA) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetState)(::windows::core::Vtable::as_raw(self), psmd).ok()
}
pub unsafe fn SetMenuToolbar<P0>(&self, punk: P0, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).SetMenuToolbar)(::windows::core::Vtable::as_raw(self), punk.into().abi(), dwflags).ok()
}
}
::windows::core::interface_hierarchy!(IShellMenu, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellMenu {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellMenu {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellMenu {}
impl ::core::fmt::Debug for IShellMenu {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellMenu").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellMenu {
type Vtable = IShellMenu_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellMenu {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xee1f7637_e138_11d1_8379_00c04fd918d0);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellMenu_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psmc: *mut ::core::ffi::c_void, uid: u32, uidancestor: u32, dwflags: u32) -> ::windows::core::HRESULT,
pub GetMenuInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppsmc: *mut *mut ::core::ffi::c_void, puid: *mut u32, puidancestor: *mut u32, pdwflags: *mut u32) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_System_Registry", feature = "Win32_UI_Shell_Common"))]
pub SetShellFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psf: *mut ::core::ffi::c_void, pidlfolder: *const Common::ITEMIDLIST, hkey: super::super::System::Registry::HKEY, dwflags: u32) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_System_Registry", feature = "Win32_UI_Shell_Common")))]
SetShellFolder: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetShellFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwflags: *mut u32, ppidl: *mut *mut Common::ITEMIDLIST, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetShellFolder: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub SetMenu: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hmenu: super::WindowsAndMessaging::HMENU, hwnd: super::super::Foundation::HWND, dwflags: u32) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
SetMenu: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub GetMenu: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phmenu: *mut super::WindowsAndMessaging::HMENU, phwnd: *mut super::super::Foundation::HWND, pdwflags: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
GetMenu: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_WindowsAndMessaging"))]
pub InvalidateItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psmd: *const SMDATA, dwflags: u32) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_WindowsAndMessaging")))]
InvalidateItem: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_WindowsAndMessaging"))]
pub GetState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psmd: *mut SMDATA) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_WindowsAndMessaging")))]
GetState: usize,
pub SetMenuToolbar: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void, dwflags: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellMenuCallback(::windows::core::IUnknown);
impl IShellMenuCallback {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn CallbackSM<P0, P1>(&self, psmd: *mut SMDATA, umsg: u32, wparam: P0, lparam: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::WPARAM>,
P1: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).CallbackSM)(::windows::core::Vtable::as_raw(self), psmd, umsg, wparam.into(), lparam.into()).ok()
}
}
::windows::core::interface_hierarchy!(IShellMenuCallback, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellMenuCallback {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellMenuCallback {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellMenuCallback {}
impl ::core::fmt::Debug for IShellMenuCallback {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellMenuCallback").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellMenuCallback {
type Vtable = IShellMenuCallback_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellMenuCallback {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4ca300a1_9b8d_11d1_8b22_00c04fd918d0);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellMenuCallback_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_WindowsAndMessaging"))]
pub CallbackSM: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psmd: *mut SMDATA, umsg: u32, wparam: super::super::Foundation::WPARAM, lparam: super::super::Foundation::LPARAM) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_WindowsAndMessaging")))]
CallbackSM: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellNameSpace(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellNameSpace {
pub unsafe fn MoveSelectionUp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.MoveSelectionUp)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn MoveSelectionDown(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.MoveSelectionDown)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ResetSort(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.ResetSort)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn NewFolder(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.NewFolder)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Synchronize(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Synchronize)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Import(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Import)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Export(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Export)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn InvokeContextMenuCommand(&self, strcommand: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.InvokeContextMenuCommand)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(strcommand)).ok()
}
pub unsafe fn MoveSelectionTo(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.MoveSelectionTo)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SubscriptionsEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.SubscriptionsEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CreateSubscriptionForSelection(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.CreateSubscriptionForSelection)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn DeleteSubscriptionForSelection(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.DeleteSubscriptionForSelection)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetRoot(&self, bstrfullpath: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetRoot)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrfullpath)).ok()
}
pub unsafe fn EnumOptions(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).EnumOptions)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetEnumOptions(&self, lval: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetEnumOptions)(::windows::core::Vtable::as_raw(self), lval).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn SelectedItem(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).SelectedItem)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn SetSelectedItem<P0>(&self, pitem: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDispatch>>,
{
(::windows::core::Vtable::vtable(self).SetSelectedItem)(::windows::core::Vtable::as_raw(self), pitem.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Root(&self) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Root)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn SetRoot2(&self, var: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetRoot2)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(var)).ok()
}
pub unsafe fn Depth(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Depth)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetDepth(&self, idepth: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetDepth)(::windows::core::Vtable::as_raw(self), idepth).ok()
}
pub unsafe fn Mode(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Mode)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetMode(&self, umode: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetMode)(::windows::core::Vtable::as_raw(self), umode).ok()
}
pub unsafe fn Flags(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Flags)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetFlags(&self, dwflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetFlags)(::windows::core::Vtable::as_raw(self), dwflags).ok()
}
pub unsafe fn SetTVFlags(&self, dwflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetTVFlags)(::windows::core::Vtable::as_raw(self), dwflags).ok()
}
pub unsafe fn TVFlags(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).TVFlags)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Columns(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Columns)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetColumns(&self, bstrcolumns: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetColumns)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrcolumns)).ok()
}
pub unsafe fn CountViewTypes(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CountViewTypes)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetViewType(&self, itype: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetViewType)(::windows::core::Vtable::as_raw(self), itype).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn SelectedItems(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).SelectedItems)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Expand(&self, var: super::super::System::Com::VARIANT, idepth: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Expand)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(var), idepth).ok()
}
pub unsafe fn UnselectAll(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UnselectAll)(::windows::core::Vtable::as_raw(self)).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellNameSpace, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IShellFavoritesNameSpace);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellNameSpace {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellNameSpace {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellNameSpace {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellNameSpace {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellNameSpace").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellNameSpace {
type Vtable = IShellNameSpace_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellNameSpace {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe572d3c9_37be_4ae2_825d_d521763e3108);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellNameSpace_Vtbl {
pub base__: IShellFavoritesNameSpace_Vtbl,
pub EnumOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pgrfenumflags: *mut i32) -> ::windows::core::HRESULT,
pub SetEnumOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lval: i32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub SelectedItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pitem: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
SelectedItem: usize,
#[cfg(feature = "Win32_System_Com")]
pub SetSelectedItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pitem: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
SetSelectedItem: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub Root: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pvar: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
Root: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub SetRoot2: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, var: super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
SetRoot2: usize,
pub Depth: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidepth: *mut i32) -> ::windows::core::HRESULT,
pub SetDepth: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, idepth: i32) -> ::windows::core::HRESULT,
pub Mode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pumode: *mut u32) -> ::windows::core::HRESULT,
pub SetMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, umode: u32) -> ::windows::core::HRESULT,
pub Flags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwflags: *mut u32) -> ::windows::core::HRESULT,
pub SetFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32) -> ::windows::core::HRESULT,
pub SetTVFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: u32) -> ::windows::core::HRESULT,
pub TVFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwflags: *mut u32) -> ::windows::core::HRESULT,
pub Columns: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrcolumns: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetColumns: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrcolumns: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub CountViewTypes: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pitypes: *mut i32) -> ::windows::core::HRESULT,
pub SetViewType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, itype: i32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub SelectedItems: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppid: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
SelectedItems: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub Expand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, var: super::super::System::Com::VARIANT, idepth: i32) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
Expand: usize,
pub UnselectAll: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellPropSheetExt(::windows::core::IUnknown);
impl IShellPropSheetExt {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Controls\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
pub unsafe fn AddPages<P0>(&self, pfnaddpage: super::Controls::LPFNSVADDPROPSHEETPAGE, lparam: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).AddPages)(::windows::core::Vtable::as_raw(self), pfnaddpage, lparam.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Controls\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
pub unsafe fn ReplacePage<P0>(&self, upageid: u32, pfnreplacewith: super::Controls::LPFNSVADDPROPSHEETPAGE, lparam: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).ReplacePage)(::windows::core::Vtable::as_raw(self), upageid, pfnreplacewith, lparam.into()).ok()
}
}
::windows::core::interface_hierarchy!(IShellPropSheetExt, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellPropSheetExt {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellPropSheetExt {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellPropSheetExt {}
impl ::core::fmt::Debug for IShellPropSheetExt {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellPropSheetExt").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellPropSheetExt {
type Vtable = IShellPropSheetExt_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellPropSheetExt {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214e9_0000_0000_c000_000000000046);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellPropSheetExt_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
pub AddPages: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfnaddpage: super::Controls::LPFNSVADDPROPSHEETPAGE, lparam: super::super::Foundation::LPARAM) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls")))]
AddPages: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
pub ReplacePage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, upageid: u32, pfnreplacewith: super::Controls::LPFNSVADDPROPSHEETPAGE, lparam: super::super::Foundation::LPARAM) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls")))]
ReplacePage: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellRunDll(::windows::core::IUnknown);
impl IShellRunDll {
pub unsafe fn Run<P0>(&self, pszargs: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).Run)(::windows::core::Vtable::as_raw(self), pszargs.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IShellRunDll, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellRunDll {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellRunDll {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellRunDll {}
impl ::core::fmt::Debug for IShellRunDll {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellRunDll").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellRunDll {
type Vtable = IShellRunDll_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellRunDll {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfce4bde0_4b68_4b80_8e9c_7426315a7388);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellRunDll_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Run: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszargs: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellService(::windows::core::IUnknown);
impl IShellService {
pub unsafe fn SetOwner<P0>(&self, punkowner: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).SetOwner)(::windows::core::Vtable::as_raw(self), punkowner.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IShellService, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellService {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellService {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellService {}
impl ::core::fmt::Debug for IShellService {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellService").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellService {
type Vtable = IShellService_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellService {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5836fb00_8187_11cf_a12b_00aa004ae837);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellService_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetOwner: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punkowner: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IShellTaskScheduler(::windows::core::IUnknown);
impl IShellTaskScheduler {
pub unsafe fn AddTask<P0>(&self, prt: P0, rtoid: *const ::windows::core::GUID, lparam: usize, dwpriority: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IRunnableTask>>,
{
(::windows::core::Vtable::vtable(self).AddTask)(::windows::core::Vtable::as_raw(self), prt.into().abi(), rtoid, lparam, dwpriority).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RemoveTasks<P0>(&self, rtoid: *const ::windows::core::GUID, lparam: usize, bwaitifrunning: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).RemoveTasks)(::windows::core::Vtable::as_raw(self), rtoid, lparam, bwaitifrunning.into()).ok()
}
pub unsafe fn CountTasks(&self, rtoid: *const ::windows::core::GUID) -> u32 {
(::windows::core::Vtable::vtable(self).CountTasks)(::windows::core::Vtable::as_raw(self), rtoid)
}
pub unsafe fn Status(&self, dwreleasestatus: u32, dwthreadtimeout: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Status)(::windows::core::Vtable::as_raw(self), dwreleasestatus, dwthreadtimeout).ok()
}
}
::windows::core::interface_hierarchy!(IShellTaskScheduler, ::windows::core::IUnknown);
impl ::core::clone::Clone for IShellTaskScheduler {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IShellTaskScheduler {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IShellTaskScheduler {}
impl ::core::fmt::Debug for IShellTaskScheduler {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellTaskScheduler").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IShellTaskScheduler {
type Vtable = IShellTaskScheduler_Vtbl;
}
unsafe impl ::windows::core::Interface for IShellTaskScheduler {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6ccb7be0_6807_11d0_b810_00c04fd706ec);
}
#[repr(C)]
#[doc(hidden)]
pub struct IShellTaskScheduler_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub AddTask: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, prt: *mut ::core::ffi::c_void, rtoid: *const ::windows::core::GUID, lparam: usize, dwpriority: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub RemoveTasks: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rtoid: *const ::windows::core::GUID, lparam: usize, bwaitifrunning: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
RemoveTasks: usize,
pub CountTasks: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rtoid: *const ::windows::core::GUID) -> u32,
pub Status: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwreleasestatus: u32, dwthreadtimeout: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellUIHelper(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellUIHelper {
pub unsafe fn ResetFirstBootMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ResetFirstBootMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ResetSafeMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ResetSafeMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn RefreshOfflineDesktop(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RefreshOfflineDesktop)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddFavorite(&self, url: &::windows::core::BSTR, title: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AddFavorite)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute(title.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn AddChannel(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AddChannel)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddDesktopComponent(&self, url: &::windows::core::BSTR, r#type: &::windows::core::BSTR, left: ::core::option::Option<*const super::super::System::Com::VARIANT>, top: ::core::option::Option<*const super::super::System::Com::VARIANT>, width: ::core::option::Option<*const super::super::System::Com::VARIANT>, height: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AddDesktopComponent)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(r#type), ::core::mem::transmute(left.unwrap_or(::std::ptr::null())), ::core::mem::transmute(top.unwrap_or(::std::ptr::null())), ::core::mem::transmute(width.unwrap_or(::std::ptr::null())), ::core::mem::transmute(height.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSubscribed(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IsSubscribed)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn NavigateAndFind(&self, url: &::windows::core::BSTR, strquery: &::windows::core::BSTR, vartargetframe: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).NavigateAndFind)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(strquery), vartargetframe).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ImportExportFavorites<P0>(&self, fimport: P0, strimpexppath: &::windows::core::BSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).ImportExportFavorites)(::windows::core::Vtable::as_raw(self), fimport.into(), ::core::mem::transmute_copy(strimpexppath)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoCompleteSaveForm(&self, form: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AutoCompleteSaveForm)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(form.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoScan(&self, strsearch: &::windows::core::BSTR, strfailureurl: &::windows::core::BSTR, pvartargetframe: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AutoScan)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(strsearch), ::core::mem::transmute_copy(strfailureurl), ::core::mem::transmute(pvartargetframe.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoCompleteAttach(&self, reserved: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AutoCompleteAttach)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(reserved.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShowBrowserUI(&self, bstrname: &::windows::core::BSTR, pvarin: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ShowBrowserUI)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrname), pvarin, result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellUIHelper, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellUIHelper {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellUIHelper {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellUIHelper {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellUIHelper {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellUIHelper").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellUIHelper {
type Vtable = IShellUIHelper_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellUIHelper {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x729fe2f8_1ea8_11d1_8f85_00c04fc2fbe1);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellUIHelper_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
pub ResetFirstBootMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub ResetSafeMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub RefreshOfflineDesktop: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub AddFavorite: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, url: *mut ::core::ffi::c_void, title: *const super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
AddFavorite: usize,
pub AddChannel: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, url: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub AddDesktopComponent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, url: *mut ::core::ffi::c_void, r#type: *mut ::core::ffi::c_void, left: *const super::super::System::Com::VARIANT, top: *const super::super::System::Com::VARIANT, width: *const super::super::System::Com::VARIANT, height: *const super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
AddDesktopComponent: usize,
#[cfg(feature = "Win32_Foundation")]
pub IsSubscribed: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, url: *mut ::core::ffi::c_void, pbool: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
IsSubscribed: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub NavigateAndFind: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, url: *mut ::core::ffi::c_void, strquery: *mut ::core::ffi::c_void, vartargetframe: *const super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
NavigateAndFind: usize,
#[cfg(feature = "Win32_Foundation")]
pub ImportExportFavorites: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fimport: super::super::Foundation::VARIANT_BOOL, strimpexppath: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
ImportExportFavorites: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub AutoCompleteSaveForm: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, form: *const super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
AutoCompleteSaveForm: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub AutoScan: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, strsearch: *mut ::core::ffi::c_void, strfailureurl: *mut ::core::ffi::c_void, pvartargetframe: *const super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
AutoScan: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub AutoCompleteAttach: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, reserved: *const super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
AutoCompleteAttach: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub ShowBrowserUI: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrname: *mut ::core::ffi::c_void, pvarin: *const super::super::System::Com::VARIANT, pvarout: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
ShowBrowserUI: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellUIHelper2(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellUIHelper2 {
pub unsafe fn ResetFirstBootMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.ResetFirstBootMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ResetSafeMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.ResetSafeMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn RefreshOfflineDesktop(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.RefreshOfflineDesktop)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddFavorite(&self, url: &::windows::core::BSTR, title: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.AddFavorite)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute(title.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn AddChannel(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.AddChannel)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddDesktopComponent(&self, url: &::windows::core::BSTR, r#type: &::windows::core::BSTR, left: ::core::option::Option<*const super::super::System::Com::VARIANT>, top: ::core::option::Option<*const super::super::System::Com::VARIANT>, width: ::core::option::Option<*const super::super::System::Com::VARIANT>, height: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.AddDesktopComponent)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(r#type), ::core::mem::transmute(left.unwrap_or(::std::ptr::null())), ::core::mem::transmute(top.unwrap_or(::std::ptr::null())), ::core::mem::transmute(width.unwrap_or(::std::ptr::null())), ::core::mem::transmute(height.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSubscribed(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.IsSubscribed)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn NavigateAndFind(&self, url: &::windows::core::BSTR, strquery: &::windows::core::BSTR, vartargetframe: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.NavigateAndFind)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(strquery), vartargetframe).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ImportExportFavorites<P0>(&self, fimport: P0, strimpexppath: &::windows::core::BSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.ImportExportFavorites)(::windows::core::Vtable::as_raw(self), fimport.into(), ::core::mem::transmute_copy(strimpexppath)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoCompleteSaveForm(&self, form: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.AutoCompleteSaveForm)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(form.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoScan(&self, strsearch: &::windows::core::BSTR, strfailureurl: &::windows::core::BSTR, pvartargetframe: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.AutoScan)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(strsearch), ::core::mem::transmute_copy(strfailureurl), ::core::mem::transmute(pvartargetframe.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoCompleteAttach(&self, reserved: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.AutoCompleteAttach)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(reserved.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShowBrowserUI(&self, bstrname: &::windows::core::BSTR, pvarin: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.ShowBrowserUI)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrname), pvarin, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn AddSearchProvider(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AddSearchProvider)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
pub unsafe fn RunOnceShown(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RunOnceShown)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SkipRunOnce(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SkipRunOnce)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CustomizeSettings<P0, P1>(&self, fsqm: P0, fphishing: P1, bstrlocale: &::windows::core::BSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P1: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).CustomizeSettings)(::windows::core::Vtable::as_raw(self), fsqm.into(), fphishing.into(), ::core::mem::transmute_copy(bstrlocale)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SqmEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).SqmEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn PhishingEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).PhishingEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn BrandImageUri(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).BrandImageUri)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SkipTabsWelcome(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SkipTabsWelcome)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn DiagnoseConnection(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).DiagnoseConnection)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CustomizeClearType<P0>(&self, fset: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).CustomizeClearType)(::windows::core::Vtable::as_raw(self), fset.into()).ok()
}
pub unsafe fn IsSearchProviderInstalled(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IsSearchProviderInstalled)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSearchMigrated(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IsSearchMigrated)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn DefaultSearchProvider(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).DefaultSearchProvider)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RunOnceRequiredSettingsComplete<P0>(&self, fcomplete: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).RunOnceRequiredSettingsComplete)(::windows::core::Vtable::as_raw(self), fcomplete.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RunOnceHasShown(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).RunOnceHasShown)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SearchGuideUrl(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).SearchGuideUrl)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellUIHelper2, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IShellUIHelper);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellUIHelper2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellUIHelper2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellUIHelper2 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellUIHelper2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellUIHelper2").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellUIHelper2 {
type Vtable = IShellUIHelper2_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellUIHelper2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa7fe6eda_1932_4281_b881_87b31b8bc52c);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellUIHelper2_Vtbl {
pub base__: IShellUIHelper_Vtbl,
pub AddSearchProvider: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, url: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub RunOnceShown: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SkipRunOnce: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub CustomizeSettings: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fsqm: super::super::Foundation::VARIANT_BOOL, fphishing: super::super::Foundation::VARIANT_BOOL, bstrlocale: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
CustomizeSettings: usize,
#[cfg(feature = "Win32_Foundation")]
pub SqmEnabled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfenabled: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SqmEnabled: usize,
#[cfg(feature = "Win32_Foundation")]
pub PhishingEnabled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfenabled: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
PhishingEnabled: usize,
pub BrandImageUri: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstruri: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SkipTabsWelcome: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub DiagnoseConnection: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub CustomizeClearType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fset: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
CustomizeClearType: usize,
pub IsSearchProviderInstalled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, url: *mut ::core::ffi::c_void, pdwresult: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub IsSearchMigrated: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfmigrated: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
IsSearchMigrated: usize,
pub DefaultSearchProvider: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstrname: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub RunOnceRequiredSettingsComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fcomplete: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
RunOnceRequiredSettingsComplete: usize,
#[cfg(feature = "Win32_Foundation")]
pub RunOnceHasShown: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfshown: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
RunOnceHasShown: usize,
pub SearchGuideUrl: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstrurl: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellUIHelper3(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellUIHelper3 {
pub unsafe fn ResetFirstBootMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.ResetFirstBootMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ResetSafeMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.ResetSafeMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn RefreshOfflineDesktop(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.RefreshOfflineDesktop)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddFavorite(&self, url: &::windows::core::BSTR, title: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.AddFavorite)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute(title.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn AddChannel(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.AddChannel)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddDesktopComponent(&self, url: &::windows::core::BSTR, r#type: &::windows::core::BSTR, left: ::core::option::Option<*const super::super::System::Com::VARIANT>, top: ::core::option::Option<*const super::super::System::Com::VARIANT>, width: ::core::option::Option<*const super::super::System::Com::VARIANT>, height: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.AddDesktopComponent)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(r#type), ::core::mem::transmute(left.unwrap_or(::std::ptr::null())), ::core::mem::transmute(top.unwrap_or(::std::ptr::null())), ::core::mem::transmute(width.unwrap_or(::std::ptr::null())), ::core::mem::transmute(height.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSubscribed(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.IsSubscribed)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn NavigateAndFind(&self, url: &::windows::core::BSTR, strquery: &::windows::core::BSTR, vartargetframe: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.NavigateAndFind)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(strquery), vartargetframe).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ImportExportFavorites<P0>(&self, fimport: P0, strimpexppath: &::windows::core::BSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.ImportExportFavorites)(::windows::core::Vtable::as_raw(self), fimport.into(), ::core::mem::transmute_copy(strimpexppath)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoCompleteSaveForm(&self, form: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.AutoCompleteSaveForm)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(form.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoScan(&self, strsearch: &::windows::core::BSTR, strfailureurl: &::windows::core::BSTR, pvartargetframe: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.AutoScan)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(strsearch), ::core::mem::transmute_copy(strfailureurl), ::core::mem::transmute(pvartargetframe.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoCompleteAttach(&self, reserved: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.AutoCompleteAttach)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(reserved.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShowBrowserUI(&self, bstrname: &::windows::core::BSTR, pvarin: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.ShowBrowserUI)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrname), pvarin, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn AddSearchProvider(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.AddSearchProvider)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
pub unsafe fn RunOnceShown(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.RunOnceShown)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SkipRunOnce(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SkipRunOnce)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CustomizeSettings<P0, P1>(&self, fsqm: P0, fphishing: P1, bstrlocale: &::windows::core::BSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P1: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.CustomizeSettings)(::windows::core::Vtable::as_raw(self), fsqm.into(), fphishing.into(), ::core::mem::transmute_copy(bstrlocale)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SqmEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.SqmEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn PhishingEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.PhishingEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn BrandImageUri(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.BrandImageUri)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SkipTabsWelcome(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SkipTabsWelcome)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn DiagnoseConnection(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.DiagnoseConnection)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CustomizeClearType<P0>(&self, fset: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.CustomizeClearType)(::windows::core::Vtable::as_raw(self), fset.into()).ok()
}
pub unsafe fn IsSearchProviderInstalled(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.IsSearchProviderInstalled)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSearchMigrated(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.IsSearchMigrated)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn DefaultSearchProvider(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.DefaultSearchProvider)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RunOnceRequiredSettingsComplete<P0>(&self, fcomplete: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.RunOnceRequiredSettingsComplete)(::windows::core::Vtable::as_raw(self), fcomplete.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RunOnceHasShown(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.RunOnceHasShown)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SearchGuideUrl(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.SearchGuideUrl)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn AddService(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AddService)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
pub unsafe fn IsServiceInstalled(&self, url: &::windows::core::BSTR, verb: &::windows::core::BSTR) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IsServiceInstalled)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(verb), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn InPrivateFilteringEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).InPrivateFilteringEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddToFavoritesBar(&self, url: &::windows::core::BSTR, title: &::windows::core::BSTR, r#type: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AddToFavoritesBar)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(title), r#type).ok()
}
pub unsafe fn BuildNewTabPage(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).BuildNewTabPage)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetRecentlyClosedVisible<P0>(&self, fvisible: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).SetRecentlyClosedVisible)(::windows::core::Vtable::as_raw(self), fvisible.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetActivitiesVisible<P0>(&self, fvisible: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).SetActivitiesVisible)(::windows::core::Vtable::as_raw(self), fvisible.into()).ok()
}
pub unsafe fn ContentDiscoveryReset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ContentDiscoveryReset)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSuggestedSitesEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IsSuggestedSitesEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn EnableSuggestedSites<P0>(&self, fenable: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).EnableSuggestedSites)(::windows::core::Vtable::as_raw(self), fenable.into()).ok()
}
pub unsafe fn NavigateToSuggestedSites(&self, bstrrelativeurl: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).NavigateToSuggestedSites)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrrelativeurl)).ok()
}
pub unsafe fn ShowTabsHelp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ShowTabsHelp)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ShowInPrivateHelp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ShowInPrivateHelp)(::windows::core::Vtable::as_raw(self)).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellUIHelper3, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IShellUIHelper, IShellUIHelper2);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellUIHelper3 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellUIHelper3 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellUIHelper3 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellUIHelper3 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellUIHelper3").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellUIHelper3 {
type Vtable = IShellUIHelper3_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellUIHelper3 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x528df2ec_d419_40bc_9b6d_dcdbf9c1b25d);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellUIHelper3_Vtbl {
pub base__: IShellUIHelper2_Vtbl,
pub AddService: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, url: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub IsServiceInstalled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, url: *mut ::core::ffi::c_void, verb: *mut ::core::ffi::c_void, pdwresult: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub InPrivateFilteringEnabled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfenabled: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
InPrivateFilteringEnabled: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub AddToFavoritesBar: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, url: *mut ::core::ffi::c_void, title: *mut ::core::ffi::c_void, r#type: *const super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
AddToFavoritesBar: usize,
pub BuildNewTabPage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub SetRecentlyClosedVisible: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fvisible: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetRecentlyClosedVisible: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetActivitiesVisible: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fvisible: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetActivitiesVisible: usize,
pub ContentDiscoveryReset: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub IsSuggestedSitesEnabled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfenabled: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
IsSuggestedSitesEnabled: usize,
#[cfg(feature = "Win32_Foundation")]
pub EnableSuggestedSites: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fenable: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
EnableSuggestedSites: usize,
pub NavigateToSuggestedSites: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrrelativeurl: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub ShowTabsHelp: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub ShowInPrivateHelp: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellUIHelper4(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellUIHelper4 {
pub unsafe fn ResetFirstBootMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.ResetFirstBootMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ResetSafeMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.ResetSafeMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn RefreshOfflineDesktop(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.RefreshOfflineDesktop)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddFavorite(&self, url: &::windows::core::BSTR, title: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.AddFavorite)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute(title.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn AddChannel(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.AddChannel)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddDesktopComponent(&self, url: &::windows::core::BSTR, r#type: &::windows::core::BSTR, left: ::core::option::Option<*const super::super::System::Com::VARIANT>, top: ::core::option::Option<*const super::super::System::Com::VARIANT>, width: ::core::option::Option<*const super::super::System::Com::VARIANT>, height: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.AddDesktopComponent)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(r#type), ::core::mem::transmute(left.unwrap_or(::std::ptr::null())), ::core::mem::transmute(top.unwrap_or(::std::ptr::null())), ::core::mem::transmute(width.unwrap_or(::std::ptr::null())), ::core::mem::transmute(height.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSubscribed(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.IsSubscribed)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn NavigateAndFind(&self, url: &::windows::core::BSTR, strquery: &::windows::core::BSTR, vartargetframe: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.NavigateAndFind)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(strquery), vartargetframe).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ImportExportFavorites<P0>(&self, fimport: P0, strimpexppath: &::windows::core::BSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.ImportExportFavorites)(::windows::core::Vtable::as_raw(self), fimport.into(), ::core::mem::transmute_copy(strimpexppath)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoCompleteSaveForm(&self, form: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.AutoCompleteSaveForm)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(form.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoScan(&self, strsearch: &::windows::core::BSTR, strfailureurl: &::windows::core::BSTR, pvartargetframe: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.AutoScan)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(strsearch), ::core::mem::transmute_copy(strfailureurl), ::core::mem::transmute(pvartargetframe.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoCompleteAttach(&self, reserved: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.AutoCompleteAttach)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(reserved.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShowBrowserUI(&self, bstrname: &::windows::core::BSTR, pvarin: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.ShowBrowserUI)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrname), pvarin, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn AddSearchProvider(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.AddSearchProvider)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
pub unsafe fn RunOnceShown(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.RunOnceShown)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SkipRunOnce(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.SkipRunOnce)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CustomizeSettings<P0, P1>(&self, fsqm: P0, fphishing: P1, bstrlocale: &::windows::core::BSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P1: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.CustomizeSettings)(::windows::core::Vtable::as_raw(self), fsqm.into(), fphishing.into(), ::core::mem::transmute_copy(bstrlocale)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SqmEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.SqmEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn PhishingEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.PhishingEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn BrandImageUri(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.BrandImageUri)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SkipTabsWelcome(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.SkipTabsWelcome)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn DiagnoseConnection(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.DiagnoseConnection)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CustomizeClearType<P0>(&self, fset: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.CustomizeClearType)(::windows::core::Vtable::as_raw(self), fset.into()).ok()
}
pub unsafe fn IsSearchProviderInstalled(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.IsSearchProviderInstalled)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSearchMigrated(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.IsSearchMigrated)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn DefaultSearchProvider(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.DefaultSearchProvider)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RunOnceRequiredSettingsComplete<P0>(&self, fcomplete: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.RunOnceRequiredSettingsComplete)(::windows::core::Vtable::as_raw(self), fcomplete.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RunOnceHasShown(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.RunOnceHasShown)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SearchGuideUrl(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.SearchGuideUrl)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn AddService(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.AddService)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
pub unsafe fn IsServiceInstalled(&self, url: &::windows::core::BSTR, verb: &::windows::core::BSTR) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.IsServiceInstalled)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(verb), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn InPrivateFilteringEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.InPrivateFilteringEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddToFavoritesBar(&self, url: &::windows::core::BSTR, title: &::windows::core::BSTR, r#type: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.AddToFavoritesBar)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(title), r#type).ok()
}
pub unsafe fn BuildNewTabPage(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.BuildNewTabPage)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetRecentlyClosedVisible<P0>(&self, fvisible: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.SetRecentlyClosedVisible)(::windows::core::Vtable::as_raw(self), fvisible.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetActivitiesVisible<P0>(&self, fvisible: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.SetActivitiesVisible)(::windows::core::Vtable::as_raw(self), fvisible.into()).ok()
}
pub unsafe fn ContentDiscoveryReset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.ContentDiscoveryReset)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSuggestedSitesEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.IsSuggestedSitesEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn EnableSuggestedSites<P0>(&self, fenable: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.EnableSuggestedSites)(::windows::core::Vtable::as_raw(self), fenable.into()).ok()
}
pub unsafe fn NavigateToSuggestedSites(&self, bstrrelativeurl: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.NavigateToSuggestedSites)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrrelativeurl)).ok()
}
pub unsafe fn ShowTabsHelp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.ShowTabsHelp)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ShowInPrivateHelp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.ShowInPrivateHelp)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msIsSiteMode(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).msIsSiteMode)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn msSiteModeShowThumbBar(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msSiteModeShowThumbBar)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeAddThumbBarButton(&self, bstriconurl: &::windows::core::BSTR, bstrtooltip: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).msSiteModeAddThumbBarButton)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstriconurl), ::core::mem::transmute_copy(bstrtooltip), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeUpdateThumbBarButton<P0, P1>(&self, buttonid: super::super::System::Com::VARIANT, fenabled: P0, fvisible: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P1: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).msSiteModeUpdateThumbBarButton)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(buttonid), fenabled.into(), fvisible.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeSetIconOverlay(&self, iconurl: &::windows::core::BSTR, pvardescription: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msSiteModeSetIconOverlay)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(iconurl), pvardescription).ok()
}
pub unsafe fn msSiteModeClearIconOverlay(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msSiteModeClearIconOverlay)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msAddSiteMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msAddSiteMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeCreateJumpList(&self, bstrheader: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msSiteModeCreateJumpList)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrheader)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeAddJumpListItem(&self, bstrname: &::windows::core::BSTR, bstractionuri: &::windows::core::BSTR, bstriconuri: &::windows::core::BSTR, pvarwindowtype: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msSiteModeAddJumpListItem)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrname), ::core::mem::transmute_copy(bstractionuri), ::core::mem::transmute_copy(bstriconuri), pvarwindowtype).ok()
}
pub unsafe fn msSiteModeClearJumpList(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msSiteModeClearJumpList)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeShowJumpList(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msSiteModeShowJumpList)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeAddButtonStyle(&self, uibuttonid: super::super::System::Com::VARIANT, bstriconurl: &::windows::core::BSTR, bstrtooltip: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).msSiteModeAddButtonStyle)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(uibuttonid), ::core::mem::transmute_copy(bstriconurl), ::core::mem::transmute_copy(bstrtooltip), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeShowButtonStyle(&self, uibuttonid: super::super::System::Com::VARIANT, uistyleid: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msSiteModeShowButtonStyle)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(uibuttonid), ::core::mem::transmute(uistyleid)).ok()
}
pub unsafe fn msSiteModeActivate(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msSiteModeActivate)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msIsSiteModeFirstRun<P0>(&self, fpreservestate: P0) -> ::windows::core::Result<super::super::System::Com::VARIANT>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).msIsSiteModeFirstRun)(::windows::core::Vtable::as_raw(self), fpreservestate.into(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn msAddTrackingProtectionList(&self, url: &::windows::core::BSTR, bstrfiltername: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msAddTrackingProtectionList)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(bstrfiltername)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msTrackingProtectionEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).msTrackingProtectionEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msActiveXFilteringEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).msActiveXFilteringEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellUIHelper4, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IShellUIHelper, IShellUIHelper2, IShellUIHelper3);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellUIHelper4 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellUIHelper4 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellUIHelper4 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellUIHelper4 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellUIHelper4").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellUIHelper4 {
type Vtable = IShellUIHelper4_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellUIHelper4 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb36e6a53_8073_499e_824c_d776330a333e);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellUIHelper4_Vtbl {
pub base__: IShellUIHelper3_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub msIsSiteMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfsitemode: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
msIsSiteMode: usize,
pub msSiteModeShowThumbBar: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub msSiteModeAddThumbBarButton: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstriconurl: *mut ::core::ffi::c_void, bstrtooltip: *mut ::core::ffi::c_void, pvarbuttonid: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
msSiteModeAddThumbBarButton: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub msSiteModeUpdateThumbBarButton: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, buttonid: super::super::System::Com::VARIANT, fenabled: super::super::Foundation::VARIANT_BOOL, fvisible: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
msSiteModeUpdateThumbBarButton: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub msSiteModeSetIconOverlay: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, iconurl: *mut ::core::ffi::c_void, pvardescription: *const super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
msSiteModeSetIconOverlay: usize,
pub msSiteModeClearIconOverlay: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub msAddSiteMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub msSiteModeCreateJumpList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrheader: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub msSiteModeAddJumpListItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrname: *mut ::core::ffi::c_void, bstractionuri: *mut ::core::ffi::c_void, bstriconuri: *mut ::core::ffi::c_void, pvarwindowtype: *const super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
msSiteModeAddJumpListItem: usize,
pub msSiteModeClearJumpList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub msSiteModeShowJumpList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub msSiteModeAddButtonStyle: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uibuttonid: super::super::System::Com::VARIANT, bstriconurl: *mut ::core::ffi::c_void, bstrtooltip: *mut ::core::ffi::c_void, pvarstyleid: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
msSiteModeAddButtonStyle: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub msSiteModeShowButtonStyle: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uibuttonid: super::super::System::Com::VARIANT, uistyleid: super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
msSiteModeShowButtonStyle: usize,
pub msSiteModeActivate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub msIsSiteModeFirstRun: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fpreservestate: super::super::Foundation::VARIANT_BOOL, puifirstrun: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
msIsSiteModeFirstRun: usize,
pub msAddTrackingProtectionList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, url: *mut ::core::ffi::c_void, bstrfiltername: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub msTrackingProtectionEnabled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfenabled: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
msTrackingProtectionEnabled: usize,
#[cfg(feature = "Win32_Foundation")]
pub msActiveXFilteringEnabled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfenabled: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
msActiveXFilteringEnabled: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellUIHelper5(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellUIHelper5 {
pub unsafe fn ResetFirstBootMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.ResetFirstBootMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ResetSafeMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.ResetSafeMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn RefreshOfflineDesktop(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.RefreshOfflineDesktop)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddFavorite(&self, url: &::windows::core::BSTR, title: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.AddFavorite)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute(title.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn AddChannel(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.AddChannel)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddDesktopComponent(&self, url: &::windows::core::BSTR, r#type: &::windows::core::BSTR, left: ::core::option::Option<*const super::super::System::Com::VARIANT>, top: ::core::option::Option<*const super::super::System::Com::VARIANT>, width: ::core::option::Option<*const super::super::System::Com::VARIANT>, height: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.AddDesktopComponent)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(r#type), ::core::mem::transmute(left.unwrap_or(::std::ptr::null())), ::core::mem::transmute(top.unwrap_or(::std::ptr::null())), ::core::mem::transmute(width.unwrap_or(::std::ptr::null())), ::core::mem::transmute(height.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSubscribed(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.IsSubscribed)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn NavigateAndFind(&self, url: &::windows::core::BSTR, strquery: &::windows::core::BSTR, vartargetframe: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.NavigateAndFind)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(strquery), vartargetframe).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ImportExportFavorites<P0>(&self, fimport: P0, strimpexppath: &::windows::core::BSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.ImportExportFavorites)(::windows::core::Vtable::as_raw(self), fimport.into(), ::core::mem::transmute_copy(strimpexppath)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoCompleteSaveForm(&self, form: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.AutoCompleteSaveForm)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(form.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoScan(&self, strsearch: &::windows::core::BSTR, strfailureurl: &::windows::core::BSTR, pvartargetframe: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.AutoScan)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(strsearch), ::core::mem::transmute_copy(strfailureurl), ::core::mem::transmute(pvartargetframe.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoCompleteAttach(&self, reserved: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.AutoCompleteAttach)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(reserved.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShowBrowserUI(&self, bstrname: &::windows::core::BSTR, pvarin: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.ShowBrowserUI)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrname), pvarin, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn AddSearchProvider(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.AddSearchProvider)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
pub unsafe fn RunOnceShown(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.RunOnceShown)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SkipRunOnce(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.SkipRunOnce)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CustomizeSettings<P0, P1>(&self, fsqm: P0, fphishing: P1, bstrlocale: &::windows::core::BSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P1: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.CustomizeSettings)(::windows::core::Vtable::as_raw(self), fsqm.into(), fphishing.into(), ::core::mem::transmute_copy(bstrlocale)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SqmEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.SqmEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn PhishingEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.PhishingEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn BrandImageUri(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.BrandImageUri)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SkipTabsWelcome(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.SkipTabsWelcome)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn DiagnoseConnection(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.DiagnoseConnection)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CustomizeClearType<P0>(&self, fset: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.CustomizeClearType)(::windows::core::Vtable::as_raw(self), fset.into()).ok()
}
pub unsafe fn IsSearchProviderInstalled(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.IsSearchProviderInstalled)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSearchMigrated(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.IsSearchMigrated)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn DefaultSearchProvider(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.DefaultSearchProvider)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RunOnceRequiredSettingsComplete<P0>(&self, fcomplete: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.RunOnceRequiredSettingsComplete)(::windows::core::Vtable::as_raw(self), fcomplete.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RunOnceHasShown(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.RunOnceHasShown)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SearchGuideUrl(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.SearchGuideUrl)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn AddService(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.AddService)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
pub unsafe fn IsServiceInstalled(&self, url: &::windows::core::BSTR, verb: &::windows::core::BSTR) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.IsServiceInstalled)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(verb), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn InPrivateFilteringEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.InPrivateFilteringEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddToFavoritesBar(&self, url: &::windows::core::BSTR, title: &::windows::core::BSTR, r#type: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.AddToFavoritesBar)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(title), r#type).ok()
}
pub unsafe fn BuildNewTabPage(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.BuildNewTabPage)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetRecentlyClosedVisible<P0>(&self, fvisible: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.SetRecentlyClosedVisible)(::windows::core::Vtable::as_raw(self), fvisible.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetActivitiesVisible<P0>(&self, fvisible: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.SetActivitiesVisible)(::windows::core::Vtable::as_raw(self), fvisible.into()).ok()
}
pub unsafe fn ContentDiscoveryReset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.ContentDiscoveryReset)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSuggestedSitesEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.IsSuggestedSitesEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn EnableSuggestedSites<P0>(&self, fenable: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.EnableSuggestedSites)(::windows::core::Vtable::as_raw(self), fenable.into()).ok()
}
pub unsafe fn NavigateToSuggestedSites(&self, bstrrelativeurl: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.NavigateToSuggestedSites)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrrelativeurl)).ok()
}
pub unsafe fn ShowTabsHelp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.ShowTabsHelp)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ShowInPrivateHelp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.ShowInPrivateHelp)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msIsSiteMode(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.msIsSiteMode)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn msSiteModeShowThumbBar(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msSiteModeShowThumbBar)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeAddThumbBarButton(&self, bstriconurl: &::windows::core::BSTR, bstrtooltip: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.msSiteModeAddThumbBarButton)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstriconurl), ::core::mem::transmute_copy(bstrtooltip), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeUpdateThumbBarButton<P0, P1>(&self, buttonid: super::super::System::Com::VARIANT, fenabled: P0, fvisible: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P1: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.msSiteModeUpdateThumbBarButton)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(buttonid), fenabled.into(), fvisible.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeSetIconOverlay(&self, iconurl: &::windows::core::BSTR, pvardescription: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msSiteModeSetIconOverlay)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(iconurl), pvardescription).ok()
}
pub unsafe fn msSiteModeClearIconOverlay(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msSiteModeClearIconOverlay)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msAddSiteMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msAddSiteMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeCreateJumpList(&self, bstrheader: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msSiteModeCreateJumpList)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrheader)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeAddJumpListItem(&self, bstrname: &::windows::core::BSTR, bstractionuri: &::windows::core::BSTR, bstriconuri: &::windows::core::BSTR, pvarwindowtype: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msSiteModeAddJumpListItem)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrname), ::core::mem::transmute_copy(bstractionuri), ::core::mem::transmute_copy(bstriconuri), pvarwindowtype).ok()
}
pub unsafe fn msSiteModeClearJumpList(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msSiteModeClearJumpList)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeShowJumpList(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msSiteModeShowJumpList)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeAddButtonStyle(&self, uibuttonid: super::super::System::Com::VARIANT, bstriconurl: &::windows::core::BSTR, bstrtooltip: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.msSiteModeAddButtonStyle)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(uibuttonid), ::core::mem::transmute_copy(bstriconurl), ::core::mem::transmute_copy(bstrtooltip), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeShowButtonStyle(&self, uibuttonid: super::super::System::Com::VARIANT, uistyleid: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msSiteModeShowButtonStyle)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(uibuttonid), ::core::mem::transmute(uistyleid)).ok()
}
pub unsafe fn msSiteModeActivate(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msSiteModeActivate)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msIsSiteModeFirstRun<P0>(&self, fpreservestate: P0) -> ::windows::core::Result<super::super::System::Com::VARIANT>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.msIsSiteModeFirstRun)(::windows::core::Vtable::as_raw(self), fpreservestate.into(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn msAddTrackingProtectionList(&self, url: &::windows::core::BSTR, bstrfiltername: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msAddTrackingProtectionList)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(bstrfiltername)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msTrackingProtectionEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.msTrackingProtectionEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msActiveXFilteringEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.msActiveXFilteringEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msProvisionNetworks(&self, bstrprovisioningxml: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).msProvisionNetworks)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrprovisioningxml), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn msReportSafeUrl(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msReportSafeUrl)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeRefreshBadge(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msSiteModeRefreshBadge)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeClearBadge(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msSiteModeClearBadge)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msDiagnoseConnectionUILess(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msDiagnoseConnectionUILess)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msLaunchNetworkClientHelp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msLaunchNetworkClientHelp)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msChangeDefaultBrowser<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).msChangeDefaultBrowser)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellUIHelper5, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IShellUIHelper, IShellUIHelper2, IShellUIHelper3, IShellUIHelper4);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellUIHelper5 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellUIHelper5 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellUIHelper5 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellUIHelper5 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellUIHelper5").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellUIHelper5 {
type Vtable = IShellUIHelper5_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellUIHelper5 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa2a08b09_103d_4d3f_b91c_ea455ca82efa);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellUIHelper5_Vtbl {
pub base__: IShellUIHelper4_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub msProvisionNetworks: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrprovisioningxml: *mut ::core::ffi::c_void, puiresult: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
msProvisionNetworks: usize,
pub msReportSafeUrl: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub msSiteModeRefreshBadge: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub msSiteModeClearBadge: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub msDiagnoseConnectionUILess: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub msLaunchNetworkClientHelp: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub msChangeDefaultBrowser: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fchange: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
msChangeDefaultBrowser: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellUIHelper6(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellUIHelper6 {
pub unsafe fn ResetFirstBootMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.ResetFirstBootMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ResetSafeMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.ResetSafeMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn RefreshOfflineDesktop(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.RefreshOfflineDesktop)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddFavorite(&self, url: &::windows::core::BSTR, title: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.AddFavorite)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute(title.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn AddChannel(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.AddChannel)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddDesktopComponent(&self, url: &::windows::core::BSTR, r#type: &::windows::core::BSTR, left: ::core::option::Option<*const super::super::System::Com::VARIANT>, top: ::core::option::Option<*const super::super::System::Com::VARIANT>, width: ::core::option::Option<*const super::super::System::Com::VARIANT>, height: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.AddDesktopComponent)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(r#type), ::core::mem::transmute(left.unwrap_or(::std::ptr::null())), ::core::mem::transmute(top.unwrap_or(::std::ptr::null())), ::core::mem::transmute(width.unwrap_or(::std::ptr::null())), ::core::mem::transmute(height.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSubscribed(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.IsSubscribed)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn NavigateAndFind(&self, url: &::windows::core::BSTR, strquery: &::windows::core::BSTR, vartargetframe: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.NavigateAndFind)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(strquery), vartargetframe).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ImportExportFavorites<P0>(&self, fimport: P0, strimpexppath: &::windows::core::BSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.ImportExportFavorites)(::windows::core::Vtable::as_raw(self), fimport.into(), ::core::mem::transmute_copy(strimpexppath)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoCompleteSaveForm(&self, form: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.AutoCompleteSaveForm)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(form.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoScan(&self, strsearch: &::windows::core::BSTR, strfailureurl: &::windows::core::BSTR, pvartargetframe: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.AutoScan)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(strsearch), ::core::mem::transmute_copy(strfailureurl), ::core::mem::transmute(pvartargetframe.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoCompleteAttach(&self, reserved: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.AutoCompleteAttach)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(reserved.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShowBrowserUI(&self, bstrname: &::windows::core::BSTR, pvarin: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.ShowBrowserUI)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrname), pvarin, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn AddSearchProvider(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.AddSearchProvider)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
pub unsafe fn RunOnceShown(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.RunOnceShown)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SkipRunOnce(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.SkipRunOnce)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CustomizeSettings<P0, P1>(&self, fsqm: P0, fphishing: P1, bstrlocale: &::windows::core::BSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P1: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.CustomizeSettings)(::windows::core::Vtable::as_raw(self), fsqm.into(), fphishing.into(), ::core::mem::transmute_copy(bstrlocale)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SqmEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.SqmEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn PhishingEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.PhishingEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn BrandImageUri(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.BrandImageUri)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SkipTabsWelcome(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.SkipTabsWelcome)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn DiagnoseConnection(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.DiagnoseConnection)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CustomizeClearType<P0>(&self, fset: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.CustomizeClearType)(::windows::core::Vtable::as_raw(self), fset.into()).ok()
}
pub unsafe fn IsSearchProviderInstalled(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.IsSearchProviderInstalled)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSearchMigrated(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.IsSearchMigrated)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn DefaultSearchProvider(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.DefaultSearchProvider)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RunOnceRequiredSettingsComplete<P0>(&self, fcomplete: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.RunOnceRequiredSettingsComplete)(::windows::core::Vtable::as_raw(self), fcomplete.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RunOnceHasShown(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.RunOnceHasShown)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SearchGuideUrl(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.SearchGuideUrl)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn AddService(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.AddService)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
pub unsafe fn IsServiceInstalled(&self, url: &::windows::core::BSTR, verb: &::windows::core::BSTR) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.IsServiceInstalled)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(verb), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn InPrivateFilteringEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.InPrivateFilteringEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddToFavoritesBar(&self, url: &::windows::core::BSTR, title: &::windows::core::BSTR, r#type: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.AddToFavoritesBar)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(title), r#type).ok()
}
pub unsafe fn BuildNewTabPage(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.BuildNewTabPage)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetRecentlyClosedVisible<P0>(&self, fvisible: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.SetRecentlyClosedVisible)(::windows::core::Vtable::as_raw(self), fvisible.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetActivitiesVisible<P0>(&self, fvisible: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.SetActivitiesVisible)(::windows::core::Vtable::as_raw(self), fvisible.into()).ok()
}
pub unsafe fn ContentDiscoveryReset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.ContentDiscoveryReset)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSuggestedSitesEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.IsSuggestedSitesEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn EnableSuggestedSites<P0>(&self, fenable: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.EnableSuggestedSites)(::windows::core::Vtable::as_raw(self), fenable.into()).ok()
}
pub unsafe fn NavigateToSuggestedSites(&self, bstrrelativeurl: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.NavigateToSuggestedSites)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrrelativeurl)).ok()
}
pub unsafe fn ShowTabsHelp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.ShowTabsHelp)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ShowInPrivateHelp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.ShowInPrivateHelp)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msIsSiteMode(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.msIsSiteMode)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn msSiteModeShowThumbBar(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msSiteModeShowThumbBar)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeAddThumbBarButton(&self, bstriconurl: &::windows::core::BSTR, bstrtooltip: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.msSiteModeAddThumbBarButton)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstriconurl), ::core::mem::transmute_copy(bstrtooltip), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeUpdateThumbBarButton<P0, P1>(&self, buttonid: super::super::System::Com::VARIANT, fenabled: P0, fvisible: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P1: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.msSiteModeUpdateThumbBarButton)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(buttonid), fenabled.into(), fvisible.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeSetIconOverlay(&self, iconurl: &::windows::core::BSTR, pvardescription: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msSiteModeSetIconOverlay)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(iconurl), pvardescription).ok()
}
pub unsafe fn msSiteModeClearIconOverlay(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msSiteModeClearIconOverlay)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msAddSiteMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msAddSiteMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeCreateJumpList(&self, bstrheader: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msSiteModeCreateJumpList)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrheader)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeAddJumpListItem(&self, bstrname: &::windows::core::BSTR, bstractionuri: &::windows::core::BSTR, bstriconuri: &::windows::core::BSTR, pvarwindowtype: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msSiteModeAddJumpListItem)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrname), ::core::mem::transmute_copy(bstractionuri), ::core::mem::transmute_copy(bstriconuri), pvarwindowtype).ok()
}
pub unsafe fn msSiteModeClearJumpList(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msSiteModeClearJumpList)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeShowJumpList(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msSiteModeShowJumpList)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeAddButtonStyle(&self, uibuttonid: super::super::System::Com::VARIANT, bstriconurl: &::windows::core::BSTR, bstrtooltip: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.msSiteModeAddButtonStyle)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(uibuttonid), ::core::mem::transmute_copy(bstriconurl), ::core::mem::transmute_copy(bstrtooltip), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeShowButtonStyle(&self, uibuttonid: super::super::System::Com::VARIANT, uistyleid: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msSiteModeShowButtonStyle)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(uibuttonid), ::core::mem::transmute(uistyleid)).ok()
}
pub unsafe fn msSiteModeActivate(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msSiteModeActivate)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msIsSiteModeFirstRun<P0>(&self, fpreservestate: P0) -> ::windows::core::Result<super::super::System::Com::VARIANT>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.msIsSiteModeFirstRun)(::windows::core::Vtable::as_raw(self), fpreservestate.into(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn msAddTrackingProtectionList(&self, url: &::windows::core::BSTR, bstrfiltername: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msAddTrackingProtectionList)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(bstrfiltername)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msTrackingProtectionEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.msTrackingProtectionEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msActiveXFilteringEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.msActiveXFilteringEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msProvisionNetworks(&self, bstrprovisioningxml: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.msProvisionNetworks)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrprovisioningxml), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn msReportSafeUrl(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msReportSafeUrl)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeRefreshBadge(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msSiteModeRefreshBadge)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeClearBadge(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msSiteModeClearBadge)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msDiagnoseConnectionUILess(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msDiagnoseConnectionUILess)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msLaunchNetworkClientHelp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msLaunchNetworkClientHelp)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msChangeDefaultBrowser<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.msChangeDefaultBrowser)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
pub unsafe fn msStopPeriodicTileUpdate(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msStopPeriodicTileUpdate)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msStartPeriodicTileUpdate(&self, pollinguris: super::super::System::Com::VARIANT, starttime: super::super::System::Com::VARIANT, uiupdaterecurrence: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msStartPeriodicTileUpdate)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pollinguris), ::core::mem::transmute(starttime), ::core::mem::transmute(uiupdaterecurrence)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msStartPeriodicTileUpdateBatch(&self, pollinguris: super::super::System::Com::VARIANT, starttime: super::super::System::Com::VARIANT, uiupdaterecurrence: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msStartPeriodicTileUpdateBatch)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pollinguris), ::core::mem::transmute(starttime), ::core::mem::transmute(uiupdaterecurrence)).ok()
}
pub unsafe fn msClearTile(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msClearTile)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msEnableTileNotificationQueue<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).msEnableTileNotificationQueue)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msPinnedSiteState(&self) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).msPinnedSiteState)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msEnableTileNotificationQueueForSquare150x150<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).msEnableTileNotificationQueueForSquare150x150)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msEnableTileNotificationQueueForWide310x150<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).msEnableTileNotificationQueueForWide310x150)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msEnableTileNotificationQueueForSquare310x310<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).msEnableTileNotificationQueueForSquare310x310)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msScheduledTileNotification(&self, bstrnotificationxml: &::windows::core::BSTR, bstrnotificationid: &::windows::core::BSTR, bstrnotificationtag: &::windows::core::BSTR, starttime: super::super::System::Com::VARIANT, expirationtime: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msScheduledTileNotification)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrnotificationxml), ::core::mem::transmute_copy(bstrnotificationid), ::core::mem::transmute_copy(bstrnotificationtag), ::core::mem::transmute(starttime), ::core::mem::transmute(expirationtime)).ok()
}
pub unsafe fn msRemoveScheduledTileNotification(&self, bstrnotificationid: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msRemoveScheduledTileNotification)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrnotificationid)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msStartPeriodicBadgeUpdate(&self, pollinguri: &::windows::core::BSTR, starttime: super::super::System::Com::VARIANT, uiupdaterecurrence: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msStartPeriodicBadgeUpdate)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(pollinguri), ::core::mem::transmute(starttime), ::core::mem::transmute(uiupdaterecurrence)).ok()
}
pub unsafe fn msStopPeriodicBadgeUpdate(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msStopPeriodicBadgeUpdate)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msLaunchInternetOptions(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).msLaunchInternetOptions)(::windows::core::Vtable::as_raw(self)).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellUIHelper6, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IShellUIHelper, IShellUIHelper2, IShellUIHelper3, IShellUIHelper4, IShellUIHelper5);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellUIHelper6 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellUIHelper6 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellUIHelper6 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellUIHelper6 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellUIHelper6").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellUIHelper6 {
type Vtable = IShellUIHelper6_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellUIHelper6 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x987a573e_46ee_4e89_96ab_ddf7f8fdc98c);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellUIHelper6_Vtbl {
pub base__: IShellUIHelper5_Vtbl,
pub msStopPeriodicTileUpdate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub msStartPeriodicTileUpdate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pollinguris: super::super::System::Com::VARIANT, starttime: super::super::System::Com::VARIANT, uiupdaterecurrence: super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
msStartPeriodicTileUpdate: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub msStartPeriodicTileUpdateBatch: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pollinguris: super::super::System::Com::VARIANT, starttime: super::super::System::Com::VARIANT, uiupdaterecurrence: super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
msStartPeriodicTileUpdateBatch: usize,
pub msClearTile: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub msEnableTileNotificationQueue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fchange: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
msEnableTileNotificationQueue: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub msPinnedSiteState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pvarsitestate: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
msPinnedSiteState: usize,
#[cfg(feature = "Win32_Foundation")]
pub msEnableTileNotificationQueueForSquare150x150: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fchange: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
msEnableTileNotificationQueueForSquare150x150: usize,
#[cfg(feature = "Win32_Foundation")]
pub msEnableTileNotificationQueueForWide310x150: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fchange: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
msEnableTileNotificationQueueForWide310x150: usize,
#[cfg(feature = "Win32_Foundation")]
pub msEnableTileNotificationQueueForSquare310x310: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fchange: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
msEnableTileNotificationQueueForSquare310x310: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub msScheduledTileNotification: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrnotificationxml: *mut ::core::ffi::c_void, bstrnotificationid: *mut ::core::ffi::c_void, bstrnotificationtag: *mut ::core::ffi::c_void, starttime: super::super::System::Com::VARIANT, expirationtime: super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
msScheduledTileNotification: usize,
pub msRemoveScheduledTileNotification: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrnotificationid: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub msStartPeriodicBadgeUpdate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pollinguri: *mut ::core::ffi::c_void, starttime: super::super::System::Com::VARIANT, uiupdaterecurrence: super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
msStartPeriodicBadgeUpdate: usize,
pub msStopPeriodicBadgeUpdate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub msLaunchInternetOptions: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellUIHelper7(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellUIHelper7 {
pub unsafe fn ResetFirstBootMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.ResetFirstBootMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ResetSafeMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.ResetSafeMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn RefreshOfflineDesktop(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.RefreshOfflineDesktop)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddFavorite(&self, url: &::windows::core::BSTR, title: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.AddFavorite)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute(title.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn AddChannel(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.AddChannel)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddDesktopComponent(&self, url: &::windows::core::BSTR, r#type: &::windows::core::BSTR, left: ::core::option::Option<*const super::super::System::Com::VARIANT>, top: ::core::option::Option<*const super::super::System::Com::VARIANT>, width: ::core::option::Option<*const super::super::System::Com::VARIANT>, height: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.AddDesktopComponent)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(r#type), ::core::mem::transmute(left.unwrap_or(::std::ptr::null())), ::core::mem::transmute(top.unwrap_or(::std::ptr::null())), ::core::mem::transmute(width.unwrap_or(::std::ptr::null())), ::core::mem::transmute(height.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSubscribed(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.IsSubscribed)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn NavigateAndFind(&self, url: &::windows::core::BSTR, strquery: &::windows::core::BSTR, vartargetframe: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.NavigateAndFind)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(strquery), vartargetframe).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ImportExportFavorites<P0>(&self, fimport: P0, strimpexppath: &::windows::core::BSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.ImportExportFavorites)(::windows::core::Vtable::as_raw(self), fimport.into(), ::core::mem::transmute_copy(strimpexppath)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoCompleteSaveForm(&self, form: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.AutoCompleteSaveForm)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(form.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoScan(&self, strsearch: &::windows::core::BSTR, strfailureurl: &::windows::core::BSTR, pvartargetframe: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.AutoScan)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(strsearch), ::core::mem::transmute_copy(strfailureurl), ::core::mem::transmute(pvartargetframe.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoCompleteAttach(&self, reserved: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.AutoCompleteAttach)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(reserved.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShowBrowserUI(&self, bstrname: &::windows::core::BSTR, pvarin: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.ShowBrowserUI)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrname), pvarin, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn AddSearchProvider(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.AddSearchProvider)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
pub unsafe fn RunOnceShown(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.RunOnceShown)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SkipRunOnce(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.SkipRunOnce)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CustomizeSettings<P0, P1>(&self, fsqm: P0, fphishing: P1, bstrlocale: &::windows::core::BSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P1: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.CustomizeSettings)(::windows::core::Vtable::as_raw(self), fsqm.into(), fphishing.into(), ::core::mem::transmute_copy(bstrlocale)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SqmEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.SqmEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn PhishingEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.PhishingEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn BrandImageUri(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.BrandImageUri)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SkipTabsWelcome(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.SkipTabsWelcome)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn DiagnoseConnection(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.DiagnoseConnection)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CustomizeClearType<P0>(&self, fset: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.CustomizeClearType)(::windows::core::Vtable::as_raw(self), fset.into()).ok()
}
pub unsafe fn IsSearchProviderInstalled(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.IsSearchProviderInstalled)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSearchMigrated(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.IsSearchMigrated)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn DefaultSearchProvider(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.DefaultSearchProvider)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RunOnceRequiredSettingsComplete<P0>(&self, fcomplete: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.RunOnceRequiredSettingsComplete)(::windows::core::Vtable::as_raw(self), fcomplete.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RunOnceHasShown(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.RunOnceHasShown)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SearchGuideUrl(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.SearchGuideUrl)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn AddService(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.AddService)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
pub unsafe fn IsServiceInstalled(&self, url: &::windows::core::BSTR, verb: &::windows::core::BSTR) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.IsServiceInstalled)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(verb), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn InPrivateFilteringEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.InPrivateFilteringEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddToFavoritesBar(&self, url: &::windows::core::BSTR, title: &::windows::core::BSTR, r#type: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.AddToFavoritesBar)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(title), r#type).ok()
}
pub unsafe fn BuildNewTabPage(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.BuildNewTabPage)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetRecentlyClosedVisible<P0>(&self, fvisible: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.SetRecentlyClosedVisible)(::windows::core::Vtable::as_raw(self), fvisible.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetActivitiesVisible<P0>(&self, fvisible: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.SetActivitiesVisible)(::windows::core::Vtable::as_raw(self), fvisible.into()).ok()
}
pub unsafe fn ContentDiscoveryReset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.ContentDiscoveryReset)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSuggestedSitesEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.IsSuggestedSitesEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn EnableSuggestedSites<P0>(&self, fenable: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.EnableSuggestedSites)(::windows::core::Vtable::as_raw(self), fenable.into()).ok()
}
pub unsafe fn NavigateToSuggestedSites(&self, bstrrelativeurl: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.NavigateToSuggestedSites)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrrelativeurl)).ok()
}
pub unsafe fn ShowTabsHelp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.ShowTabsHelp)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ShowInPrivateHelp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.ShowInPrivateHelp)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msIsSiteMode(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.msIsSiteMode)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn msSiteModeShowThumbBar(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msSiteModeShowThumbBar)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeAddThumbBarButton(&self, bstriconurl: &::windows::core::BSTR, bstrtooltip: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.msSiteModeAddThumbBarButton)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstriconurl), ::core::mem::transmute_copy(bstrtooltip), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeUpdateThumbBarButton<P0, P1>(&self, buttonid: super::super::System::Com::VARIANT, fenabled: P0, fvisible: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P1: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.msSiteModeUpdateThumbBarButton)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(buttonid), fenabled.into(), fvisible.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeSetIconOverlay(&self, iconurl: &::windows::core::BSTR, pvardescription: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msSiteModeSetIconOverlay)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(iconurl), pvardescription).ok()
}
pub unsafe fn msSiteModeClearIconOverlay(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msSiteModeClearIconOverlay)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msAddSiteMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msAddSiteMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeCreateJumpList(&self, bstrheader: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msSiteModeCreateJumpList)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrheader)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeAddJumpListItem(&self, bstrname: &::windows::core::BSTR, bstractionuri: &::windows::core::BSTR, bstriconuri: &::windows::core::BSTR, pvarwindowtype: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msSiteModeAddJumpListItem)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrname), ::core::mem::transmute_copy(bstractionuri), ::core::mem::transmute_copy(bstriconuri), pvarwindowtype).ok()
}
pub unsafe fn msSiteModeClearJumpList(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msSiteModeClearJumpList)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeShowJumpList(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msSiteModeShowJumpList)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeAddButtonStyle(&self, uibuttonid: super::super::System::Com::VARIANT, bstriconurl: &::windows::core::BSTR, bstrtooltip: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.msSiteModeAddButtonStyle)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(uibuttonid), ::core::mem::transmute_copy(bstriconurl), ::core::mem::transmute_copy(bstrtooltip), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeShowButtonStyle(&self, uibuttonid: super::super::System::Com::VARIANT, uistyleid: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msSiteModeShowButtonStyle)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(uibuttonid), ::core::mem::transmute(uistyleid)).ok()
}
pub unsafe fn msSiteModeActivate(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msSiteModeActivate)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msIsSiteModeFirstRun<P0>(&self, fpreservestate: P0) -> ::windows::core::Result<super::super::System::Com::VARIANT>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.msIsSiteModeFirstRun)(::windows::core::Vtable::as_raw(self), fpreservestate.into(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn msAddTrackingProtectionList(&self, url: &::windows::core::BSTR, bstrfiltername: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msAddTrackingProtectionList)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(bstrfiltername)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msTrackingProtectionEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.msTrackingProtectionEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msActiveXFilteringEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.msActiveXFilteringEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msProvisionNetworks(&self, bstrprovisioningxml: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.msProvisionNetworks)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrprovisioningxml), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn msReportSafeUrl(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msReportSafeUrl)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeRefreshBadge(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msSiteModeRefreshBadge)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeClearBadge(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msSiteModeClearBadge)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msDiagnoseConnectionUILess(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msDiagnoseConnectionUILess)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msLaunchNetworkClientHelp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msLaunchNetworkClientHelp)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msChangeDefaultBrowser<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.msChangeDefaultBrowser)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
pub unsafe fn msStopPeriodicTileUpdate(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msStopPeriodicTileUpdate)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msStartPeriodicTileUpdate(&self, pollinguris: super::super::System::Com::VARIANT, starttime: super::super::System::Com::VARIANT, uiupdaterecurrence: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msStartPeriodicTileUpdate)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pollinguris), ::core::mem::transmute(starttime), ::core::mem::transmute(uiupdaterecurrence)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msStartPeriodicTileUpdateBatch(&self, pollinguris: super::super::System::Com::VARIANT, starttime: super::super::System::Com::VARIANT, uiupdaterecurrence: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msStartPeriodicTileUpdateBatch)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pollinguris), ::core::mem::transmute(starttime), ::core::mem::transmute(uiupdaterecurrence)).ok()
}
pub unsafe fn msClearTile(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msClearTile)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msEnableTileNotificationQueue<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.msEnableTileNotificationQueue)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msPinnedSiteState(&self) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.msPinnedSiteState)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msEnableTileNotificationQueueForSquare150x150<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.msEnableTileNotificationQueueForSquare150x150)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msEnableTileNotificationQueueForWide310x150<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.msEnableTileNotificationQueueForWide310x150)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msEnableTileNotificationQueueForSquare310x310<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.msEnableTileNotificationQueueForSquare310x310)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msScheduledTileNotification(&self, bstrnotificationxml: &::windows::core::BSTR, bstrnotificationid: &::windows::core::BSTR, bstrnotificationtag: &::windows::core::BSTR, starttime: super::super::System::Com::VARIANT, expirationtime: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msScheduledTileNotification)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrnotificationxml), ::core::mem::transmute_copy(bstrnotificationid), ::core::mem::transmute_copy(bstrnotificationtag), ::core::mem::transmute(starttime), ::core::mem::transmute(expirationtime)).ok()
}
pub unsafe fn msRemoveScheduledTileNotification(&self, bstrnotificationid: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msRemoveScheduledTileNotification)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrnotificationid)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msStartPeriodicBadgeUpdate(&self, pollinguri: &::windows::core::BSTR, starttime: super::super::System::Com::VARIANT, uiupdaterecurrence: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msStartPeriodicBadgeUpdate)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(pollinguri), ::core::mem::transmute(starttime), ::core::mem::transmute(uiupdaterecurrence)).ok()
}
pub unsafe fn msStopPeriodicBadgeUpdate(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msStopPeriodicBadgeUpdate)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msLaunchInternetOptions(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.msLaunchInternetOptions)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetExperimentalFlag<P0>(&self, bstrflagstring: &::windows::core::BSTR, vfflag: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).SetExperimentalFlag)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrflagstring), vfflag.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetExperimentalFlag(&self, bstrflagstring: &::windows::core::BSTR) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetExperimentalFlag)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrflagstring), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetExperimentalValue(&self, bstrvaluestring: &::windows::core::BSTR, dwvalue: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetExperimentalValue)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrvaluestring), dwvalue).ok()
}
pub unsafe fn GetExperimentalValue(&self, bstrvaluestring: &::windows::core::BSTR) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetExperimentalValue)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrvaluestring), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn ResetAllExperimentalFlagsAndValues(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ResetAllExperimentalFlagsAndValues)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetNeedIEAutoLaunchFlag(&self, bstrurl: &::windows::core::BSTR) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetNeedIEAutoLaunchFlag)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrurl), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetNeedIEAutoLaunchFlag<P0>(&self, bstrurl: &::windows::core::BSTR, flag: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).SetNeedIEAutoLaunchFlag)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrurl), flag.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn HasNeedIEAutoLaunchFlag(&self, bstrurl: &::windows::core::BSTR) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).HasNeedIEAutoLaunchFlag)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrurl), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn LaunchIE<P0>(&self, bstrurl: &::windows::core::BSTR, automated: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).LaunchIE)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrurl), automated.into()).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellUIHelper7, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IShellUIHelper, IShellUIHelper2, IShellUIHelper3, IShellUIHelper4, IShellUIHelper5, IShellUIHelper6);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellUIHelper7 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellUIHelper7 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellUIHelper7 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellUIHelper7 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellUIHelper7").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellUIHelper7 {
type Vtable = IShellUIHelper7_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellUIHelper7 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x60e567c8_9573_4ab2_a264_637c6c161cb1);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellUIHelper7_Vtbl {
pub base__: IShellUIHelper6_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub SetExperimentalFlag: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrflagstring: *mut ::core::ffi::c_void, vfflag: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetExperimentalFlag: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetExperimentalFlag: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrflagstring: *mut ::core::ffi::c_void, vfflag: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetExperimentalFlag: usize,
pub SetExperimentalValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrvaluestring: *mut ::core::ffi::c_void, dwvalue: u32) -> ::windows::core::HRESULT,
pub GetExperimentalValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrvaluestring: *mut ::core::ffi::c_void, pdwvalue: *mut u32) -> ::windows::core::HRESULT,
pub ResetAllExperimentalFlagsAndValues: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetNeedIEAutoLaunchFlag: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrurl: *mut ::core::ffi::c_void, flag: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetNeedIEAutoLaunchFlag: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetNeedIEAutoLaunchFlag: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrurl: *mut ::core::ffi::c_void, flag: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetNeedIEAutoLaunchFlag: usize,
#[cfg(feature = "Win32_Foundation")]
pub HasNeedIEAutoLaunchFlag: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrurl: *mut ::core::ffi::c_void, exists: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
HasNeedIEAutoLaunchFlag: usize,
#[cfg(feature = "Win32_Foundation")]
pub LaunchIE: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrurl: *mut ::core::ffi::c_void, automated: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
LaunchIE: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellUIHelper8(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellUIHelper8 {
pub unsafe fn ResetFirstBootMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.ResetFirstBootMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ResetSafeMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.ResetSafeMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn RefreshOfflineDesktop(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.RefreshOfflineDesktop)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddFavorite(&self, url: &::windows::core::BSTR, title: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.AddFavorite)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute(title.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn AddChannel(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.AddChannel)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddDesktopComponent(&self, url: &::windows::core::BSTR, r#type: &::windows::core::BSTR, left: ::core::option::Option<*const super::super::System::Com::VARIANT>, top: ::core::option::Option<*const super::super::System::Com::VARIANT>, width: ::core::option::Option<*const super::super::System::Com::VARIANT>, height: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.AddDesktopComponent)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(r#type), ::core::mem::transmute(left.unwrap_or(::std::ptr::null())), ::core::mem::transmute(top.unwrap_or(::std::ptr::null())), ::core::mem::transmute(width.unwrap_or(::std::ptr::null())), ::core::mem::transmute(height.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSubscribed(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.IsSubscribed)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn NavigateAndFind(&self, url: &::windows::core::BSTR, strquery: &::windows::core::BSTR, vartargetframe: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.NavigateAndFind)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(strquery), vartargetframe).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ImportExportFavorites<P0>(&self, fimport: P0, strimpexppath: &::windows::core::BSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.ImportExportFavorites)(::windows::core::Vtable::as_raw(self), fimport.into(), ::core::mem::transmute_copy(strimpexppath)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoCompleteSaveForm(&self, form: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.AutoCompleteSaveForm)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(form.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoScan(&self, strsearch: &::windows::core::BSTR, strfailureurl: &::windows::core::BSTR, pvartargetframe: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.AutoScan)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(strsearch), ::core::mem::transmute_copy(strfailureurl), ::core::mem::transmute(pvartargetframe.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoCompleteAttach(&self, reserved: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.AutoCompleteAttach)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(reserved.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShowBrowserUI(&self, bstrname: &::windows::core::BSTR, pvarin: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.ShowBrowserUI)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrname), pvarin, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn AddSearchProvider(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.AddSearchProvider)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
pub unsafe fn RunOnceShown(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.RunOnceShown)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SkipRunOnce(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.SkipRunOnce)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CustomizeSettings<P0, P1>(&self, fsqm: P0, fphishing: P1, bstrlocale: &::windows::core::BSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P1: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.CustomizeSettings)(::windows::core::Vtable::as_raw(self), fsqm.into(), fphishing.into(), ::core::mem::transmute_copy(bstrlocale)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SqmEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.SqmEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn PhishingEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.PhishingEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn BrandImageUri(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.BrandImageUri)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SkipTabsWelcome(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.SkipTabsWelcome)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn DiagnoseConnection(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.DiagnoseConnection)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CustomizeClearType<P0>(&self, fset: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.CustomizeClearType)(::windows::core::Vtable::as_raw(self), fset.into()).ok()
}
pub unsafe fn IsSearchProviderInstalled(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.IsSearchProviderInstalled)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSearchMigrated(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.IsSearchMigrated)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn DefaultSearchProvider(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.DefaultSearchProvider)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RunOnceRequiredSettingsComplete<P0>(&self, fcomplete: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.RunOnceRequiredSettingsComplete)(::windows::core::Vtable::as_raw(self), fcomplete.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RunOnceHasShown(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.RunOnceHasShown)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SearchGuideUrl(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.SearchGuideUrl)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn AddService(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.AddService)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
pub unsafe fn IsServiceInstalled(&self, url: &::windows::core::BSTR, verb: &::windows::core::BSTR) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.IsServiceInstalled)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(verb), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn InPrivateFilteringEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.InPrivateFilteringEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddToFavoritesBar(&self, url: &::windows::core::BSTR, title: &::windows::core::BSTR, r#type: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.AddToFavoritesBar)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(title), r#type).ok()
}
pub unsafe fn BuildNewTabPage(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.BuildNewTabPage)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetRecentlyClosedVisible<P0>(&self, fvisible: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.SetRecentlyClosedVisible)(::windows::core::Vtable::as_raw(self), fvisible.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetActivitiesVisible<P0>(&self, fvisible: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.SetActivitiesVisible)(::windows::core::Vtable::as_raw(self), fvisible.into()).ok()
}
pub unsafe fn ContentDiscoveryReset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.ContentDiscoveryReset)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSuggestedSitesEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.IsSuggestedSitesEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn EnableSuggestedSites<P0>(&self, fenable: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.EnableSuggestedSites)(::windows::core::Vtable::as_raw(self), fenable.into()).ok()
}
pub unsafe fn NavigateToSuggestedSites(&self, bstrrelativeurl: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.NavigateToSuggestedSites)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrrelativeurl)).ok()
}
pub unsafe fn ShowTabsHelp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.ShowTabsHelp)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ShowInPrivateHelp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.ShowInPrivateHelp)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msIsSiteMode(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msIsSiteMode)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn msSiteModeShowThumbBar(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msSiteModeShowThumbBar)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeAddThumbBarButton(&self, bstriconurl: &::windows::core::BSTR, bstrtooltip: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msSiteModeAddThumbBarButton)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstriconurl), ::core::mem::transmute_copy(bstrtooltip), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeUpdateThumbBarButton<P0, P1>(&self, buttonid: super::super::System::Com::VARIANT, fenabled: P0, fvisible: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P1: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msSiteModeUpdateThumbBarButton)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(buttonid), fenabled.into(), fvisible.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeSetIconOverlay(&self, iconurl: &::windows::core::BSTR, pvardescription: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msSiteModeSetIconOverlay)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(iconurl), pvardescription).ok()
}
pub unsafe fn msSiteModeClearIconOverlay(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msSiteModeClearIconOverlay)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msAddSiteMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msAddSiteMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeCreateJumpList(&self, bstrheader: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msSiteModeCreateJumpList)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrheader)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeAddJumpListItem(&self, bstrname: &::windows::core::BSTR, bstractionuri: &::windows::core::BSTR, bstriconuri: &::windows::core::BSTR, pvarwindowtype: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msSiteModeAddJumpListItem)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrname), ::core::mem::transmute_copy(bstractionuri), ::core::mem::transmute_copy(bstriconuri), pvarwindowtype).ok()
}
pub unsafe fn msSiteModeClearJumpList(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msSiteModeClearJumpList)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeShowJumpList(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msSiteModeShowJumpList)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeAddButtonStyle(&self, uibuttonid: super::super::System::Com::VARIANT, bstriconurl: &::windows::core::BSTR, bstrtooltip: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msSiteModeAddButtonStyle)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(uibuttonid), ::core::mem::transmute_copy(bstriconurl), ::core::mem::transmute_copy(bstrtooltip), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeShowButtonStyle(&self, uibuttonid: super::super::System::Com::VARIANT, uistyleid: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msSiteModeShowButtonStyle)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(uibuttonid), ::core::mem::transmute(uistyleid)).ok()
}
pub unsafe fn msSiteModeActivate(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msSiteModeActivate)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msIsSiteModeFirstRun<P0>(&self, fpreservestate: P0) -> ::windows::core::Result<super::super::System::Com::VARIANT>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msIsSiteModeFirstRun)(::windows::core::Vtable::as_raw(self), fpreservestate.into(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn msAddTrackingProtectionList(&self, url: &::windows::core::BSTR, bstrfiltername: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msAddTrackingProtectionList)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(bstrfiltername)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msTrackingProtectionEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msTrackingProtectionEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msActiveXFilteringEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msActiveXFilteringEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msProvisionNetworks(&self, bstrprovisioningxml: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.msProvisionNetworks)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrprovisioningxml), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn msReportSafeUrl(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msReportSafeUrl)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeRefreshBadge(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msSiteModeRefreshBadge)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeClearBadge(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msSiteModeClearBadge)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msDiagnoseConnectionUILess(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msDiagnoseConnectionUILess)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msLaunchNetworkClientHelp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msLaunchNetworkClientHelp)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msChangeDefaultBrowser<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.msChangeDefaultBrowser)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
pub unsafe fn msStopPeriodicTileUpdate(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msStopPeriodicTileUpdate)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msStartPeriodicTileUpdate(&self, pollinguris: super::super::System::Com::VARIANT, starttime: super::super::System::Com::VARIANT, uiupdaterecurrence: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msStartPeriodicTileUpdate)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pollinguris), ::core::mem::transmute(starttime), ::core::mem::transmute(uiupdaterecurrence)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msStartPeriodicTileUpdateBatch(&self, pollinguris: super::super::System::Com::VARIANT, starttime: super::super::System::Com::VARIANT, uiupdaterecurrence: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msStartPeriodicTileUpdateBatch)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pollinguris), ::core::mem::transmute(starttime), ::core::mem::transmute(uiupdaterecurrence)).ok()
}
pub unsafe fn msClearTile(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msClearTile)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msEnableTileNotificationQueue<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.msEnableTileNotificationQueue)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msPinnedSiteState(&self) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.msPinnedSiteState)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msEnableTileNotificationQueueForSquare150x150<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.msEnableTileNotificationQueueForSquare150x150)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msEnableTileNotificationQueueForWide310x150<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.msEnableTileNotificationQueueForWide310x150)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msEnableTileNotificationQueueForSquare310x310<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.msEnableTileNotificationQueueForSquare310x310)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msScheduledTileNotification(&self, bstrnotificationxml: &::windows::core::BSTR, bstrnotificationid: &::windows::core::BSTR, bstrnotificationtag: &::windows::core::BSTR, starttime: super::super::System::Com::VARIANT, expirationtime: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msScheduledTileNotification)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrnotificationxml), ::core::mem::transmute_copy(bstrnotificationid), ::core::mem::transmute_copy(bstrnotificationtag), ::core::mem::transmute(starttime), ::core::mem::transmute(expirationtime)).ok()
}
pub unsafe fn msRemoveScheduledTileNotification(&self, bstrnotificationid: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msRemoveScheduledTileNotification)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrnotificationid)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msStartPeriodicBadgeUpdate(&self, pollinguri: &::windows::core::BSTR, starttime: super::super::System::Com::VARIANT, uiupdaterecurrence: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msStartPeriodicBadgeUpdate)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(pollinguri), ::core::mem::transmute(starttime), ::core::mem::transmute(uiupdaterecurrence)).ok()
}
pub unsafe fn msStopPeriodicBadgeUpdate(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msStopPeriodicBadgeUpdate)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msLaunchInternetOptions(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.msLaunchInternetOptions)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetExperimentalFlag<P0>(&self, bstrflagstring: &::windows::core::BSTR, vfflag: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.SetExperimentalFlag)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrflagstring), vfflag.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetExperimentalFlag(&self, bstrflagstring: &::windows::core::BSTR) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetExperimentalFlag)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrflagstring), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetExperimentalValue(&self, bstrvaluestring: &::windows::core::BSTR, dwvalue: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetExperimentalValue)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrvaluestring), dwvalue).ok()
}
pub unsafe fn GetExperimentalValue(&self, bstrvaluestring: &::windows::core::BSTR) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetExperimentalValue)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrvaluestring), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn ResetAllExperimentalFlagsAndValues(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.ResetAllExperimentalFlagsAndValues)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetNeedIEAutoLaunchFlag(&self, bstrurl: &::windows::core::BSTR) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetNeedIEAutoLaunchFlag)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrurl), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetNeedIEAutoLaunchFlag<P0>(&self, bstrurl: &::windows::core::BSTR, flag: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.SetNeedIEAutoLaunchFlag)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrurl), flag.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn HasNeedIEAutoLaunchFlag(&self, bstrurl: &::windows::core::BSTR) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.HasNeedIEAutoLaunchFlag)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrurl), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn LaunchIE<P0>(&self, bstrurl: &::windows::core::BSTR, automated: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.LaunchIE)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrurl), automated.into()).ok()
}
pub unsafe fn GetCVListData(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCVListData)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetCVListLocalData(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCVListLocalData)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetEMIEListData(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetEMIEListData)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetEMIEListLocalData(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetEMIEListLocalData)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn OpenFavoritesPane(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OpenFavoritesPane)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn OpenFavoritesSettings(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OpenFavoritesSettings)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn LaunchInHVSI(&self, bstrurl: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).LaunchInHVSI)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrurl)).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellUIHelper8, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IShellUIHelper, IShellUIHelper2, IShellUIHelper3, IShellUIHelper4, IShellUIHelper5, IShellUIHelper6, IShellUIHelper7);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellUIHelper8 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellUIHelper8 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellUIHelper8 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellUIHelper8 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellUIHelper8").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellUIHelper8 {
type Vtable = IShellUIHelper8_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellUIHelper8 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x66debcf2_05b0_4f07_b49b_b96241a65db2);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellUIHelper8_Vtbl {
pub base__: IShellUIHelper7_Vtbl,
pub GetCVListData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstrresult: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetCVListLocalData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstrresult: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetEMIEListData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstrresult: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetEMIEListLocalData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstrresult: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub OpenFavoritesPane: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub OpenFavoritesSettings: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub LaunchInHVSI: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrurl: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellUIHelper9(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellUIHelper9 {
pub unsafe fn ResetFirstBootMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.base__.ResetFirstBootMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ResetSafeMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.base__.ResetSafeMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn RefreshOfflineDesktop(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.base__.RefreshOfflineDesktop)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddFavorite(&self, url: &::windows::core::BSTR, title: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.base__.AddFavorite)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute(title.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn AddChannel(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.base__.AddChannel)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddDesktopComponent(&self, url: &::windows::core::BSTR, r#type: &::windows::core::BSTR, left: ::core::option::Option<*const super::super::System::Com::VARIANT>, top: ::core::option::Option<*const super::super::System::Com::VARIANT>, width: ::core::option::Option<*const super::super::System::Com::VARIANT>, height: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.base__.AddDesktopComponent)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(r#type), ::core::mem::transmute(left.unwrap_or(::std::ptr::null())), ::core::mem::transmute(top.unwrap_or(::std::ptr::null())), ::core::mem::transmute(width.unwrap_or(::std::ptr::null())), ::core::mem::transmute(height.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSubscribed(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.base__.IsSubscribed)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn NavigateAndFind(&self, url: &::windows::core::BSTR, strquery: &::windows::core::BSTR, vartargetframe: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.base__.NavigateAndFind)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(strquery), vartargetframe).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ImportExportFavorites<P0>(&self, fimport: P0, strimpexppath: &::windows::core::BSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.base__.ImportExportFavorites)(::windows::core::Vtable::as_raw(self), fimport.into(), ::core::mem::transmute_copy(strimpexppath)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoCompleteSaveForm(&self, form: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.base__.AutoCompleteSaveForm)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(form.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoScan(&self, strsearch: &::windows::core::BSTR, strfailureurl: &::windows::core::BSTR, pvartargetframe: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.base__.AutoScan)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(strsearch), ::core::mem::transmute_copy(strfailureurl), ::core::mem::transmute(pvartargetframe.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AutoCompleteAttach(&self, reserved: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.base__.AutoCompleteAttach)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(reserved.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShowBrowserUI(&self, bstrname: &::windows::core::BSTR, pvarin: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.base__.ShowBrowserUI)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrname), pvarin, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn AddSearchProvider(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.AddSearchProvider)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
pub unsafe fn RunOnceShown(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.RunOnceShown)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SkipRunOnce(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.SkipRunOnce)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CustomizeSettings<P0, P1>(&self, fsqm: P0, fphishing: P1, bstrlocale: &::windows::core::BSTR) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P1: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.CustomizeSettings)(::windows::core::Vtable::as_raw(self), fsqm.into(), fphishing.into(), ::core::mem::transmute_copy(bstrlocale)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SqmEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.SqmEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn PhishingEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.PhishingEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn BrandImageUri(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.BrandImageUri)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SkipTabsWelcome(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.SkipTabsWelcome)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn DiagnoseConnection(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.DiagnoseConnection)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CustomizeClearType<P0>(&self, fset: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.CustomizeClearType)(::windows::core::Vtable::as_raw(self), fset.into()).ok()
}
pub unsafe fn IsSearchProviderInstalled(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.IsSearchProviderInstalled)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSearchMigrated(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.IsSearchMigrated)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn DefaultSearchProvider(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.DefaultSearchProvider)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RunOnceRequiredSettingsComplete<P0>(&self, fcomplete: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.RunOnceRequiredSettingsComplete)(::windows::core::Vtable::as_raw(self), fcomplete.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RunOnceHasShown(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.RunOnceHasShown)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SearchGuideUrl(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.base__.SearchGuideUrl)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn AddService(&self, url: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.AddService)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url)).ok()
}
pub unsafe fn IsServiceInstalled(&self, url: &::windows::core::BSTR, verb: &::windows::core::BSTR) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.IsServiceInstalled)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(verb), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn InPrivateFilteringEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.InPrivateFilteringEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn AddToFavoritesBar(&self, url: &::windows::core::BSTR, title: &::windows::core::BSTR, r#type: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.AddToFavoritesBar)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(title), r#type).ok()
}
pub unsafe fn BuildNewTabPage(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.BuildNewTabPage)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetRecentlyClosedVisible<P0>(&self, fvisible: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.SetRecentlyClosedVisible)(::windows::core::Vtable::as_raw(self), fvisible.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetActivitiesVisible<P0>(&self, fvisible: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.SetActivitiesVisible)(::windows::core::Vtable::as_raw(self), fvisible.into()).ok()
}
pub unsafe fn ContentDiscoveryReset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.ContentDiscoveryReset)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsSuggestedSitesEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.IsSuggestedSitesEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn EnableSuggestedSites<P0>(&self, fenable: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.EnableSuggestedSites)(::windows::core::Vtable::as_raw(self), fenable.into()).ok()
}
pub unsafe fn NavigateToSuggestedSites(&self, bstrrelativeurl: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.NavigateToSuggestedSites)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrrelativeurl)).ok()
}
pub unsafe fn ShowTabsHelp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.ShowTabsHelp)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ShowInPrivateHelp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.base__.ShowInPrivateHelp)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msIsSiteMode(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.msIsSiteMode)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn msSiteModeShowThumbBar(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.msSiteModeShowThumbBar)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeAddThumbBarButton(&self, bstriconurl: &::windows::core::BSTR, bstrtooltip: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.msSiteModeAddThumbBarButton)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstriconurl), ::core::mem::transmute_copy(bstrtooltip), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeUpdateThumbBarButton<P0, P1>(&self, buttonid: super::super::System::Com::VARIANT, fenabled: P0, fvisible: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P1: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.msSiteModeUpdateThumbBarButton)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(buttonid), fenabled.into(), fvisible.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeSetIconOverlay(&self, iconurl: &::windows::core::BSTR, pvardescription: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.msSiteModeSetIconOverlay)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(iconurl), pvardescription).ok()
}
pub unsafe fn msSiteModeClearIconOverlay(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.msSiteModeClearIconOverlay)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msAddSiteMode(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.msAddSiteMode)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeCreateJumpList(&self, bstrheader: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.msSiteModeCreateJumpList)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrheader)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeAddJumpListItem(&self, bstrname: &::windows::core::BSTR, bstractionuri: &::windows::core::BSTR, bstriconuri: &::windows::core::BSTR, pvarwindowtype: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.msSiteModeAddJumpListItem)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrname), ::core::mem::transmute_copy(bstractionuri), ::core::mem::transmute_copy(bstriconuri), pvarwindowtype).ok()
}
pub unsafe fn msSiteModeClearJumpList(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.msSiteModeClearJumpList)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeShowJumpList(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.msSiteModeShowJumpList)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeAddButtonStyle(&self, uibuttonid: super::super::System::Com::VARIANT, bstriconurl: &::windows::core::BSTR, bstrtooltip: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.msSiteModeAddButtonStyle)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(uibuttonid), ::core::mem::transmute_copy(bstriconurl), ::core::mem::transmute_copy(bstrtooltip), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msSiteModeShowButtonStyle(&self, uibuttonid: super::super::System::Com::VARIANT, uistyleid: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.msSiteModeShowButtonStyle)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(uibuttonid), ::core::mem::transmute(uistyleid)).ok()
}
pub unsafe fn msSiteModeActivate(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.msSiteModeActivate)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msIsSiteModeFirstRun<P0>(&self, fpreservestate: P0) -> ::windows::core::Result<super::super::System::Com::VARIANT>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.msIsSiteModeFirstRun)(::windows::core::Vtable::as_raw(self), fpreservestate.into(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn msAddTrackingProtectionList(&self, url: &::windows::core::BSTR, bstrfiltername: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.msAddTrackingProtectionList)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute_copy(bstrfiltername)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msTrackingProtectionEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.msTrackingProtectionEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msActiveXFilteringEnabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.base__.msActiveXFilteringEnabled)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msProvisionNetworks(&self, bstrprovisioningxml: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msProvisionNetworks)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrprovisioningxml), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn msReportSafeUrl(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msReportSafeUrl)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeRefreshBadge(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msSiteModeRefreshBadge)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msSiteModeClearBadge(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msSiteModeClearBadge)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msDiagnoseConnectionUILess(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msDiagnoseConnectionUILess)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msLaunchNetworkClientHelp(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msLaunchNetworkClientHelp)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msChangeDefaultBrowser<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.base__.msChangeDefaultBrowser)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
pub unsafe fn msStopPeriodicTileUpdate(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msStopPeriodicTileUpdate)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msStartPeriodicTileUpdate(&self, pollinguris: super::super::System::Com::VARIANT, starttime: super::super::System::Com::VARIANT, uiupdaterecurrence: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msStartPeriodicTileUpdate)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pollinguris), ::core::mem::transmute(starttime), ::core::mem::transmute(uiupdaterecurrence)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msStartPeriodicTileUpdateBatch(&self, pollinguris: super::super::System::Com::VARIANT, starttime: super::super::System::Com::VARIANT, uiupdaterecurrence: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msStartPeriodicTileUpdateBatch)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pollinguris), ::core::mem::transmute(starttime), ::core::mem::transmute(uiupdaterecurrence)).ok()
}
pub unsafe fn msClearTile(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msClearTile)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msEnableTileNotificationQueue<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.msEnableTileNotificationQueue)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msPinnedSiteState(&self) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.msPinnedSiteState)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msEnableTileNotificationQueueForSquare150x150<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.msEnableTileNotificationQueueForSquare150x150)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msEnableTileNotificationQueueForWide310x150<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.msEnableTileNotificationQueueForWide310x150)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn msEnableTileNotificationQueueForSquare310x310<P0>(&self, fchange: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.msEnableTileNotificationQueueForSquare310x310)(::windows::core::Vtable::as_raw(self), fchange.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msScheduledTileNotification(&self, bstrnotificationxml: &::windows::core::BSTR, bstrnotificationid: &::windows::core::BSTR, bstrnotificationtag: &::windows::core::BSTR, starttime: super::super::System::Com::VARIANT, expirationtime: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msScheduledTileNotification)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrnotificationxml), ::core::mem::transmute_copy(bstrnotificationid), ::core::mem::transmute_copy(bstrnotificationtag), ::core::mem::transmute(starttime), ::core::mem::transmute(expirationtime)).ok()
}
pub unsafe fn msRemoveScheduledTileNotification(&self, bstrnotificationid: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msRemoveScheduledTileNotification)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrnotificationid)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn msStartPeriodicBadgeUpdate(&self, pollinguri: &::windows::core::BSTR, starttime: super::super::System::Com::VARIANT, uiupdaterecurrence: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msStartPeriodicBadgeUpdate)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(pollinguri), ::core::mem::transmute(starttime), ::core::mem::transmute(uiupdaterecurrence)).ok()
}
pub unsafe fn msStopPeriodicBadgeUpdate(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msStopPeriodicBadgeUpdate)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn msLaunchInternetOptions(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.msLaunchInternetOptions)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetExperimentalFlag<P0>(&self, bstrflagstring: &::windows::core::BSTR, vfflag: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.SetExperimentalFlag)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrflagstring), vfflag.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetExperimentalFlag(&self, bstrflagstring: &::windows::core::BSTR) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetExperimentalFlag)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrflagstring), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetExperimentalValue(&self, bstrvaluestring: &::windows::core::BSTR, dwvalue: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.SetExperimentalValue)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrvaluestring), dwvalue).ok()
}
pub unsafe fn GetExperimentalValue(&self, bstrvaluestring: &::windows::core::BSTR) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetExperimentalValue)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrvaluestring), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn ResetAllExperimentalFlagsAndValues(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.ResetAllExperimentalFlagsAndValues)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetNeedIEAutoLaunchFlag(&self, bstrurl: &::windows::core::BSTR) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetNeedIEAutoLaunchFlag)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrurl), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetNeedIEAutoLaunchFlag<P0>(&self, bstrurl: &::windows::core::BSTR, flag: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.SetNeedIEAutoLaunchFlag)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrurl), flag.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn HasNeedIEAutoLaunchFlag(&self, bstrurl: &::windows::core::BSTR) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.HasNeedIEAutoLaunchFlag)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrurl), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn LaunchIE<P0>(&self, bstrurl: &::windows::core::BSTR, automated: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.LaunchIE)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrurl), automated.into()).ok()
}
pub unsafe fn GetCVListData(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetCVListData)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetCVListLocalData(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetCVListLocalData)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetEMIEListData(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetEMIEListData)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetEMIEListLocalData(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetEMIEListLocalData)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn OpenFavoritesPane(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.OpenFavoritesPane)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn OpenFavoritesSettings(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.OpenFavoritesSettings)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn LaunchInHVSI(&self, bstrurl: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.LaunchInHVSI)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrurl)).ok()
}
pub unsafe fn GetOSSku(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetOSSku)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellUIHelper9, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IShellUIHelper, IShellUIHelper2, IShellUIHelper3, IShellUIHelper4, IShellUIHelper5, IShellUIHelper6, IShellUIHelper7, IShellUIHelper8);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellUIHelper9 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellUIHelper9 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellUIHelper9 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellUIHelper9 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellUIHelper9").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellUIHelper9 {
type Vtable = IShellUIHelper9_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellUIHelper9 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6cdf73b0_7f2f_451f_bc0f_63e0f3284e54);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellUIHelper9_Vtbl {
pub base__: IShellUIHelper8_Vtbl,
pub GetOSSku: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwresult: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
#[repr(transparent)]
pub struct IShellView(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Ole")]
impl IShellView {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn GetWindow(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetWindow)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn ContextSensitiveHelp<P0>(&self, fentermode: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.ContextSensitiveHelp)(::windows::core::Vtable::as_raw(self), fentermode.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn TranslateAccelerator(&self, pmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).TranslateAccelerator)(::windows::core::Vtable::as_raw(self), pmsg).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn EnableModeless<P0>(&self, fenable: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).EnableModeless)(::windows::core::Vtable::as_raw(self), fenable.into()).ok()
}
pub unsafe fn UIActivate(&self, ustate: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UIActivate)(::windows::core::Vtable::as_raw(self), ustate).ok()
}
pub unsafe fn Refresh(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Refresh)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn CreateViewWindow<P0, P1>(&self, psvprevious: P0, pfs: *const FOLDERSETTINGS, psb: P1, prcview: *const super::super::Foundation::RECT) -> ::windows::core::Result<super::super::Foundation::HWND>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellBrowser>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CreateViewWindow)(::windows::core::Vtable::as_raw(self), psvprevious.into().abi(), pfs, psb.into().abi(), prcview, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn DestroyViewWindow(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).DestroyViewWindow)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GetCurrentInfo(&self) -> ::windows::core::Result<FOLDERSETTINGS> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCurrentInfo)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Controls\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
pub unsafe fn AddPropertySheetPages<P0>(&self, dwreserved: u32, pfn: super::Controls::LPFNSVADDPROPSHEETPAGE, lparam: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).AddPropertySheetPages)(::windows::core::Vtable::as_raw(self), dwreserved, pfn, lparam.into()).ok()
}
pub unsafe fn SaveViewState(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SaveViewState)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SelectItem(&self, pidlitem: *const Common::ITEMIDLIST, uflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SelectItem)(::windows::core::Vtable::as_raw(self), pidlitem, uflags).ok()
}
pub unsafe fn GetItemObject<T>(&self, uitem: u32) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItemObject)(::windows::core::Vtable::as_raw(self), uitem, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Ole")]
::windows::core::interface_hierarchy!(IShellView, ::windows::core::IUnknown, super::super::System::Ole::IOleWindow);
#[cfg(feature = "Win32_System_Ole")]
impl ::core::clone::Clone for IShellView {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::PartialEq for IShellView {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::Eq for IShellView {}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::fmt::Debug for IShellView {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellView").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Vtable for IShellView {
type Vtable = IShellView_Vtbl;
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Interface for IShellView {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214e3_0000_0000_c000_000000000046);
}
#[cfg(feature = "Win32_System_Ole")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellView_Vtbl {
pub base__: super::super::System::Ole::IOleWindow_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub TranslateAccelerator: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
TranslateAccelerator: usize,
#[cfg(feature = "Win32_Foundation")]
pub EnableModeless: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fenable: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
EnableModeless: usize,
pub UIActivate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ustate: u32) -> ::windows::core::HRESULT,
pub Refresh: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub CreateViewWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psvprevious: *mut ::core::ffi::c_void, pfs: *const FOLDERSETTINGS, psb: *mut ::core::ffi::c_void, prcview: *const super::super::Foundation::RECT, phwnd: *mut super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Ole")))]
CreateViewWindow: usize,
pub DestroyViewWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetCurrentInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfs: *mut FOLDERSETTINGS) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
pub AddPropertySheetPages: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwreserved: u32, pfn: super::Controls::LPFNSVADDPROPSHEETPAGE, lparam: super::super::Foundation::LPARAM) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls")))]
AddPropertySheetPages: usize,
pub SaveViewState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub SelectItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidlitem: *const Common::ITEMIDLIST, uflags: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
SelectItem: usize,
pub GetItemObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uitem: u32, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
#[repr(transparent)]
pub struct IShellView2(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Ole")]
impl IShellView2 {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn GetWindow(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetWindow)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn ContextSensitiveHelp<P0>(&self, fentermode: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.ContextSensitiveHelp)(::windows::core::Vtable::as_raw(self), fentermode.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn TranslateAccelerator(&self, pmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.TranslateAccelerator)(::windows::core::Vtable::as_raw(self), pmsg).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn EnableModeless<P0>(&self, fenable: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.EnableModeless)(::windows::core::Vtable::as_raw(self), fenable.into()).ok()
}
pub unsafe fn UIActivate(&self, ustate: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.UIActivate)(::windows::core::Vtable::as_raw(self), ustate).ok()
}
pub unsafe fn Refresh(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Refresh)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn CreateViewWindow<P0, P1>(&self, psvprevious: P0, pfs: *const FOLDERSETTINGS, psb: P1, prcview: *const super::super::Foundation::RECT) -> ::windows::core::Result<super::super::Foundation::HWND>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellBrowser>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.CreateViewWindow)(::windows::core::Vtable::as_raw(self), psvprevious.into().abi(), pfs, psb.into().abi(), prcview, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn DestroyViewWindow(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.DestroyViewWindow)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GetCurrentInfo(&self) -> ::windows::core::Result<FOLDERSETTINGS> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetCurrentInfo)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Controls\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
pub unsafe fn AddPropertySheetPages<P0>(&self, dwreserved: u32, pfn: super::Controls::LPFNSVADDPROPSHEETPAGE, lparam: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).base__.AddPropertySheetPages)(::windows::core::Vtable::as_raw(self), dwreserved, pfn, lparam.into()).ok()
}
pub unsafe fn SaveViewState(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SaveViewState)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SelectItem(&self, pidlitem: *const Common::ITEMIDLIST, uflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SelectItem)(::windows::core::Vtable::as_raw(self), pidlitem, uflags).ok()
}
pub unsafe fn GetItemObject<T>(&self, uitem: u32) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItemObject)(::windows::core::Vtable::as_raw(self), uitem, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetView(&self, pvid: *mut ::windows::core::GUID, uview: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetView)(::windows::core::Vtable::as_raw(self), pvid, uview).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn CreateViewWindow2(&self, lpparams: *const SV2CVW2_PARAMS) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).CreateViewWindow2)(::windows::core::Vtable::as_raw(self), lpparams).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn HandleRename(&self, pidlnew: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).HandleRename)(::windows::core::Vtable::as_raw(self), pidlnew).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn SelectAndPositionItem(&self, pidlitem: *const Common::ITEMIDLIST, uflags: u32, ppt: *const super::super::Foundation::POINT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SelectAndPositionItem)(::windows::core::Vtable::as_raw(self), pidlitem, uflags, ppt).ok()
}
}
#[cfg(feature = "Win32_System_Ole")]
::windows::core::interface_hierarchy!(IShellView2, ::windows::core::IUnknown, super::super::System::Ole::IOleWindow, IShellView);
#[cfg(feature = "Win32_System_Ole")]
impl ::core::clone::Clone for IShellView2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::PartialEq for IShellView2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::Eq for IShellView2 {}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::fmt::Debug for IShellView2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellView2").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Vtable for IShellView2 {
type Vtable = IShellView2_Vtbl;
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Interface for IShellView2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x88e39e80_3578_11cf_ae69_08002b2e1262);
}
#[cfg(feature = "Win32_System_Ole")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellView2_Vtbl {
pub base__: IShellView_Vtbl,
pub GetView: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pvid: *mut ::windows::core::GUID, uview: u32) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub CreateViewWindow2: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpparams: *const SV2CVW2_PARAMS) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Ole")))]
CreateViewWindow2: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub HandleRename: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidlnew: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
HandleRename: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub SelectAndPositionItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidlitem: *const Common::ITEMIDLIST, uflags: u32, ppt: *const super::super::Foundation::POINT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common")))]
SelectAndPositionItem: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
#[repr(transparent)]
pub struct IShellView3(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Ole")]
impl IShellView3 {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn GetWindow(&self) -> ::windows::core::Result<super::super::Foundation::HWND> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.base__.GetWindow)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn ContextSensitiveHelp<P0>(&self, fentermode: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.ContextSensitiveHelp)(::windows::core::Vtable::as_raw(self), fentermode.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn TranslateAccelerator(&self, pmsg: *const super::WindowsAndMessaging::MSG) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.TranslateAccelerator)(::windows::core::Vtable::as_raw(self), pmsg).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn EnableModeless<P0>(&self, fenable: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.EnableModeless)(::windows::core::Vtable::as_raw(self), fenable.into()).ok()
}
pub unsafe fn UIActivate(&self, ustate: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.UIActivate)(::windows::core::Vtable::as_raw(self), ustate).ok()
}
pub unsafe fn Refresh(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.Refresh)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn CreateViewWindow<P0, P1>(&self, psvprevious: P0, pfs: *const FOLDERSETTINGS, psb: P1, prcview: *const super::super::Foundation::RECT) -> ::windows::core::Result<super::super::Foundation::HWND>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellView>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellBrowser>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.CreateViewWindow)(::windows::core::Vtable::as_raw(self), psvprevious.into().abi(), pfs, psb.into().abi(), prcview, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn DestroyViewWindow(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.DestroyViewWindow)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GetCurrentInfo(&self) -> ::windows::core::Result<FOLDERSETTINGS> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetCurrentInfo)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Controls\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
pub unsafe fn AddPropertySheetPages<P0>(&self, dwreserved: u32, pfn: super::Controls::LPFNSVADDPROPSHEETPAGE, lparam: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::LPARAM>,
{
(::windows::core::Vtable::vtable(self).base__.base__.AddPropertySheetPages)(::windows::core::Vtable::as_raw(self), dwreserved, pfn, lparam.into()).ok()
}
pub unsafe fn SaveViewState(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.SaveViewState)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn SelectItem(&self, pidlitem: *const Common::ITEMIDLIST, uflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.SelectItem)(::windows::core::Vtable::as_raw(self), pidlitem, uflags).ok()
}
pub unsafe fn GetItemObject<T>(&self, uitem: u32) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.GetItemObject)(::windows::core::Vtable::as_raw(self), uitem, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetView(&self, pvid: *mut ::windows::core::GUID, uview: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetView)(::windows::core::Vtable::as_raw(self), pvid, uview).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn CreateViewWindow2(&self, lpparams: *const SV2CVW2_PARAMS) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.CreateViewWindow2)(::windows::core::Vtable::as_raw(self), lpparams).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn HandleRename(&self, pidlnew: *const Common::ITEMIDLIST) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.HandleRename)(::windows::core::Vtable::as_raw(self), pidlnew).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn SelectAndPositionItem(&self, pidlitem: *const Common::ITEMIDLIST, uflags: u32, ppt: *const super::super::Foundation::POINT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SelectAndPositionItem)(::windows::core::Vtable::as_raw(self), pidlitem, uflags, ppt).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub unsafe fn CreateViewWindow3<P0, P1>(&self, psbowner: P0, psvprev: P1, dwviewflags: u32, dwmask: FOLDERFLAGS, dwflags: FOLDERFLAGS, fvmode: FOLDERVIEWMODE, pvid: *const ::windows::core::GUID, prcview: *const super::super::Foundation::RECT) -> ::windows::core::Result<super::super::Foundation::HWND>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellBrowser>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellView>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CreateViewWindow3)(::windows::core::Vtable::as_raw(self), psbowner.into().abi(), psvprev.into().abi(), dwviewflags, dwmask, dwflags, fvmode, pvid, prcview, result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Ole")]
::windows::core::interface_hierarchy!(IShellView3, ::windows::core::IUnknown, super::super::System::Ole::IOleWindow, IShellView, IShellView2);
#[cfg(feature = "Win32_System_Ole")]
impl ::core::clone::Clone for IShellView3 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::PartialEq for IShellView3 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::Eq for IShellView3 {}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::fmt::Debug for IShellView3 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellView3").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Vtable for IShellView3 {
type Vtable = IShellView3_Vtbl;
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Interface for IShellView3 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xec39fa88_f8af_41c5_8421_38bed28f4673);
}
#[cfg(feature = "Win32_System_Ole")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellView3_Vtbl {
pub base__: IShellView2_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub CreateViewWindow3: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psbowner: *mut ::core::ffi::c_void, psvprev: *mut ::core::ffi::c_void, dwviewflags: u32, dwmask: FOLDERFLAGS, dwflags: FOLDERFLAGS, fvmode: FOLDERVIEWMODE, pvid: *const ::windows::core::GUID, prcview: *const super::super::Foundation::RECT, phwndview: *mut super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Ole")))]
CreateViewWindow3: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IShellWindows(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IShellWindows {
pub unsafe fn Count(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Count)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Item(&self, index: super::super::System::Com::VARIANT) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Item)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(index), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn _NewEnum(&self) -> ::windows::core::Result<::windows::core::IUnknown> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self)._NewEnum)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Register<P0>(&self, pid: P0, hwnd: i32, swclass: i32) -> ::windows::core::Result<i32>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IDispatch>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Register)(::windows::core::Vtable::as_raw(self), pid.into().abi(), hwnd, swclass, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn RegisterPending(&self, lthreadid: i32, pvarloc: *const super::super::System::Com::VARIANT, pvarlocroot: *const super::super::System::Com::VARIANT, swclass: i32) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).RegisterPending)(::windows::core::Vtable::as_raw(self), lthreadid, pvarloc, pvarlocroot, swclass, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Revoke(&self, lcookie: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Revoke)(::windows::core::Vtable::as_raw(self), lcookie).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn OnNavigate(&self, lcookie: i32, pvarloc: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OnNavigate)(::windows::core::Vtable::as_raw(self), lcookie, pvarloc).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnActivated<P0>(&self, lcookie: i32, factive: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).OnActivated)(::windows::core::Vtable::as_raw(self), lcookie, factive.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn FindWindowSW(&self, pvarloc: *const super::super::System::Com::VARIANT, pvarlocroot: *const super::super::System::Com::VARIANT, swclass: i32, phwnd: *mut i32, swfwoptions: i32, ppdispout: *mut ::core::option::Option<super::super::System::Com::IDispatch>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).FindWindowSW)(::windows::core::Vtable::as_raw(self), pvarloc, pvarlocroot, swclass, phwnd, swfwoptions, ::core::mem::transmute(ppdispout)).ok()
}
pub unsafe fn OnCreated<P0>(&self, lcookie: i32, punk: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).OnCreated)(::windows::core::Vtable::as_raw(self), lcookie, punk.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ProcessAttachDetach<P0>(&self, fattach: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).ProcessAttachDetach)(::windows::core::Vtable::as_raw(self), fattach.into()).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IShellWindows, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IShellWindows {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IShellWindows {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IShellWindows {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IShellWindows {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IShellWindows").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IShellWindows {
type Vtable = IShellWindows_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IShellWindows {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x85cb6900_4d95_11cf_960c_0080c7f4ee85);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IShellWindows_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
pub Count: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, count: *mut i32) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub Item: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, index: super::super::System::Com::VARIANT, folder: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
Item: usize,
pub _NewEnum: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppunk: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub Register: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pid: *mut ::core::ffi::c_void, hwnd: i32, swclass: i32, plcookie: *mut i32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Register: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub RegisterPending: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lthreadid: i32, pvarloc: *const super::super::System::Com::VARIANT, pvarlocroot: *const super::super::System::Com::VARIANT, swclass: i32, plcookie: *mut i32) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
RegisterPending: usize,
pub Revoke: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lcookie: i32) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub OnNavigate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lcookie: i32, pvarloc: *const super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
OnNavigate: usize,
#[cfg(feature = "Win32_Foundation")]
pub OnActivated: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lcookie: i32, factive: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
OnActivated: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub FindWindowSW: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pvarloc: *const super::super::System::Com::VARIANT, pvarlocroot: *const super::super::System::Com::VARIANT, swclass: i32, phwnd: *mut i32, swfwoptions: i32, ppdispout: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
FindWindowSW: usize,
pub OnCreated: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lcookie: i32, punk: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub ProcessAttachDetach: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fattach: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
ProcessAttachDetach: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISortColumnArray(::windows::core::IUnknown);
impl ISortColumnArray {
pub unsafe fn GetCount(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCount)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn GetAt(&self, index: u32, sortcolumn: *mut SORTCOLUMN) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetAt)(::windows::core::Vtable::as_raw(self), index, sortcolumn).ok()
}
pub unsafe fn GetSortType(&self) -> ::windows::core::Result<SORT_ORDER_TYPE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSortType)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ISortColumnArray, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISortColumnArray {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISortColumnArray {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISortColumnArray {}
impl ::core::fmt::Debug for ISortColumnArray {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISortColumnArray").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISortColumnArray {
type Vtable = ISortColumnArray_Vtbl;
}
unsafe impl ::windows::core::Interface for ISortColumnArray {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6dfc60fb_f2e9_459b_beb5_288f1a7c7d54);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISortColumnArray_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, columncount: *mut u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub GetAt: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, index: u32, sortcolumn: *mut SORTCOLUMN) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
GetAt: usize,
pub GetSortType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, r#type: *mut SORT_ORDER_TYPE) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IStartMenuPinnedList(::windows::core::IUnknown);
impl IStartMenuPinnedList {
pub unsafe fn RemoveFromList<P0>(&self, pitem: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).RemoveFromList)(::windows::core::Vtable::as_raw(self), pitem.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IStartMenuPinnedList, ::windows::core::IUnknown);
impl ::core::clone::Clone for IStartMenuPinnedList {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IStartMenuPinnedList {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IStartMenuPinnedList {}
impl ::core::fmt::Debug for IStartMenuPinnedList {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IStartMenuPinnedList").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IStartMenuPinnedList {
type Vtable = IStartMenuPinnedList_Vtbl;
}
unsafe impl ::windows::core::Interface for IStartMenuPinnedList {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4cd19ada_25a5_4a32_b3b7_347bee5be36b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IStartMenuPinnedList_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub RemoveFromList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pitem: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IStorageProviderBanners(::windows::core::IUnknown);
impl IStorageProviderBanners {
pub unsafe fn SetBanner<P0, P1, P2>(&self, provideridentity: P0, subscriptionid: P1, contentid: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetBanner)(::windows::core::Vtable::as_raw(self), provideridentity.into().abi(), subscriptionid.into().abi(), contentid.into().abi()).ok()
}
pub unsafe fn ClearBanner<P0, P1>(&self, provideridentity: P0, subscriptionid: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).ClearBanner)(::windows::core::Vtable::as_raw(self), provideridentity.into().abi(), subscriptionid.into().abi()).ok()
}
pub unsafe fn ClearAllBanners<P0>(&self, provideridentity: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).ClearAllBanners)(::windows::core::Vtable::as_raw(self), provideridentity.into().abi()).ok()
}
pub unsafe fn GetBanner<P0, P1>(&self, provideridentity: P0, subscriptionid: P1) -> ::windows::core::Result<::windows::core::PWSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetBanner)(::windows::core::Vtable::as_raw(self), provideridentity.into().abi(), subscriptionid.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IStorageProviderBanners, ::windows::core::IUnknown);
impl ::core::clone::Clone for IStorageProviderBanners {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IStorageProviderBanners {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IStorageProviderBanners {}
impl ::core::fmt::Debug for IStorageProviderBanners {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IStorageProviderBanners").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IStorageProviderBanners {
type Vtable = IStorageProviderBanners_Vtbl;
}
unsafe impl ::windows::core::Interface for IStorageProviderBanners {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5efb46d7_47c0_4b68_acda_ded47c90ec91);
}
#[repr(C)]
#[doc(hidden)]
pub struct IStorageProviderBanners_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetBanner: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, provideridentity: ::windows::core::PCWSTR, subscriptionid: ::windows::core::PCWSTR, contentid: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub ClearBanner: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, provideridentity: ::windows::core::PCWSTR, subscriptionid: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub ClearAllBanners: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, provideridentity: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub GetBanner: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, provideridentity: ::windows::core::PCWSTR, subscriptionid: ::windows::core::PCWSTR, contentid: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IStorageProviderCopyHook(::windows::core::IUnknown);
impl IStorageProviderCopyHook {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CopyCallback<P0, P1, P2>(&self, hwnd: P0, operation: u32, flags: u32, srcfile: P1, srcattribs: u32, destfile: P2, destattribs: u32) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CopyCallback)(::windows::core::Vtable::as_raw(self), hwnd.into(), operation, flags, srcfile.into().abi(), srcattribs, destfile.into().abi(), destattribs, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IStorageProviderCopyHook, ::windows::core::IUnknown);
impl ::core::clone::Clone for IStorageProviderCopyHook {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IStorageProviderCopyHook {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IStorageProviderCopyHook {}
impl ::core::fmt::Debug for IStorageProviderCopyHook {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IStorageProviderCopyHook").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IStorageProviderCopyHook {
type Vtable = IStorageProviderCopyHook_Vtbl;
}
unsafe impl ::windows::core::Interface for IStorageProviderCopyHook {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7bf992a9_af7a_4dba_b2e5_4d080b1ecbc6);
}
#[repr(C)]
#[doc(hidden)]
pub struct IStorageProviderCopyHook_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub CopyCallback: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, operation: u32, flags: u32, srcfile: ::windows::core::PCWSTR, srcattribs: u32, destfile: ::windows::core::PCWSTR, destattribs: u32, result: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
CopyCallback: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IStorageProviderHandler(::windows::core::IUnknown);
impl IStorageProviderHandler {
pub unsafe fn GetPropertyHandlerFromPath<P0>(&self, path: P0) -> ::windows::core::Result<IStorageProviderPropertyHandler>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPropertyHandlerFromPath)(::windows::core::Vtable::as_raw(self), path.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetPropertyHandlerFromUri<P0>(&self, uri: P0) -> ::windows::core::Result<IStorageProviderPropertyHandler>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPropertyHandlerFromUri)(::windows::core::Vtable::as_raw(self), uri.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetPropertyHandlerFromFileId<P0>(&self, fileid: P0) -> ::windows::core::Result<IStorageProviderPropertyHandler>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPropertyHandlerFromFileId)(::windows::core::Vtable::as_raw(self), fileid.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IStorageProviderHandler, ::windows::core::IUnknown);
impl ::core::clone::Clone for IStorageProviderHandler {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IStorageProviderHandler {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IStorageProviderHandler {}
impl ::core::fmt::Debug for IStorageProviderHandler {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IStorageProviderHandler").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IStorageProviderHandler {
type Vtable = IStorageProviderHandler_Vtbl;
}
unsafe impl ::windows::core::Interface for IStorageProviderHandler {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x162c6fb5_44d3_435b_903d_e613fa093fb5);
}
#[repr(C)]
#[doc(hidden)]
pub struct IStorageProviderHandler_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetPropertyHandlerFromPath: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, path: ::windows::core::PCWSTR, propertyhandler: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetPropertyHandlerFromUri: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uri: ::windows::core::PCWSTR, propertyhandler: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetPropertyHandlerFromFileId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fileid: ::windows::core::PCWSTR, propertyhandler: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IStorageProviderPropertyHandler(::windows::core::IUnknown);
impl IStorageProviderPropertyHandler {
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn RetrieveProperties(&self, propertiestoretrieve: &[PropertiesSystem::PROPERTYKEY]) -> ::windows::core::Result<PropertiesSystem::IPropertyStore> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).RetrieveProperties)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(propertiestoretrieve.as_ptr()), propertiestoretrieve.len() as _, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn SaveProperties<P0>(&self, propertiestosave: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<PropertiesSystem::IPropertyStore>>,
{
(::windows::core::Vtable::vtable(self).SaveProperties)(::windows::core::Vtable::as_raw(self), propertiestosave.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IStorageProviderPropertyHandler, ::windows::core::IUnknown);
impl ::core::clone::Clone for IStorageProviderPropertyHandler {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IStorageProviderPropertyHandler {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IStorageProviderPropertyHandler {}
impl ::core::fmt::Debug for IStorageProviderPropertyHandler {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IStorageProviderPropertyHandler").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IStorageProviderPropertyHandler {
type Vtable = IStorageProviderPropertyHandler_Vtbl;
}
unsafe impl ::windows::core::Interface for IStorageProviderPropertyHandler {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x301dfbe5_524c_4b0f_8b2d_21c40b3a2988);
}
#[repr(C)]
#[doc(hidden)]
pub struct IStorageProviderPropertyHandler_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub RetrieveProperties: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, propertiestoretrieve: *const PropertiesSystem::PROPERTYKEY, propertiestoretrievecount: u32, retrievedproperties: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
RetrieveProperties: usize,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub SaveProperties: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, propertiestosave: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
SaveProperties: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IStreamAsync(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IStreamAsync {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Read(&self, pv: *mut ::core::ffi::c_void, cb: u32, pcbread: ::core::option::Option<*mut u32>) -> ::windows::core::HRESULT {
(::windows::core::Vtable::vtable(self).base__.base__.Read)(::windows::core::Vtable::as_raw(self), pv, cb, ::core::mem::transmute(pcbread.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Write(&self, pv: *const ::core::ffi::c_void, cb: u32, pcbwritten: ::core::option::Option<*mut u32>) -> ::windows::core::HRESULT {
(::windows::core::Vtable::vtable(self).base__.base__.Write)(::windows::core::Vtable::as_raw(self), pv, cb, ::core::mem::transmute(pcbwritten.unwrap_or(::std::ptr::null_mut())))
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Seek(&self, dlibmove: i64, dworigin: super::super::System::Com::STREAM_SEEK, plibnewposition: ::core::option::Option<*mut u64>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Seek)(::windows::core::Vtable::as_raw(self), dlibmove, dworigin, ::core::mem::transmute(plibnewposition.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn SetSize(&self, libnewsize: u64) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetSize)(::windows::core::Vtable::as_raw(self), libnewsize).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn CopyTo<P0>(&self, pstm: P0, cb: u64, pcbread: ::core::option::Option<*mut u64>, pcbwritten: ::core::option::Option<*mut u64>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
(::windows::core::Vtable::vtable(self).base__.CopyTo)(::windows::core::Vtable::as_raw(self), pstm.into().abi(), cb, ::core::mem::transmute(pcbread.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pcbwritten.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Commit(&self, grfcommitflags: super::super::System::Com::STGC) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Commit)(::windows::core::Vtable::as_raw(self), grfcommitflags).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Revert(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Revert)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn LockRegion(&self, liboffset: u64, cb: u64, dwlocktype: super::super::System::Com::LOCKTYPE) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.LockRegion)(::windows::core::Vtable::as_raw(self), liboffset, cb, dwlocktype).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn UnlockRegion(&self, liboffset: u64, cb: u64, dwlocktype: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.UnlockRegion)(::windows::core::Vtable::as_raw(self), liboffset, cb, dwlocktype).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
pub unsafe fn Stat(&self, pstatstg: *mut super::super::System::Com::STATSTG, grfstatflag: super::super::System::Com::STATFLAG) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Stat)(::windows::core::Vtable::as_raw(self), pstatstg, grfstatflag).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Clone(&self) -> ::windows::core::Result<super::super::System::Com::IStream> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Clone)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))]
pub unsafe fn ReadAsync(&self, pv: *mut ::core::ffi::c_void, cb: u32, pcbread: ::core::option::Option<*mut u32>, lpoverlapped: *const super::super::System::IO::OVERLAPPED) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ReadAsync)(::windows::core::Vtable::as_raw(self), pv, cb, ::core::mem::transmute(pcbread.unwrap_or(::std::ptr::null_mut())), lpoverlapped).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))]
pub unsafe fn WriteAsync(&self, lpbuffer: *const ::core::ffi::c_void, cb: u32, pcbwritten: ::core::option::Option<*mut u32>, lpoverlapped: *const super::super::System::IO::OVERLAPPED) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).WriteAsync)(::windows::core::Vtable::as_raw(self), lpbuffer, cb, ::core::mem::transmute(pcbwritten.unwrap_or(::std::ptr::null_mut())), lpoverlapped).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))]
pub unsafe fn OverlappedResult<P0>(&self, lpoverlapped: *const super::super::System::IO::OVERLAPPED, lpnumberofbytestransferred: *mut u32, bwait: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).OverlappedResult)(::windows::core::Vtable::as_raw(self), lpoverlapped, lpnumberofbytestransferred, bwait.into()).ok()
}
pub unsafe fn CancelIo(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).CancelIo)(::windows::core::Vtable::as_raw(self)).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IStreamAsync, ::windows::core::IUnknown, super::super::System::Com::ISequentialStream, super::super::System::Com::IStream);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IStreamAsync {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IStreamAsync {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IStreamAsync {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IStreamAsync {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IStreamAsync").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IStreamAsync {
type Vtable = IStreamAsync_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IStreamAsync {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfe0b6665_e0ca_49b9_a178_2b5cb48d92a5);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IStreamAsync_Vtbl {
pub base__: super::super::System::Com::IStream_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))]
pub ReadAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pv: *mut ::core::ffi::c_void, cb: u32, pcbread: *mut u32, lpoverlapped: *const super::super::System::IO::OVERLAPPED) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_IO")))]
ReadAsync: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))]
pub WriteAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpbuffer: *const ::core::ffi::c_void, cb: u32, pcbwritten: *mut u32, lpoverlapped: *const super::super::System::IO::OVERLAPPED) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_IO")))]
WriteAsync: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))]
pub OverlappedResult: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpoverlapped: *const super::super::System::IO::OVERLAPPED, lpnumberofbytestransferred: *mut u32, bwait: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_IO")))]
OverlappedResult: usize,
pub CancelIo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IStreamUnbufferedInfo(::windows::core::IUnknown);
impl IStreamUnbufferedInfo {
pub unsafe fn GetSectorSize(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSectorSize)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IStreamUnbufferedInfo, ::windows::core::IUnknown);
impl ::core::clone::Clone for IStreamUnbufferedInfo {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IStreamUnbufferedInfo {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IStreamUnbufferedInfo {}
impl ::core::fmt::Debug for IStreamUnbufferedInfo {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IStreamUnbufferedInfo").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IStreamUnbufferedInfo {
type Vtable = IStreamUnbufferedInfo_Vtbl;
}
unsafe impl ::windows::core::Interface for IStreamUnbufferedInfo {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8a68fdda_1fdc_4c20_8ceb_416643b5a625);
}
#[repr(C)]
#[doc(hidden)]
pub struct IStreamUnbufferedInfo_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetSectorSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcbsectorsize: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISuspensionDependencyManager(::windows::core::IUnknown);
impl ISuspensionDependencyManager {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RegisterAsChild<P0>(&self, processhandle: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
(::windows::core::Vtable::vtable(self).RegisterAsChild)(::windows::core::Vtable::as_raw(self), processhandle.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GroupChildWithParent<P0>(&self, childprocesshandle: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
(::windows::core::Vtable::vtable(self).GroupChildWithParent)(::windows::core::Vtable::as_raw(self), childprocesshandle.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn UngroupChildFromParent<P0>(&self, childprocesshandle: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HANDLE>,
{
(::windows::core::Vtable::vtable(self).UngroupChildFromParent)(::windows::core::Vtable::as_raw(self), childprocesshandle.into()).ok()
}
}
::windows::core::interface_hierarchy!(ISuspensionDependencyManager, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISuspensionDependencyManager {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISuspensionDependencyManager {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISuspensionDependencyManager {}
impl ::core::fmt::Debug for ISuspensionDependencyManager {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISuspensionDependencyManager").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISuspensionDependencyManager {
type Vtable = ISuspensionDependencyManager_Vtbl;
}
unsafe impl ::windows::core::Interface for ISuspensionDependencyManager {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x52b83a42_2543_416a_81d9_c0de7969c8b3);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISuspensionDependencyManager_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub RegisterAsChild: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, processhandle: super::super::Foundation::HANDLE) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
RegisterAsChild: usize,
#[cfg(feature = "Win32_Foundation")]
pub GroupChildWithParent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, childprocesshandle: super::super::Foundation::HANDLE) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GroupChildWithParent: usize,
#[cfg(feature = "Win32_Foundation")]
pub UngroupChildFromParent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, childprocesshandle: super::super::Foundation::HANDLE) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
UngroupChildFromParent: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrConflict(::windows::core::IUnknown);
impl ISyncMgrConflict {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub unsafe fn GetProperty(&self, propkey: *const PropertiesSystem::PROPERTYKEY) -> ::windows::core::Result<super::super::System::Com::StructuredStorage::PROPVARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetProperty)(::windows::core::Vtable::as_raw(self), propkey, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn GetConflictIdInfo(&self) -> ::windows::core::Result<SYNCMGR_CONFLICT_ID_INFO> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetConflictIdInfo)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetItemsArray(&self) -> ::windows::core::Result<ISyncMgrConflictItems> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItemsArray)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Resolve<P0>(&self, presolveinfo: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ISyncMgrConflictResolveInfo>>,
{
(::windows::core::Vtable::vtable(self).Resolve)(::windows::core::Vtable::as_raw(self), presolveinfo.into().abi()).ok()
}
pub unsafe fn GetResolutionHandler<T>(&self) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetResolutionHandler)(::windows::core::Vtable::as_raw(self), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ISyncMgrConflict, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrConflict {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrConflict {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrConflict {}
impl ::core::fmt::Debug for ISyncMgrConflict {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrConflict").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrConflict {
type Vtable = ISyncMgrConflict_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrConflict {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9c204249_c443_4ba4_85ed_c972681db137);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrConflict_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub GetProperty: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, propkey: *const PropertiesSystem::PROPERTYKEY, ppropvar: *mut super::super::System::Com::StructuredStorage::PROPVARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_UI_Shell_PropertiesSystem")))]
GetProperty: usize,
#[cfg(feature = "Win32_System_Com")]
pub GetConflictIdInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pconflictidinfo: *mut SYNCMGR_CONFLICT_ID_INFO) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
GetConflictIdInfo: usize,
pub GetItemsArray: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pparray: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Resolve: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, presolveinfo: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetResolutionHandler: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppvresolutionhandler: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrConflictFolder(::windows::core::IUnknown);
impl ISyncMgrConflictFolder {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetConflictIDList<P0>(&self, pconflict: P0) -> ::windows::core::Result<*mut Common::ITEMIDLIST>
where
P0: ::std::convert::Into<::windows::core::InParam<ISyncMgrConflict>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetConflictIDList)(::windows::core::Vtable::as_raw(self), pconflict.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ISyncMgrConflictFolder, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrConflictFolder {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrConflictFolder {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrConflictFolder {}
impl ::core::fmt::Debug for ISyncMgrConflictFolder {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrConflictFolder").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrConflictFolder {
type Vtable = ISyncMgrConflictFolder_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrConflictFolder {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x59287f5e_bc81_4fca_a7f1_e5a8ecdb1d69);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrConflictFolder_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetConflictIDList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pconflict: *mut ::core::ffi::c_void, ppidlconflict: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetConflictIDList: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrConflictItems(::windows::core::IUnknown);
impl ISyncMgrConflictItems {
pub unsafe fn GetCount(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCount)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetItem(&self, iindex: u32, piteminfo: *mut CONFIRM_CONFLICT_ITEM) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetItem)(::windows::core::Vtable::as_raw(self), iindex, piteminfo).ok()
}
}
::windows::core::interface_hierarchy!(ISyncMgrConflictItems, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrConflictItems {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrConflictItems {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrConflictItems {}
impl ::core::fmt::Debug for ISyncMgrConflictItems {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrConflictItems").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrConflictItems {
type Vtable = ISyncMgrConflictItems_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrConflictItems {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9c7ead52_8023_4936_a4db_d2a9a99e436a);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrConflictItems_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcount: *mut u32) -> ::windows::core::HRESULT,
pub GetItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, iindex: u32, piteminfo: *mut CONFIRM_CONFLICT_ITEM) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrConflictPresenter(::windows::core::IUnknown);
impl ISyncMgrConflictPresenter {
pub unsafe fn PresentConflict<P0, P1>(&self, pconflict: P0, presolveinfo: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ISyncMgrConflict>>,
P1: ::std::convert::Into<::windows::core::InParam<ISyncMgrConflictResolveInfo>>,
{
(::windows::core::Vtable::vtable(self).PresentConflict)(::windows::core::Vtable::as_raw(self), pconflict.into().abi(), presolveinfo.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(ISyncMgrConflictPresenter, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrConflictPresenter {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrConflictPresenter {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrConflictPresenter {}
impl ::core::fmt::Debug for ISyncMgrConflictPresenter {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrConflictPresenter").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrConflictPresenter {
type Vtable = ISyncMgrConflictPresenter_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrConflictPresenter {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0b4f5353_fd2b_42cd_8763_4779f2d508a3);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrConflictPresenter_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub PresentConflict: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pconflict: *mut ::core::ffi::c_void, presolveinfo: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrConflictResolutionItems(::windows::core::IUnknown);
impl ISyncMgrConflictResolutionItems {
pub unsafe fn GetCount(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCount)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetItem(&self, iindex: u32) -> ::windows::core::Result<CONFIRM_CONFLICT_RESULT_INFO> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItem)(::windows::core::Vtable::as_raw(self), iindex, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ISyncMgrConflictResolutionItems, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrConflictResolutionItems {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrConflictResolutionItems {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrConflictResolutionItems {}
impl ::core::fmt::Debug for ISyncMgrConflictResolutionItems {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrConflictResolutionItems").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrConflictResolutionItems {
type Vtable = ISyncMgrConflictResolutionItems_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrConflictResolutionItems {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x458725b9_129d_4135_a998_9ceafec27007);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrConflictResolutionItems_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcount: *mut u32) -> ::windows::core::HRESULT,
pub GetItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, iindex: u32, piteminfo: *mut CONFIRM_CONFLICT_RESULT_INFO) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrConflictResolveInfo(::windows::core::IUnknown);
impl ISyncMgrConflictResolveInfo {
pub unsafe fn GetIterationInfo(&self, pncurrentconflict: *mut u32, pcconflicts: *mut u32, pcremainingforapplytoall: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetIterationInfo)(::windows::core::Vtable::as_raw(self), pncurrentconflict, pcconflicts, pcremainingforapplytoall).ok()
}
pub unsafe fn GetPresenterNextStep(&self) -> ::windows::core::Result<SYNCMGR_PRESENTER_NEXT_STEP> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPresenterNextStep)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetPresenterChoice(&self, pnpresenterchoice: *mut SYNCMGR_PRESENTER_CHOICE, pfapplytoall: *mut super::super::Foundation::BOOL) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetPresenterChoice)(::windows::core::Vtable::as_raw(self), pnpresenterchoice, pfapplytoall).ok()
}
pub unsafe fn GetItemChoiceCount(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItemChoiceCount)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetItemChoice(&self, ichoice: u32) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItemChoice)(::windows::core::Vtable::as_raw(self), ichoice, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetPresenterNextStep(&self, npresenternextstep: SYNCMGR_PRESENTER_NEXT_STEP) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetPresenterNextStep)(::windows::core::Vtable::as_raw(self), npresenternextstep).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetPresenterChoice<P0>(&self, npresenterchoice: SYNCMGR_PRESENTER_CHOICE, fapplytoall: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetPresenterChoice)(::windows::core::Vtable::as_raw(self), npresenterchoice, fapplytoall.into()).ok()
}
pub unsafe fn SetItemChoices(&self, prgiconflictitemindexes: *mut u32, cchoices: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetItemChoices)(::windows::core::Vtable::as_raw(self), prgiconflictitemindexes, cchoices).ok()
}
}
::windows::core::interface_hierarchy!(ISyncMgrConflictResolveInfo, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrConflictResolveInfo {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrConflictResolveInfo {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrConflictResolveInfo {}
impl ::core::fmt::Debug for ISyncMgrConflictResolveInfo {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrConflictResolveInfo").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrConflictResolveInfo {
type Vtable = ISyncMgrConflictResolveInfo_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrConflictResolveInfo {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc405a219_25a2_442e_8743_b845a2cee93f);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrConflictResolveInfo_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetIterationInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pncurrentconflict: *mut u32, pcconflicts: *mut u32, pcremainingforapplytoall: *mut u32) -> ::windows::core::HRESULT,
pub GetPresenterNextStep: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pnpresenternextstep: *mut SYNCMGR_PRESENTER_NEXT_STEP) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetPresenterChoice: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pnpresenterchoice: *mut SYNCMGR_PRESENTER_CHOICE, pfapplytoall: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetPresenterChoice: usize,
pub GetItemChoiceCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcchoices: *mut u32) -> ::windows::core::HRESULT,
pub GetItemChoice: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ichoice: u32, pichoiceindex: *mut u32) -> ::windows::core::HRESULT,
pub SetPresenterNextStep: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, npresenternextstep: SYNCMGR_PRESENTER_NEXT_STEP) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub SetPresenterChoice: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, npresenterchoice: SYNCMGR_PRESENTER_CHOICE, fapplytoall: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetPresenterChoice: usize,
pub SetItemChoices: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, prgiconflictitemindexes: *mut u32, cchoices: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrConflictStore(::windows::core::IUnknown);
impl ISyncMgrConflictStore {
pub unsafe fn EnumConflicts<P0, P1>(&self, pszhandlerid: P0, pszitemid: P1) -> ::windows::core::Result<IEnumSyncMgrConflict>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).EnumConflicts)(::windows::core::Vtable::as_raw(self), pszhandlerid.into().abi(), pszitemid.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn BindToConflict<T>(&self, pconflictidinfo: *const SYNCMGR_CONFLICT_ID_INFO) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).BindToConflict)(::windows::core::Vtable::as_raw(self), pconflictidinfo, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn RemoveConflicts(&self, rgconflictidinfo: &[SYNCMGR_CONFLICT_ID_INFO]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RemoveConflicts)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(rgconflictidinfo.as_ptr()), rgconflictidinfo.len() as _).ok()
}
pub unsafe fn GetCount<P0, P1>(&self, pszhandlerid: P0, pszitemid: P1) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCount)(::windows::core::Vtable::as_raw(self), pszhandlerid.into().abi(), pszitemid.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ISyncMgrConflictStore, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrConflictStore {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrConflictStore {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrConflictStore {}
impl ::core::fmt::Debug for ISyncMgrConflictStore {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrConflictStore").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrConflictStore {
type Vtable = ISyncMgrConflictStore_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrConflictStore {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcf8fc579_c396_4774_85f1_d908a831156e);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrConflictStore_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub EnumConflicts: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszhandlerid: ::windows::core::PCWSTR, pszitemid: ::windows::core::PCWSTR, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub BindToConflict: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pconflictidinfo: *const SYNCMGR_CONFLICT_ID_INFO, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
BindToConflict: usize,
#[cfg(feature = "Win32_System_Com")]
pub RemoveConflicts: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rgconflictidinfo: *const SYNCMGR_CONFLICT_ID_INFO, cconflicts: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
RemoveConflicts: usize,
pub GetCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszhandlerid: ::windows::core::PCWSTR, pszitemid: ::windows::core::PCWSTR, pnconflicts: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrControl(::windows::core::IUnknown);
impl ISyncMgrControl {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn StartHandlerSync<P0, P1, P2, P3>(&self, pszhandlerid: P0, hwndowner: P1, punk: P2, nsynccontrolflags: SYNCMGR_SYNC_CONTROL_FLAGS, presult: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P3: ::std::convert::Into<::windows::core::InParam<ISyncMgrSyncResult>>,
{
(::windows::core::Vtable::vtable(self).StartHandlerSync)(::windows::core::Vtable::as_raw(self), pszhandlerid.into().abi(), hwndowner.into(), punk.into().abi(), nsynccontrolflags, presult.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn StartItemSync<P0, P1, P2, P3>(&self, pszhandlerid: P0, ppszitemids: &[::windows::core::PCWSTR], hwndowner: P1, punk: P2, nsynccontrolflags: SYNCMGR_SYNC_CONTROL_FLAGS, presult: P3) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P3: ::std::convert::Into<::windows::core::InParam<ISyncMgrSyncResult>>,
{
(::windows::core::Vtable::vtable(self).StartItemSync)(::windows::core::Vtable::as_raw(self), pszhandlerid.into().abi(), ::core::mem::transmute(ppszitemids.as_ptr()), ppszitemids.len() as _, hwndowner.into(), punk.into().abi(), nsynccontrolflags, presult.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn StartSyncAll<P0>(&self, hwndowner: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).StartSyncAll)(::windows::core::Vtable::as_raw(self), hwndowner.into()).ok()
}
pub unsafe fn StopHandlerSync<P0>(&self, pszhandlerid: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).StopHandlerSync)(::windows::core::Vtable::as_raw(self), pszhandlerid.into().abi()).ok()
}
pub unsafe fn StopItemSync<P0>(&self, pszhandlerid: P0, ppszitemids: &[::windows::core::PCWSTR]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).StopItemSync)(::windows::core::Vtable::as_raw(self), pszhandlerid.into().abi(), ::core::mem::transmute(ppszitemids.as_ptr()), ppszitemids.len() as _).ok()
}
pub unsafe fn StopSyncAll(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).StopSyncAll)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn UpdateHandlerCollection(&self, rclsidcollectionid: *const ::windows::core::GUID, ncontrolflags: SYNCMGR_CONTROL_FLAGS) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UpdateHandlerCollection)(::windows::core::Vtable::as_raw(self), rclsidcollectionid, ncontrolflags).ok()
}
pub unsafe fn UpdateHandler<P0>(&self, pszhandlerid: P0, ncontrolflags: SYNCMGR_CONTROL_FLAGS) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).UpdateHandler)(::windows::core::Vtable::as_raw(self), pszhandlerid.into().abi(), ncontrolflags).ok()
}
pub unsafe fn UpdateItem<P0, P1>(&self, pszhandlerid: P0, pszitemid: P1, ncontrolflags: SYNCMGR_CONTROL_FLAGS) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).UpdateItem)(::windows::core::Vtable::as_raw(self), pszhandlerid.into().abi(), pszitemid.into().abi(), ncontrolflags).ok()
}
pub unsafe fn UpdateEvents<P0, P1>(&self, pszhandlerid: P0, pszitemid: P1, ncontrolflags: SYNCMGR_CONTROL_FLAGS) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).UpdateEvents)(::windows::core::Vtable::as_raw(self), pszhandlerid.into().abi(), pszitemid.into().abi(), ncontrolflags).ok()
}
pub unsafe fn UpdateConflict<P0, P1, P2>(&self, pszhandlerid: P0, pszitemid: P1, pconflict: P2, nreason: SYNCMGR_UPDATE_REASON) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<ISyncMgrConflict>>,
{
(::windows::core::Vtable::vtable(self).UpdateConflict)(::windows::core::Vtable::as_raw(self), pszhandlerid.into().abi(), pszitemid.into().abi(), pconflict.into().abi(), nreason).ok()
}
pub unsafe fn UpdateConflicts<P0, P1>(&self, pszhandlerid: P0, pszitemid: P1, ncontrolflags: SYNCMGR_CONTROL_FLAGS) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).UpdateConflicts)(::windows::core::Vtable::as_raw(self), pszhandlerid.into().abi(), pszitemid.into().abi(), ncontrolflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ActivateHandler<P0, P1, P2>(&self, factivate: P0, pszhandlerid: P1, hwndowner: P2, ncontrolflags: SYNCMGR_CONTROL_FLAGS) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).ActivateHandler)(::windows::core::Vtable::as_raw(self), factivate.into(), pszhandlerid.into().abi(), hwndowner.into(), ncontrolflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn EnableHandler<P0, P1, P2>(&self, fenable: P0, pszhandlerid: P1, hwndowner: P2, ncontrolflags: SYNCMGR_CONTROL_FLAGS) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).EnableHandler)(::windows::core::Vtable::as_raw(self), fenable.into(), pszhandlerid.into().abi(), hwndowner.into(), ncontrolflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn EnableItem<P0, P1, P2, P3>(&self, fenable: P0, pszhandlerid: P1, pszitemid: P2, hwndowner: P3, ncontrolflags: SYNCMGR_CONTROL_FLAGS) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).EnableItem)(::windows::core::Vtable::as_raw(self), fenable.into(), pszhandlerid.into().abi(), pszitemid.into().abi(), hwndowner.into(), ncontrolflags).ok()
}
}
::windows::core::interface_hierarchy!(ISyncMgrControl, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrControl {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrControl {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrControl {}
impl ::core::fmt::Debug for ISyncMgrControl {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrControl").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrControl {
type Vtable = ISyncMgrControl_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrControl {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9b63616c_36b2_46bc_959f_c1593952d19b);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrControl_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub StartHandlerSync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszhandlerid: ::windows::core::PCWSTR, hwndowner: super::super::Foundation::HWND, punk: *mut ::core::ffi::c_void, nsynccontrolflags: SYNCMGR_SYNC_CONTROL_FLAGS, presult: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
StartHandlerSync: usize,
#[cfg(feature = "Win32_Foundation")]
pub StartItemSync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszhandlerid: ::windows::core::PCWSTR, ppszitemids: *const ::windows::core::PCWSTR, citems: u32, hwndowner: super::super::Foundation::HWND, punk: *mut ::core::ffi::c_void, nsynccontrolflags: SYNCMGR_SYNC_CONTROL_FLAGS, presult: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
StartItemSync: usize,
#[cfg(feature = "Win32_Foundation")]
pub StartSyncAll: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndowner: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
StartSyncAll: usize,
pub StopHandlerSync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszhandlerid: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub StopItemSync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszhandlerid: ::windows::core::PCWSTR, ppszitemids: *const ::windows::core::PCWSTR, citems: u32) -> ::windows::core::HRESULT,
pub StopSyncAll: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub UpdateHandlerCollection: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rclsidcollectionid: *const ::windows::core::GUID, ncontrolflags: SYNCMGR_CONTROL_FLAGS) -> ::windows::core::HRESULT,
pub UpdateHandler: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszhandlerid: ::windows::core::PCWSTR, ncontrolflags: SYNCMGR_CONTROL_FLAGS) -> ::windows::core::HRESULT,
pub UpdateItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszhandlerid: ::windows::core::PCWSTR, pszitemid: ::windows::core::PCWSTR, ncontrolflags: SYNCMGR_CONTROL_FLAGS) -> ::windows::core::HRESULT,
pub UpdateEvents: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszhandlerid: ::windows::core::PCWSTR, pszitemid: ::windows::core::PCWSTR, ncontrolflags: SYNCMGR_CONTROL_FLAGS) -> ::windows::core::HRESULT,
pub UpdateConflict: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszhandlerid: ::windows::core::PCWSTR, pszitemid: ::windows::core::PCWSTR, pconflict: *mut ::core::ffi::c_void, nreason: SYNCMGR_UPDATE_REASON) -> ::windows::core::HRESULT,
pub UpdateConflicts: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszhandlerid: ::windows::core::PCWSTR, pszitemid: ::windows::core::PCWSTR, ncontrolflags: SYNCMGR_CONTROL_FLAGS) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub ActivateHandler: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, factivate: super::super::Foundation::BOOL, pszhandlerid: ::windows::core::PCWSTR, hwndowner: super::super::Foundation::HWND, ncontrolflags: SYNCMGR_CONTROL_FLAGS) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
ActivateHandler: usize,
#[cfg(feature = "Win32_Foundation")]
pub EnableHandler: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fenable: super::super::Foundation::BOOL, pszhandlerid: ::windows::core::PCWSTR, hwndowner: super::super::Foundation::HWND, ncontrolflags: SYNCMGR_CONTROL_FLAGS) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
EnableHandler: usize,
#[cfg(feature = "Win32_Foundation")]
pub EnableItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fenable: super::super::Foundation::BOOL, pszhandlerid: ::windows::core::PCWSTR, pszitemid: ::windows::core::PCWSTR, hwndowner: super::super::Foundation::HWND, ncontrolflags: SYNCMGR_CONTROL_FLAGS) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
EnableItem: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrEnumItems(::windows::core::IUnknown);
impl ISyncMgrEnumItems {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn Next(&self, rgelt: &mut [SYNCMGRITEM], pceltfetched: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Next)(::windows::core::Vtable::as_raw(self), rgelt.len() as _, ::core::mem::transmute(rgelt.as_ptr()), pceltfetched).ok()
}
pub unsafe fn Skip(&self, celt: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Skip)(::windows::core::Vtable::as_raw(self), celt).ok()
}
pub unsafe fn Reset(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Reset)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Clone(&self) -> ::windows::core::Result<ISyncMgrEnumItems> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Clone)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ISyncMgrEnumItems, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrEnumItems {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrEnumItems {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrEnumItems {}
impl ::core::fmt::Debug for ISyncMgrEnumItems {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrEnumItems").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrEnumItems {
type Vtable = ISyncMgrEnumItems_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrEnumItems {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6295df2a_35ee_11d1_8707_00c04fd93327);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrEnumItems_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub Next: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32, rgelt: *mut SYNCMGRITEM, pceltfetched: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
Next: usize,
pub Skip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32) -> ::windows::core::HRESULT,
pub Reset: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Clone: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrEvent(::windows::core::IUnknown);
impl ISyncMgrEvent {
pub unsafe fn GetEventID(&self) -> ::windows::core::Result<::windows::core::GUID> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetEventID)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetHandlerID(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetHandlerID)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetItemID(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItemID)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetLevel(&self) -> ::windows::core::Result<SYNCMGR_EVENT_LEVEL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetLevel)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetFlags(&self) -> ::windows::core::Result<SYNCMGR_EVENT_FLAGS> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFlags)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetTime(&self) -> ::windows::core::Result<super::super::Foundation::FILETIME> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetTime)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetName(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetName)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetDescription(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetDescription)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetLinkText(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetLinkText)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetLinkReference(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetLinkReference)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetContext(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetContext)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ISyncMgrEvent, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrEvent {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrEvent {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrEvent {}
impl ::core::fmt::Debug for ISyncMgrEvent {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrEvent").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrEvent {
type Vtable = ISyncMgrEvent_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrEvent {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfee0ef8b_46bd_4db4_b7e6_ff2c687313bc);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrEvent_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetEventID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pguideventid: *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
pub GetHandlerID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszhandlerid: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetItemID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszitemid: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetLevel: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pnlevel: *mut SYNCMGR_EVENT_LEVEL) -> ::windows::core::HRESULT,
pub GetFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pnflags: *mut SYNCMGR_EVENT_FLAGS) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetTime: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfcreationtime: *mut super::super::Foundation::FILETIME) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetTime: usize,
pub GetName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszname: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetDescription: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszdescription: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetLinkText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszlinktext: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetLinkReference: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszlinkreference: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetContext: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszcontext: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrEventLinkUIOperation(::windows::core::IUnknown);
impl ISyncMgrEventLinkUIOperation {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Run<P0>(&self, hwndowner: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.Run)(::windows::core::Vtable::as_raw(self), hwndowner.into()).ok()
}
pub unsafe fn Init<P0>(&self, rguideventid: *const ::windows::core::GUID, pevent: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ISyncMgrEvent>>,
{
(::windows::core::Vtable::vtable(self).Init)(::windows::core::Vtable::as_raw(self), rguideventid, pevent.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(ISyncMgrEventLinkUIOperation, ::windows::core::IUnknown, ISyncMgrUIOperation);
impl ::core::clone::Clone for ISyncMgrEventLinkUIOperation {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrEventLinkUIOperation {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrEventLinkUIOperation {}
impl ::core::fmt::Debug for ISyncMgrEventLinkUIOperation {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrEventLinkUIOperation").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrEventLinkUIOperation {
type Vtable = ISyncMgrEventLinkUIOperation_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrEventLinkUIOperation {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x64522e52_848b_4015_89ce_5a36f00b94ff);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrEventLinkUIOperation_Vtbl {
pub base__: ISyncMgrUIOperation_Vtbl,
pub Init: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rguideventid: *const ::windows::core::GUID, pevent: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrEventStore(::windows::core::IUnknown);
impl ISyncMgrEventStore {
pub unsafe fn GetEventEnumerator(&self) -> ::windows::core::Result<IEnumSyncMgrEvents> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetEventEnumerator)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetEventCount(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetEventCount)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetEvent(&self, rguideventid: *const ::windows::core::GUID) -> ::windows::core::Result<ISyncMgrEvent> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetEvent)(::windows::core::Vtable::as_raw(self), rguideventid, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn RemoveEvent(&self, pguideventids: &[::windows::core::GUID]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).RemoveEvent)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pguideventids.as_ptr()), pguideventids.len() as _).ok()
}
}
::windows::core::interface_hierarchy!(ISyncMgrEventStore, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrEventStore {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrEventStore {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrEventStore {}
impl ::core::fmt::Debug for ISyncMgrEventStore {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrEventStore").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrEventStore {
type Vtable = ISyncMgrEventStore_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrEventStore {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x37e412f9_016e_44c2_81ff_db3add774266);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrEventStore_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetEventEnumerator: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetEventCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcevents: *mut u32) -> ::windows::core::HRESULT,
pub GetEvent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rguideventid: *const ::windows::core::GUID, ppevent: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub RemoveEvent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pguideventids: *const ::windows::core::GUID, cevents: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrHandler(::windows::core::IUnknown);
impl ISyncMgrHandler {
pub unsafe fn GetName(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetName)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetHandlerInfo(&self) -> ::windows::core::Result<ISyncMgrHandlerInfo> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetHandlerInfo)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetObject<T>(&self, rguidobjectid: *const ::windows::core::GUID) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetObject)(::windows::core::Vtable::as_raw(self), rguidobjectid, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetCapabilities(&self) -> ::windows::core::Result<SYNCMGR_HANDLER_CAPABILITIES> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCapabilities)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetPolicies(&self) -> ::windows::core::Result<SYNCMGR_HANDLER_POLICIES> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPolicies)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Activate<P0>(&self, factivate: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).Activate)(::windows::core::Vtable::as_raw(self), factivate.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Enable<P0>(&self, fenable: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).Enable)(::windows::core::Vtable::as_raw(self), fenable.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Synchronize<P0, P1, P2>(&self, ppszitemids: &[::windows::core::PCWSTR], hwndowner: P0, psessioncreator: P1, punk: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<ISyncMgrSessionCreator>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).Synchronize)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(ppszitemids.as_ptr()), ppszitemids.len() as _, hwndowner.into(), psessioncreator.into().abi(), punk.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(ISyncMgrHandler, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrHandler {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrHandler {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrHandler {}
impl ::core::fmt::Debug for ISyncMgrHandler {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrHandler").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrHandler {
type Vtable = ISyncMgrHandler_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrHandler {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x04ec2e43_ac77_49f9_9b98_0307ef7a72a2);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrHandler_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszname: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetHandlerInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pphandlerinfo: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rguidobjectid: *const ::windows::core::GUID, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetCapabilities: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pmcapabilities: *mut SYNCMGR_HANDLER_CAPABILITIES) -> ::windows::core::HRESULT,
pub GetPolicies: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pmpolicies: *mut SYNCMGR_HANDLER_POLICIES) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub Activate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, factivate: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Activate: usize,
#[cfg(feature = "Win32_Foundation")]
pub Enable: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fenable: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Enable: usize,
#[cfg(feature = "Win32_Foundation")]
pub Synchronize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszitemids: *const ::windows::core::PCWSTR, citems: u32, hwndowner: super::super::Foundation::HWND, psessioncreator: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Synchronize: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrHandlerCollection(::windows::core::IUnknown);
impl ISyncMgrHandlerCollection {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn GetHandlerEnumerator(&self) -> ::windows::core::Result<super::super::System::Com::IEnumString> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetHandlerEnumerator)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn BindToHandler<P0, T>(&self, pszhandlerid: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).BindToHandler)(::windows::core::Vtable::as_raw(self), pszhandlerid.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ISyncMgrHandlerCollection, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrHandlerCollection {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrHandlerCollection {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrHandlerCollection {}
impl ::core::fmt::Debug for ISyncMgrHandlerCollection {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrHandlerCollection").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrHandlerCollection {
type Vtable = ISyncMgrHandlerCollection_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrHandlerCollection {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa7f337a3_d20b_45cb_9ed7_87d094ca5045);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrHandlerCollection_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub GetHandlerEnumerator: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
GetHandlerEnumerator: usize,
pub BindToHandler: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszhandlerid: ::windows::core::PCWSTR, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrHandlerInfo(::windows::core::IUnknown);
impl ISyncMgrHandlerInfo {
pub unsafe fn GetType(&self) -> ::windows::core::Result<SYNCMGR_HANDLER_TYPE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetType)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetTypeLabel(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetTypeLabel)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetComment(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetComment)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetLastSyncTime(&self) -> ::windows::core::Result<super::super::Foundation::FILETIME> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetLastSyncTime)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn IsActive(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).IsActive)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn IsEnabled(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).IsEnabled)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn IsConnected(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).IsConnected)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(ISyncMgrHandlerInfo, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrHandlerInfo {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrHandlerInfo {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrHandlerInfo {}
impl ::core::fmt::Debug for ISyncMgrHandlerInfo {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrHandlerInfo").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrHandlerInfo {
type Vtable = ISyncMgrHandlerInfo_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrHandlerInfo {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4ff1d798_ecf7_4524_aa81_1e362a0aef3a);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrHandlerInfo_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pntype: *mut SYNCMGR_HANDLER_TYPE) -> ::windows::core::HRESULT,
pub GetTypeLabel: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppsztypelabel: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetComment: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszcomment: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetLastSyncTime: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pftlastsync: *mut super::super::Foundation::FILETIME) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetLastSyncTime: usize,
pub IsActive: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub IsEnabled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub IsConnected: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrRegister(::windows::core::IUnknown);
impl ISyncMgrRegister {
pub unsafe fn RegisterSyncMgrHandler<P0>(&self, clsidhandler: *const ::windows::core::GUID, pwszdescription: P0, dwsyncmgrregisterflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).RegisterSyncMgrHandler)(::windows::core::Vtable::as_raw(self), clsidhandler, pwszdescription.into().abi(), dwsyncmgrregisterflags).ok()
}
pub unsafe fn UnregisterSyncMgrHandler(&self, clsidhandler: *const ::windows::core::GUID, dwreserved: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UnregisterSyncMgrHandler)(::windows::core::Vtable::as_raw(self), clsidhandler, dwreserved).ok()
}
pub unsafe fn GetHandlerRegistrationInfo(&self, clsidhandler: *const ::windows::core::GUID, pdwsyncmgrregisterflags: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetHandlerRegistrationInfo)(::windows::core::Vtable::as_raw(self), clsidhandler, pdwsyncmgrregisterflags).ok()
}
}
::windows::core::interface_hierarchy!(ISyncMgrRegister, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrRegister {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrRegister {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrRegister {}
impl ::core::fmt::Debug for ISyncMgrRegister {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrRegister").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrRegister {
type Vtable = ISyncMgrRegister_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrRegister {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6295df42_35ee_11d1_8707_00c04fd93327);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrRegister_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub RegisterSyncMgrHandler: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clsidhandler: *const ::windows::core::GUID, pwszdescription: ::windows::core::PCWSTR, dwsyncmgrregisterflags: u32) -> ::windows::core::HRESULT,
pub UnregisterSyncMgrHandler: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clsidhandler: *const ::windows::core::GUID, dwreserved: u32) -> ::windows::core::HRESULT,
pub GetHandlerRegistrationInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clsidhandler: *const ::windows::core::GUID, pdwsyncmgrregisterflags: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrResolutionHandler(::windows::core::IUnknown);
impl ISyncMgrResolutionHandler {
pub unsafe fn QueryAbilities(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).QueryAbilities)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn KeepOther<P0>(&self, psiother: P0) -> ::windows::core::Result<SYNCMGR_RESOLUTION_FEEDBACK>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).KeepOther)(::windows::core::Vtable::as_raw(self), psiother.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn KeepRecent(&self) -> ::windows::core::Result<SYNCMGR_RESOLUTION_FEEDBACK> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).KeepRecent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn RemoveFromSyncSet(&self) -> ::windows::core::Result<SYNCMGR_RESOLUTION_FEEDBACK> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).RemoveFromSyncSet)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn KeepItems<P0>(&self, parray: P0) -> ::windows::core::Result<SYNCMGR_RESOLUTION_FEEDBACK>
where
P0: ::std::convert::Into<::windows::core::InParam<ISyncMgrConflictResolutionItems>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).KeepItems)(::windows::core::Vtable::as_raw(self), parray.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ISyncMgrResolutionHandler, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrResolutionHandler {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrResolutionHandler {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrResolutionHandler {}
impl ::core::fmt::Debug for ISyncMgrResolutionHandler {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrResolutionHandler").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrResolutionHandler {
type Vtable = ISyncMgrResolutionHandler_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrResolutionHandler {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x40a3d052_8bff_4c4b_a338_d4a395700de9);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrResolutionHandler_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub QueryAbilities: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwabilities: *mut u32) -> ::windows::core::HRESULT,
pub KeepOther: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psiother: *mut ::core::ffi::c_void, pfeedback: *mut SYNCMGR_RESOLUTION_FEEDBACK) -> ::windows::core::HRESULT,
pub KeepRecent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfeedback: *mut SYNCMGR_RESOLUTION_FEEDBACK) -> ::windows::core::HRESULT,
pub RemoveFromSyncSet: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfeedback: *mut SYNCMGR_RESOLUTION_FEEDBACK) -> ::windows::core::HRESULT,
pub KeepItems: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, parray: *mut ::core::ffi::c_void, pfeedback: *mut SYNCMGR_RESOLUTION_FEEDBACK) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrScheduleWizardUIOperation(::windows::core::IUnknown);
impl ISyncMgrScheduleWizardUIOperation {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Run<P0>(&self, hwndowner: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.Run)(::windows::core::Vtable::as_raw(self), hwndowner.into()).ok()
}
pub unsafe fn InitWizard<P0>(&self, pszhandlerid: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).InitWizard)(::windows::core::Vtable::as_raw(self), pszhandlerid.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(ISyncMgrScheduleWizardUIOperation, ::windows::core::IUnknown, ISyncMgrUIOperation);
impl ::core::clone::Clone for ISyncMgrScheduleWizardUIOperation {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrScheduleWizardUIOperation {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrScheduleWizardUIOperation {}
impl ::core::fmt::Debug for ISyncMgrScheduleWizardUIOperation {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrScheduleWizardUIOperation").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrScheduleWizardUIOperation {
type Vtable = ISyncMgrScheduleWizardUIOperation_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrScheduleWizardUIOperation {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x459a6c84_21d2_4ddc_8a53_f023a46066f2);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrScheduleWizardUIOperation_Vtbl {
pub base__: ISyncMgrUIOperation_Vtbl,
pub InitWizard: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszhandlerid: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrSessionCreator(::windows::core::IUnknown);
impl ISyncMgrSessionCreator {
pub unsafe fn CreateSession<P0>(&self, pszhandlerid: P0, ppszitemids: &[::windows::core::PCWSTR]) -> ::windows::core::Result<ISyncMgrSyncCallback>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CreateSession)(::windows::core::Vtable::as_raw(self), pszhandlerid.into().abi(), ::core::mem::transmute(ppszitemids.as_ptr()), ppszitemids.len() as _, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ISyncMgrSessionCreator, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrSessionCreator {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrSessionCreator {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrSessionCreator {}
impl ::core::fmt::Debug for ISyncMgrSessionCreator {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrSessionCreator").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrSessionCreator {
type Vtable = ISyncMgrSessionCreator_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrSessionCreator {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x17f48517_f305_4321_a08d_b25a834918fd);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrSessionCreator_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub CreateSession: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszhandlerid: ::windows::core::PCWSTR, ppszitemids: *const ::windows::core::PCWSTR, citems: u32, ppcallback: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrSyncCallback(::windows::core::IUnknown);
impl ISyncMgrSyncCallback {
pub unsafe fn ReportProgress<P0, P1>(&self, pszitemid: P0, pszprogresstext: P1, nstatus: SYNCMGR_PROGRESS_STATUS, ucurrentstep: u32, umaxstep: u32, pncancelrequest: *mut SYNCMGR_CANCEL_REQUEST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).ReportProgress)(::windows::core::Vtable::as_raw(self), pszitemid.into().abi(), pszprogresstext.into().abi(), nstatus, ucurrentstep, umaxstep, pncancelrequest).ok()
}
pub unsafe fn SetHandlerProgressText<P0>(&self, pszprogresstext: P0, pncancelrequest: *mut SYNCMGR_CANCEL_REQUEST) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetHandlerProgressText)(::windows::core::Vtable::as_raw(self), pszprogresstext.into().abi(), pncancelrequest).ok()
}
pub unsafe fn ReportEvent<P0, P1, P2, P3, P4, P5>(&self, pszitemid: P0, nlevel: SYNCMGR_EVENT_LEVEL, nflags: SYNCMGR_EVENT_FLAGS, pszname: P1, pszdescription: P2, pszlinktext: P3, pszlinkreference: P4, pszcontext: P5) -> ::windows::core::Result<::windows::core::GUID>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P3: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P4: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P5: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ReportEvent)(::windows::core::Vtable::as_raw(self), pszitemid.into().abi(), nlevel, nflags, pszname.into().abi(), pszdescription.into().abi(), pszlinktext.into().abi(), pszlinkreference.into().abi(), pszcontext.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn CanContinue<P0>(&self, pszitemid: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).CanContinue)(::windows::core::Vtable::as_raw(self), pszitemid.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn QueryForAdditionalItems(&self, ppenumitemids: *mut ::core::option::Option<super::super::System::Com::IEnumString>, ppenumpunks: *mut ::core::option::Option<super::super::System::Com::IEnumUnknown>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).QueryForAdditionalItems)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(ppenumitemids), ::core::mem::transmute(ppenumpunks)).ok()
}
pub unsafe fn AddItemToSession<P0>(&self, pszitemid: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).AddItemToSession)(::windows::core::Vtable::as_raw(self), pszitemid.into().abi()).ok()
}
pub unsafe fn AddIUnknownToSession<P0>(&self, punk: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).AddIUnknownToSession)(::windows::core::Vtable::as_raw(self), punk.into().abi()).ok()
}
pub unsafe fn ProposeItem<P0>(&self, pnewitem: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ISyncMgrSyncItem>>,
{
(::windows::core::Vtable::vtable(self).ProposeItem)(::windows::core::Vtable::as_raw(self), pnewitem.into().abi()).ok()
}
pub unsafe fn CommitItem<P0>(&self, pszitemid: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).CommitItem)(::windows::core::Vtable::as_raw(self), pszitemid.into().abi()).ok()
}
pub unsafe fn ReportManualSync(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ReportManualSync)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(ISyncMgrSyncCallback, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrSyncCallback {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrSyncCallback {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrSyncCallback {}
impl ::core::fmt::Debug for ISyncMgrSyncCallback {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrSyncCallback").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrSyncCallback {
type Vtable = ISyncMgrSyncCallback_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrSyncCallback {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x884ccd87_b139_4937_a4ba_4f8e19513fbe);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrSyncCallback_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub ReportProgress: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszitemid: ::windows::core::PCWSTR, pszprogresstext: ::windows::core::PCWSTR, nstatus: SYNCMGR_PROGRESS_STATUS, ucurrentstep: u32, umaxstep: u32, pncancelrequest: *mut SYNCMGR_CANCEL_REQUEST) -> ::windows::core::HRESULT,
pub SetHandlerProgressText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszprogresstext: ::windows::core::PCWSTR, pncancelrequest: *mut SYNCMGR_CANCEL_REQUEST) -> ::windows::core::HRESULT,
pub ReportEvent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszitemid: ::windows::core::PCWSTR, nlevel: SYNCMGR_EVENT_LEVEL, nflags: SYNCMGR_EVENT_FLAGS, pszname: ::windows::core::PCWSTR, pszdescription: ::windows::core::PCWSTR, pszlinktext: ::windows::core::PCWSTR, pszlinkreference: ::windows::core::PCWSTR, pszcontext: ::windows::core::PCWSTR, pguideventid: *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
pub CanContinue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszitemid: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub QueryForAdditionalItems: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenumitemids: *mut *mut ::core::ffi::c_void, ppenumpunks: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
QueryForAdditionalItems: usize,
pub AddItemToSession: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszitemid: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub AddIUnknownToSession: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub ProposeItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pnewitem: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub CommitItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszitemid: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub ReportManualSync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrSyncItem(::windows::core::IUnknown);
impl ISyncMgrSyncItem {
pub unsafe fn GetItemID(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItemID)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetName(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetName)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetItemInfo(&self) -> ::windows::core::Result<ISyncMgrSyncItemInfo> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItemInfo)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetObject<T>(&self, rguidobjectid: *const ::windows::core::GUID) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetObject)(::windows::core::Vtable::as_raw(self), rguidobjectid, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetCapabilities(&self) -> ::windows::core::Result<SYNCMGR_ITEM_CAPABILITIES> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCapabilities)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetPolicies(&self) -> ::windows::core::Result<SYNCMGR_ITEM_POLICIES> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPolicies)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Enable<P0>(&self, fenable: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).Enable)(::windows::core::Vtable::as_raw(self), fenable.into()).ok()
}
pub unsafe fn Delete(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Delete)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(ISyncMgrSyncItem, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrSyncItem {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrSyncItem {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrSyncItem {}
impl ::core::fmt::Debug for ISyncMgrSyncItem {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrSyncItem").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrSyncItem {
type Vtable = ISyncMgrSyncItem_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrSyncItem {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb20b24ce_2593_4f04_bd8b_7ad6c45051cd);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrSyncItem_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetItemID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszitemid: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszname: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetItemInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppiteminfo: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rguidobjectid: *const ::windows::core::GUID, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetCapabilities: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pmcapabilities: *mut SYNCMGR_ITEM_CAPABILITIES) -> ::windows::core::HRESULT,
pub GetPolicies: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pmpolicies: *mut SYNCMGR_ITEM_POLICIES) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub Enable: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fenable: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Enable: usize,
pub Delete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrSyncItemContainer(::windows::core::IUnknown);
impl ISyncMgrSyncItemContainer {
pub unsafe fn GetSyncItem<P0>(&self, pszitemid: P0) -> ::windows::core::Result<ISyncMgrSyncItem>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSyncItem)(::windows::core::Vtable::as_raw(self), pszitemid.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetSyncItemEnumerator(&self) -> ::windows::core::Result<IEnumSyncMgrSyncItems> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSyncItemEnumerator)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetSyncItemCount(&self) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetSyncItemCount)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ISyncMgrSyncItemContainer, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrSyncItemContainer {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrSyncItemContainer {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrSyncItemContainer {}
impl ::core::fmt::Debug for ISyncMgrSyncItemContainer {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrSyncItemContainer").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrSyncItemContainer {
type Vtable = ISyncMgrSyncItemContainer_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrSyncItemContainer {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x90701133_be32_4129_a65c_99e616cafff4);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrSyncItemContainer_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetSyncItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszitemid: ::windows::core::PCWSTR, ppitem: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetSyncItemEnumerator: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetSyncItemCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcitems: *mut u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrSyncItemInfo(::windows::core::IUnknown);
impl ISyncMgrSyncItemInfo {
pub unsafe fn GetTypeLabel(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetTypeLabel)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetComment(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetComment)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetLastSyncTime(&self) -> ::windows::core::Result<super::super::Foundation::FILETIME> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetLastSyncTime)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn IsEnabled(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).IsEnabled)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn IsConnected(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).IsConnected)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(ISyncMgrSyncItemInfo, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrSyncItemInfo {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrSyncItemInfo {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrSyncItemInfo {}
impl ::core::fmt::Debug for ISyncMgrSyncItemInfo {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrSyncItemInfo").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrSyncItemInfo {
type Vtable = ISyncMgrSyncItemInfo_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrSyncItemInfo {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe7fd9502_be0c_4464_90a1_2b5277031232);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrSyncItemInfo_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetTypeLabel: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppsztypelabel: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetComment: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszcomment: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub GetLastSyncTime: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pftlastsync: *mut super::super::Foundation::FILETIME) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetLastSyncTime: usize,
pub IsEnabled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub IsConnected: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrSyncResult(::windows::core::IUnknown);
impl ISyncMgrSyncResult {
pub unsafe fn Result(&self, nstatus: SYNCMGR_PROGRESS_STATUS, cerror: u32, cconflicts: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Result)(::windows::core::Vtable::as_raw(self), nstatus, cerror, cconflicts).ok()
}
}
::windows::core::interface_hierarchy!(ISyncMgrSyncResult, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrSyncResult {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrSyncResult {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrSyncResult {}
impl ::core::fmt::Debug for ISyncMgrSyncResult {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrSyncResult").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrSyncResult {
type Vtable = ISyncMgrSyncResult_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrSyncResult {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2b90f17e_5a3e_4b33_bb7f_1bc48056b94d);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrSyncResult_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Result: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, nstatus: SYNCMGR_PROGRESS_STATUS, cerror: u32, cconflicts: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrSynchronize(::windows::core::IUnknown);
impl ISyncMgrSynchronize {
pub unsafe fn Initialize(&self, dwreserved: u32, dwsyncmgrflags: u32, lpcookie: &[u8]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Initialize)(::windows::core::Vtable::as_raw(self), dwreserved, dwsyncmgrflags, lpcookie.len() as _, ::core::mem::transmute(lpcookie.as_ptr())).ok()
}
#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub unsafe fn GetHandlerInfo(&self) -> ::windows::core::Result<*mut SYNCMGRHANDLERINFO> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetHandlerInfo)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn EnumSyncMgrItems(&self) -> ::windows::core::Result<ISyncMgrEnumItems> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).EnumSyncMgrItems)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetItemObject<T>(&self, itemid: *const ::windows::core::GUID) -> ::windows::core::Result<T>
where
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItemObject)(::windows::core::Vtable::as_raw(self), itemid, &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ShowProperties<P0>(&self, hwndparent: P0, itemid: *const ::windows::core::GUID) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).ShowProperties)(::windows::core::Vtable::as_raw(self), hwndparent.into(), itemid).ok()
}
pub unsafe fn SetProgressCallback<P0>(&self, lpcallback: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ISyncMgrSynchronizeCallback>>,
{
(::windows::core::Vtable::vtable(self).SetProgressCallback)(::windows::core::Vtable::as_raw(self), lpcallback.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn PrepareForSync<P0>(&self, pitemids: &[::windows::core::GUID], hwndparent: P0, dwreserved: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).PrepareForSync)(::windows::core::Vtable::as_raw(self), pitemids.len() as _, ::core::mem::transmute(pitemids.as_ptr()), hwndparent.into(), dwreserved).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Synchronize<P0>(&self, hwndparent: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).Synchronize)(::windows::core::Vtable::as_raw(self), hwndparent.into()).ok()
}
pub unsafe fn SetItemStatus(&self, pitemid: *const ::windows::core::GUID, dwsyncmgrstatus: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetItemStatus)(::windows::core::Vtable::as_raw(self), pitemid, dwsyncmgrstatus).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ShowError<P0>(&self, hwndparent: P0, errorid: *const ::windows::core::GUID) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).ShowError)(::windows::core::Vtable::as_raw(self), hwndparent.into(), errorid).ok()
}
}
::windows::core::interface_hierarchy!(ISyncMgrSynchronize, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrSynchronize {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrSynchronize {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrSynchronize {}
impl ::core::fmt::Debug for ISyncMgrSynchronize {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrSynchronize").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrSynchronize {
type Vtable = ISyncMgrSynchronize_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrSynchronize {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6295df40_35ee_11d1_8707_00c04fd93327);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrSynchronize_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwreserved: u32, dwsyncmgrflags: u32, cbcookie: u32, lpcookie: *const u8) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub GetHandlerInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppsyncmgrhandlerinfo: *mut *mut SYNCMGRHANDLERINFO) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_WindowsAndMessaging"))]
GetHandlerInfo: usize,
pub EnumSyncMgrItems: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppsyncmgrenumitems: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetItemObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, itemid: *const ::windows::core::GUID, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub ShowProperties: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndparent: super::super::Foundation::HWND, itemid: *const ::windows::core::GUID) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
ShowProperties: usize,
pub SetProgressCallback: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpcallback: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub PrepareForSync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cbnumitems: u32, pitemids: *const ::windows::core::GUID, hwndparent: super::super::Foundation::HWND, dwreserved: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
PrepareForSync: usize,
#[cfg(feature = "Win32_Foundation")]
pub Synchronize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndparent: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Synchronize: usize,
pub SetItemStatus: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pitemid: *const ::windows::core::GUID, dwsyncmgrstatus: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub ShowError: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndparent: super::super::Foundation::HWND, errorid: *const ::windows::core::GUID) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
ShowError: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrSynchronizeCallback(::windows::core::IUnknown);
impl ISyncMgrSynchronizeCallback {
pub unsafe fn ShowPropertiesCompleted(&self, hr: ::windows::core::HRESULT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ShowPropertiesCompleted)(::windows::core::Vtable::as_raw(self), hr).ok()
}
pub unsafe fn PrepareForSyncCompleted(&self, hr: ::windows::core::HRESULT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).PrepareForSyncCompleted)(::windows::core::Vtable::as_raw(self), hr).ok()
}
pub unsafe fn SynchronizeCompleted(&self, hr: ::windows::core::HRESULT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SynchronizeCompleted)(::windows::core::Vtable::as_raw(self), hr).ok()
}
pub unsafe fn ShowErrorCompleted(&self, hr: ::windows::core::HRESULT, pitemids: &[::windows::core::GUID]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ShowErrorCompleted)(::windows::core::Vtable::as_raw(self), hr, pitemids.len() as _, ::core::mem::transmute(pitemids.as_ptr())).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn EnableModeless<P0>(&self, fenable: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).EnableModeless)(::windows::core::Vtable::as_raw(self), fenable.into()).ok()
}
pub unsafe fn Progress(&self, itemid: *const ::windows::core::GUID, psyncprogressitem: *const SYNCMGRPROGRESSITEM) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Progress)(::windows::core::Vtable::as_raw(self), itemid, psyncprogressitem).ok()
}
pub unsafe fn LogError<P0>(&self, dwerrorlevel: u32, pszerrortext: P0, psynclogerror: *const SYNCMGRLOGERRORINFO) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).LogError)(::windows::core::Vtable::as_raw(self), dwerrorlevel, pszerrortext.into().abi(), psynclogerror).ok()
}
pub unsafe fn DeleteLogError(&self, errorid: *const ::windows::core::GUID, dwreserved: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).DeleteLogError)(::windows::core::Vtable::as_raw(self), errorid, dwreserved).ok()
}
pub unsafe fn EstablishConnection<P0>(&self, pwszconnection: P0, dwreserved: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).EstablishConnection)(::windows::core::Vtable::as_raw(self), pwszconnection.into().abi(), dwreserved).ok()
}
}
::windows::core::interface_hierarchy!(ISyncMgrSynchronizeCallback, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrSynchronizeCallback {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrSynchronizeCallback {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrSynchronizeCallback {}
impl ::core::fmt::Debug for ISyncMgrSynchronizeCallback {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrSynchronizeCallback").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrSynchronizeCallback {
type Vtable = ISyncMgrSynchronizeCallback_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrSynchronizeCallback {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6295df41_35ee_11d1_8707_00c04fd93327);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrSynchronizeCallback_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub ShowPropertiesCompleted: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hr: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
pub PrepareForSyncCompleted: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hr: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
pub SynchronizeCompleted: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hr: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
pub ShowErrorCompleted: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hr: ::windows::core::HRESULT, citems: u32, pitemids: *const ::windows::core::GUID) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub EnableModeless: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fenable: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
EnableModeless: usize,
pub Progress: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, itemid: *const ::windows::core::GUID, psyncprogressitem: *const SYNCMGRPROGRESSITEM) -> ::windows::core::HRESULT,
pub LogError: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwerrorlevel: u32, pszerrortext: ::windows::core::PCWSTR, psynclogerror: *const SYNCMGRLOGERRORINFO) -> ::windows::core::HRESULT,
pub DeleteLogError: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, errorid: *const ::windows::core::GUID, dwreserved: u32) -> ::windows::core::HRESULT,
pub EstablishConnection: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwszconnection: ::windows::core::PCWSTR, dwreserved: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrSynchronizeInvoke(::windows::core::IUnknown);
impl ISyncMgrSynchronizeInvoke {
pub unsafe fn UpdateItems(&self, dwinvokeflags: u32, clsid: *const ::windows::core::GUID, pcookie: &[u8]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UpdateItems)(::windows::core::Vtable::as_raw(self), dwinvokeflags, clsid, pcookie.len() as _, ::core::mem::transmute(pcookie.as_ptr())).ok()
}
pub unsafe fn UpdateAll(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UpdateAll)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(ISyncMgrSynchronizeInvoke, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrSynchronizeInvoke {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrSynchronizeInvoke {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrSynchronizeInvoke {}
impl ::core::fmt::Debug for ISyncMgrSynchronizeInvoke {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrSynchronizeInvoke").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrSynchronizeInvoke {
type Vtable = ISyncMgrSynchronizeInvoke_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrSynchronizeInvoke {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6295df2c_35ee_11d1_8707_00c04fd93327);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrSynchronizeInvoke_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub UpdateItems: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwinvokeflags: u32, clsid: *const ::windows::core::GUID, cbcookie: u32, pcookie: *const u8) -> ::windows::core::HRESULT,
pub UpdateAll: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ISyncMgrUIOperation(::windows::core::IUnknown);
impl ISyncMgrUIOperation {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Run<P0>(&self, hwndowner: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).Run)(::windows::core::Vtable::as_raw(self), hwndowner.into()).ok()
}
}
::windows::core::interface_hierarchy!(ISyncMgrUIOperation, ::windows::core::IUnknown);
impl ::core::clone::Clone for ISyncMgrUIOperation {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ISyncMgrUIOperation {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ISyncMgrUIOperation {}
impl ::core::fmt::Debug for ISyncMgrUIOperation {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ISyncMgrUIOperation").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ISyncMgrUIOperation {
type Vtable = ISyncMgrUIOperation_Vtbl;
}
unsafe impl ::windows::core::Interface for ISyncMgrUIOperation {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfc7cfa47_dfe1_45b5_a049_8cfd82bec271);
}
#[repr(C)]
#[doc(hidden)]
pub struct ISyncMgrUIOperation_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub Run: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndowner: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Run: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ITaskbarList(::windows::core::IUnknown);
impl ITaskbarList {
pub unsafe fn HrInit(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).HrInit)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn AddTab<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).AddTab)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn DeleteTab<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).DeleteTab)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ActivateTab<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).ActivateTab)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetActiveAlt<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).SetActiveAlt)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
}
::windows::core::interface_hierarchy!(ITaskbarList, ::windows::core::IUnknown);
impl ::core::clone::Clone for ITaskbarList {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ITaskbarList {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ITaskbarList {}
impl ::core::fmt::Debug for ITaskbarList {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ITaskbarList").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ITaskbarList {
type Vtable = ITaskbarList_Vtbl;
}
unsafe impl ::windows::core::Interface for ITaskbarList {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x56fdf342_fd6d_11d0_958a_006097c9a090);
}
#[repr(C)]
#[doc(hidden)]
pub struct ITaskbarList_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub HrInit: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub AddTab: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
AddTab: usize,
#[cfg(feature = "Win32_Foundation")]
pub DeleteTab: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
DeleteTab: usize,
#[cfg(feature = "Win32_Foundation")]
pub ActivateTab: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
ActivateTab: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetActiveAlt: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetActiveAlt: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ITaskbarList2(::windows::core::IUnknown);
impl ITaskbarList2 {
pub unsafe fn HrInit(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.HrInit)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn AddTab<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.AddTab)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn DeleteTab<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.DeleteTab)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ActivateTab<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.ActivateTab)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetActiveAlt<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.SetActiveAlt)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn MarkFullscreenWindow<P0, P1>(&self, hwnd: P0, ffullscreen: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).MarkFullscreenWindow)(::windows::core::Vtable::as_raw(self), hwnd.into(), ffullscreen.into()).ok()
}
}
::windows::core::interface_hierarchy!(ITaskbarList2, ::windows::core::IUnknown, ITaskbarList);
impl ::core::clone::Clone for ITaskbarList2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ITaskbarList2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ITaskbarList2 {}
impl ::core::fmt::Debug for ITaskbarList2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ITaskbarList2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ITaskbarList2 {
type Vtable = ITaskbarList2_Vtbl;
}
unsafe impl ::windows::core::Interface for ITaskbarList2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x602d4995_b13a_429b_a66e_1935e44f4317);
}
#[repr(C)]
#[doc(hidden)]
pub struct ITaskbarList2_Vtbl {
pub base__: ITaskbarList_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub MarkFullscreenWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, ffullscreen: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
MarkFullscreenWindow: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ITaskbarList3(::windows::core::IUnknown);
impl ITaskbarList3 {
pub unsafe fn HrInit(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.HrInit)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn AddTab<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.base__.AddTab)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn DeleteTab<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.base__.DeleteTab)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ActivateTab<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.base__.ActivateTab)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetActiveAlt<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.base__.SetActiveAlt)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn MarkFullscreenWindow<P0, P1>(&self, hwnd: P0, ffullscreen: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.MarkFullscreenWindow)(::windows::core::Vtable::as_raw(self), hwnd.into(), ffullscreen.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetProgressValue<P0>(&self, hwnd: P0, ullcompleted: u64, ulltotal: u64) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).SetProgressValue)(::windows::core::Vtable::as_raw(self), hwnd.into(), ullcompleted, ulltotal).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetProgressState<P0>(&self, hwnd: P0, tbpflags: TBPFLAG) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).SetProgressState)(::windows::core::Vtable::as_raw(self), hwnd.into(), tbpflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RegisterTab<P0, P1>(&self, hwndtab: P0, hwndmdi: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).RegisterTab)(::windows::core::Vtable::as_raw(self), hwndtab.into(), hwndmdi.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn UnregisterTab<P0>(&self, hwndtab: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).UnregisterTab)(::windows::core::Vtable::as_raw(self), hwndtab.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetTabOrder<P0, P1>(&self, hwndtab: P0, hwndinsertbefore: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).SetTabOrder)(::windows::core::Vtable::as_raw(self), hwndtab.into(), hwndinsertbefore.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetTabActive<P0, P1>(&self, hwndtab: P0, hwndmdi: P1, dwreserved: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).SetTabActive)(::windows::core::Vtable::as_raw(self), hwndtab.into(), hwndmdi.into(), dwreserved).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn ThumbBarAddButtons<P0>(&self, hwnd: P0, pbutton: &[THUMBBUTTON]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).ThumbBarAddButtons)(::windows::core::Vtable::as_raw(self), hwnd.into(), pbutton.len() as _, ::core::mem::transmute(pbutton.as_ptr())).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn ThumbBarUpdateButtons<P0>(&self, hwnd: P0, pbutton: &[THUMBBUTTON]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).ThumbBarUpdateButtons)(::windows::core::Vtable::as_raw(self), hwnd.into(), pbutton.len() as _, ::core::mem::transmute(pbutton.as_ptr())).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Controls\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
pub unsafe fn ThumbBarSetImageList<P0, P1>(&self, hwnd: P0, himl: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::Controls::HIMAGELIST>,
{
(::windows::core::Vtable::vtable(self).ThumbBarSetImageList)(::windows::core::Vtable::as_raw(self), hwnd.into(), himl.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn SetOverlayIcon<P0, P1, P2>(&self, hwnd: P0, hicon: P1, pszdescription: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::WindowsAndMessaging::HICON>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetOverlayIcon)(::windows::core::Vtable::as_raw(self), hwnd.into(), hicon.into(), pszdescription.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetThumbnailTooltip<P0, P1>(&self, hwnd: P0, psztip: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetThumbnailTooltip)(::windows::core::Vtable::as_raw(self), hwnd.into(), psztip.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetThumbnailClip<P0>(&self, hwnd: P0, prcclip: *const super::super::Foundation::RECT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).SetThumbnailClip)(::windows::core::Vtable::as_raw(self), hwnd.into(), prcclip).ok()
}
}
::windows::core::interface_hierarchy!(ITaskbarList3, ::windows::core::IUnknown, ITaskbarList, ITaskbarList2);
impl ::core::clone::Clone for ITaskbarList3 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ITaskbarList3 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ITaskbarList3 {}
impl ::core::fmt::Debug for ITaskbarList3 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ITaskbarList3").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ITaskbarList3 {
type Vtable = ITaskbarList3_Vtbl;
}
unsafe impl ::windows::core::Interface for ITaskbarList3 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xea1afb91_9e28_4b86_90e9_9e9f8a5eefaf);
}
#[repr(C)]
#[doc(hidden)]
pub struct ITaskbarList3_Vtbl {
pub base__: ITaskbarList2_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub SetProgressValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, ullcompleted: u64, ulltotal: u64) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetProgressValue: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetProgressState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, tbpflags: TBPFLAG) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetProgressState: usize,
#[cfg(feature = "Win32_Foundation")]
pub RegisterTab: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndtab: super::super::Foundation::HWND, hwndmdi: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
RegisterTab: usize,
#[cfg(feature = "Win32_Foundation")]
pub UnregisterTab: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndtab: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
UnregisterTab: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetTabOrder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndtab: super::super::Foundation::HWND, hwndinsertbefore: super::super::Foundation::HWND) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetTabOrder: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetTabActive: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndtab: super::super::Foundation::HWND, hwndmdi: super::super::Foundation::HWND, dwreserved: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetTabActive: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub ThumbBarAddButtons: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, cbuttons: u32, pbutton: *const THUMBBUTTON) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
ThumbBarAddButtons: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub ThumbBarUpdateButtons: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, cbuttons: u32, pbutton: *const THUMBBUTTON) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
ThumbBarUpdateButtons: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
pub ThumbBarSetImageList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, himl: super::Controls::HIMAGELIST) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls")))]
ThumbBarSetImageList: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub SetOverlayIcon: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, hicon: super::WindowsAndMessaging::HICON, pszdescription: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging")))]
SetOverlayIcon: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetThumbnailTooltip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, psztip: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetThumbnailTooltip: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetThumbnailClip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, prcclip: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetThumbnailClip: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ITaskbarList4(::windows::core::IUnknown);
impl ITaskbarList4 {
pub unsafe fn HrInit(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.base__.HrInit)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn AddTab<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.AddTab)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn DeleteTab<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.DeleteTab)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn ActivateTab<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.ActivateTab)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetActiveAlt<P0>(&self, hwnd: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.base__.base__.SetActiveAlt)(::windows::core::Vtable::as_raw(self), hwnd.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn MarkFullscreenWindow<P0, P1>(&self, hwnd: P0, ffullscreen: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.base__.MarkFullscreenWindow)(::windows::core::Vtable::as_raw(self), hwnd.into(), ffullscreen.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetProgressValue<P0>(&self, hwnd: P0, ullcompleted: u64, ulltotal: u64) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.SetProgressValue)(::windows::core::Vtable::as_raw(self), hwnd.into(), ullcompleted, ulltotal).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetProgressState<P0>(&self, hwnd: P0, tbpflags: TBPFLAG) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.SetProgressState)(::windows::core::Vtable::as_raw(self), hwnd.into(), tbpflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RegisterTab<P0, P1>(&self, hwndtab: P0, hwndmdi: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.RegisterTab)(::windows::core::Vtable::as_raw(self), hwndtab.into(), hwndmdi.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn UnregisterTab<P0>(&self, hwndtab: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.UnregisterTab)(::windows::core::Vtable::as_raw(self), hwndtab.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetTabOrder<P0, P1>(&self, hwndtab: P0, hwndinsertbefore: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.SetTabOrder)(::windows::core::Vtable::as_raw(self), hwndtab.into(), hwndinsertbefore.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetTabActive<P0, P1>(&self, hwndtab: P0, hwndmdi: P1, dwreserved: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.SetTabActive)(::windows::core::Vtable::as_raw(self), hwndtab.into(), hwndmdi.into(), dwreserved).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn ThumbBarAddButtons<P0>(&self, hwnd: P0, pbutton: &[THUMBBUTTON]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.ThumbBarAddButtons)(::windows::core::Vtable::as_raw(self), hwnd.into(), pbutton.len() as _, ::core::mem::transmute(pbutton.as_ptr())).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn ThumbBarUpdateButtons<P0>(&self, hwnd: P0, pbutton: &[THUMBBUTTON]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.ThumbBarUpdateButtons)(::windows::core::Vtable::as_raw(self), hwnd.into(), pbutton.len() as _, ::core::mem::transmute(pbutton.as_ptr())).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Controls\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
pub unsafe fn ThumbBarSetImageList<P0, P1>(&self, hwnd: P0, himl: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::Controls::HIMAGELIST>,
{
(::windows::core::Vtable::vtable(self).base__.ThumbBarSetImageList)(::windows::core::Vtable::as_raw(self), hwnd.into(), himl.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn SetOverlayIcon<P0, P1, P2>(&self, hwnd: P0, hicon: P1, pszdescription: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<super::WindowsAndMessaging::HICON>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetOverlayIcon)(::windows::core::Vtable::as_raw(self), hwnd.into(), hicon.into(), pszdescription.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetThumbnailTooltip<P0, P1>(&self, hwnd: P0, psztip: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).base__.SetThumbnailTooltip)(::windows::core::Vtable::as_raw(self), hwnd.into(), psztip.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetThumbnailClip<P0>(&self, hwnd: P0, prcclip: *const super::super::Foundation::RECT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.SetThumbnailClip)(::windows::core::Vtable::as_raw(self), hwnd.into(), prcclip).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetTabProperties<P0>(&self, hwndtab: P0, stpflags: STPFLAG) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).SetTabProperties)(::windows::core::Vtable::as_raw(self), hwndtab.into(), stpflags).ok()
}
}
::windows::core::interface_hierarchy!(ITaskbarList4, ::windows::core::IUnknown, ITaskbarList, ITaskbarList2, ITaskbarList3);
impl ::core::clone::Clone for ITaskbarList4 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ITaskbarList4 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ITaskbarList4 {}
impl ::core::fmt::Debug for ITaskbarList4 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ITaskbarList4").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ITaskbarList4 {
type Vtable = ITaskbarList4_Vtbl;
}
unsafe impl ::windows::core::Interface for ITaskbarList4 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc43dc798_95d1_4bea_9030_bb99e2983a1a);
}
#[repr(C)]
#[doc(hidden)]
pub struct ITaskbarList4_Vtbl {
pub base__: ITaskbarList3_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub SetTabProperties: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndtab: super::super::Foundation::HWND, stpflags: STPFLAG) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetTabProperties: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IThumbnailCache(::windows::core::IUnknown);
impl IThumbnailCache {
pub unsafe fn GetThumbnail<P0>(&self, pshellitem: P0, cxyrequestedthumbsize: u32, flags: WTS_FLAGS, ppvthumb: ::core::option::Option<*mut ::core::option::Option<ISharedBitmap>>, poutflags: ::core::option::Option<*mut WTS_CACHEFLAGS>, pthumbnailid: ::core::option::Option<*mut WTS_THUMBNAILID>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).GetThumbnail)(::windows::core::Vtable::as_raw(self), pshellitem.into().abi(), cxyrequestedthumbsize, flags, ::core::mem::transmute(ppvthumb.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(poutflags.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pthumbnailid.unwrap_or(::std::ptr::null_mut()))).ok()
}
pub unsafe fn GetThumbnailByID(&self, thumbnailid: WTS_THUMBNAILID, cxyrequestedthumbsize: u32, ppvthumb: ::core::option::Option<*mut ::core::option::Option<ISharedBitmap>>, poutflags: ::core::option::Option<*mut WTS_CACHEFLAGS>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetThumbnailByID)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(thumbnailid), cxyrequestedthumbsize, ::core::mem::transmute(ppvthumb.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(poutflags.unwrap_or(::std::ptr::null_mut()))).ok()
}
}
::windows::core::interface_hierarchy!(IThumbnailCache, ::windows::core::IUnknown);
impl ::core::clone::Clone for IThumbnailCache {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IThumbnailCache {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IThumbnailCache {}
impl ::core::fmt::Debug for IThumbnailCache {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IThumbnailCache").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IThumbnailCache {
type Vtable = IThumbnailCache_Vtbl;
}
unsafe impl ::windows::core::Interface for IThumbnailCache {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf676c15d_596a_4ce2_8234_33996f445db1);
}
#[repr(C)]
#[doc(hidden)]
pub struct IThumbnailCache_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetThumbnail: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pshellitem: *mut ::core::ffi::c_void, cxyrequestedthumbsize: u32, flags: WTS_FLAGS, ppvthumb: *mut *mut ::core::ffi::c_void, poutflags: *mut WTS_CACHEFLAGS, pthumbnailid: *mut WTS_THUMBNAILID) -> ::windows::core::HRESULT,
pub GetThumbnailByID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, thumbnailid: WTS_THUMBNAILID, cxyrequestedthumbsize: u32, ppvthumb: *mut *mut ::core::ffi::c_void, poutflags: *mut WTS_CACHEFLAGS) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IThumbnailCachePrimer(::windows::core::IUnknown);
impl IThumbnailCachePrimer {
pub unsafe fn PageInThumbnail<P0>(&self, psi: P0, wtsflags: WTS_FLAGS, cxyrequestedthumbsize: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).PageInThumbnail)(::windows::core::Vtable::as_raw(self), psi.into().abi(), wtsflags, cxyrequestedthumbsize).ok()
}
}
::windows::core::interface_hierarchy!(IThumbnailCachePrimer, ::windows::core::IUnknown);
impl ::core::clone::Clone for IThumbnailCachePrimer {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IThumbnailCachePrimer {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IThumbnailCachePrimer {}
impl ::core::fmt::Debug for IThumbnailCachePrimer {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IThumbnailCachePrimer").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IThumbnailCachePrimer {
type Vtable = IThumbnailCachePrimer_Vtbl;
}
unsafe impl ::windows::core::Interface for IThumbnailCachePrimer {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0f03f8fe_2b26_46f0_965a_212aa8d66b76);
}
#[repr(C)]
#[doc(hidden)]
pub struct IThumbnailCachePrimer_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub PageInThumbnail: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, wtsflags: WTS_FLAGS, cxyrequestedthumbsize: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IThumbnailCapture(::windows::core::IUnknown);
impl IThumbnailCapture {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
pub unsafe fn CaptureThumbnail<P0>(&self, pmaxsize: *const super::super::Foundation::SIZE, phtmldoc2: P0) -> ::windows::core::Result<super::super::Graphics::Gdi::HBITMAP>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CaptureThumbnail)(::windows::core::Vtable::as_raw(self), pmaxsize, phtmldoc2.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IThumbnailCapture, ::windows::core::IUnknown);
impl ::core::clone::Clone for IThumbnailCapture {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IThumbnailCapture {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IThumbnailCapture {}
impl ::core::fmt::Debug for IThumbnailCapture {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IThumbnailCapture").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IThumbnailCapture {
type Vtable = IThumbnailCapture_Vtbl;
}
unsafe impl ::windows::core::Interface for IThumbnailCapture {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4ea39266_7211_409f_b622_f63dbd16c533);
}
#[repr(C)]
#[doc(hidden)]
pub struct IThumbnailCapture_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
pub CaptureThumbnail: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pmaxsize: *const super::super::Foundation::SIZE, phtmldoc2: *mut ::core::ffi::c_void, phbmthumbnail: *mut super::super::Graphics::Gdi::HBITMAP) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi")))]
CaptureThumbnail: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IThumbnailHandlerFactory(::windows::core::IUnknown);
impl IThumbnailHandlerFactory {
#[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn GetThumbnailHandler<P0, T>(&self, pidlchild: *const Common::ITEMIDLIST, pbc: P0) -> ::windows::core::Result<T>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
T: ::windows::core::Interface,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetThumbnailHandler)(::windows::core::Vtable::as_raw(self), pidlchild, pbc.into().abi(), &<T as ::windows::core::Interface>::IID, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IThumbnailHandlerFactory, ::windows::core::IUnknown);
impl ::core::clone::Clone for IThumbnailHandlerFactory {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IThumbnailHandlerFactory {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IThumbnailHandlerFactory {}
impl ::core::fmt::Debug for IThumbnailHandlerFactory {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IThumbnailHandlerFactory").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IThumbnailHandlerFactory {
type Vtable = IThumbnailHandlerFactory_Vtbl;
}
unsafe impl ::windows::core::Interface for IThumbnailHandlerFactory {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe35b4b2e_00da_4bc1_9f13_38bc11f5d417);
}
#[repr(C)]
#[doc(hidden)]
pub struct IThumbnailHandlerFactory_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub GetThumbnailHandler: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidlchild: *const Common::ITEMIDLIST, pbc: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common")))]
GetThumbnailHandler: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IThumbnailProvider(::windows::core::IUnknown);
impl IThumbnailProvider {
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn GetThumbnail(&self, cx: u32, phbmp: *mut super::super::Graphics::Gdi::HBITMAP, pdwalpha: *mut WTS_ALPHATYPE) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetThumbnail)(::windows::core::Vtable::as_raw(self), cx, phbmp, pdwalpha).ok()
}
}
::windows::core::interface_hierarchy!(IThumbnailProvider, ::windows::core::IUnknown);
impl ::core::clone::Clone for IThumbnailProvider {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IThumbnailProvider {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IThumbnailProvider {}
impl ::core::fmt::Debug for IThumbnailProvider {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IThumbnailProvider").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IThumbnailProvider {
type Vtable = IThumbnailProvider_Vtbl;
}
unsafe impl ::windows::core::Interface for IThumbnailProvider {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe357fccd_a995_4576_b01f_234630154e96);
}
#[repr(C)]
#[doc(hidden)]
pub struct IThumbnailProvider_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Graphics_Gdi")]
pub GetThumbnail: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cx: u32, phbmp: *mut super::super::Graphics::Gdi::HBITMAP, pdwalpha: *mut WTS_ALPHATYPE) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Gdi"))]
GetThumbnail: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IThumbnailSettings(::windows::core::IUnknown);
impl IThumbnailSettings {
pub unsafe fn SetContext(&self, dwcontext: WTS_CONTEXTFLAGS) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetContext)(::windows::core::Vtable::as_raw(self), dwcontext).ok()
}
}
::windows::core::interface_hierarchy!(IThumbnailSettings, ::windows::core::IUnknown);
impl ::core::clone::Clone for IThumbnailSettings {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IThumbnailSettings {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IThumbnailSettings {}
impl ::core::fmt::Debug for IThumbnailSettings {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IThumbnailSettings").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IThumbnailSettings {
type Vtable = IThumbnailSettings_Vtbl;
}
unsafe impl ::windows::core::Interface for IThumbnailSettings {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf4376f00_bef5_4d45_80f3_1e023bbf1209);
}
#[repr(C)]
#[doc(hidden)]
pub struct IThumbnailSettings_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetContext: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwcontext: WTS_CONTEXTFLAGS) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IThumbnailStreamCache(::windows::core::IUnknown);
impl IThumbnailStreamCache {
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
pub unsafe fn GetThumbnailStream<P0>(&self, path: P0, cacheid: u64, options: ThumbnailStreamCacheOptions, requestedthumbnailsize: u32, thumbnailsize: *mut super::super::Foundation::SIZE, thumbnailstream: *mut ::core::option::Option<super::super::System::Com::IStream>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).GetThumbnailStream)(::windows::core::Vtable::as_raw(self), path.into().abi(), cacheid, options, requestedthumbnailsize, thumbnailsize, ::core::mem::transmute(thumbnailstream)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
pub unsafe fn SetThumbnailStream<P0, P1>(&self, path: P0, cacheid: u64, thumbnailsize: super::super::Foundation::SIZE, thumbnailstream: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
(::windows::core::Vtable::vtable(self).SetThumbnailStream)(::windows::core::Vtable::as_raw(self), path.into().abi(), cacheid, ::core::mem::transmute(thumbnailsize), thumbnailstream.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IThumbnailStreamCache, ::windows::core::IUnknown);
impl ::core::clone::Clone for IThumbnailStreamCache {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IThumbnailStreamCache {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IThumbnailStreamCache {}
impl ::core::fmt::Debug for IThumbnailStreamCache {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IThumbnailStreamCache").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IThumbnailStreamCache {
type Vtable = IThumbnailStreamCache_Vtbl;
}
unsafe impl ::windows::core::Interface for IThumbnailStreamCache {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x90e11430_9569_41d8_ae75_6d4d2ae7cca0);
}
#[repr(C)]
#[doc(hidden)]
pub struct IThumbnailStreamCache_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
pub GetThumbnailStream: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, path: ::windows::core::PCWSTR, cacheid: u64, options: ThumbnailStreamCacheOptions, requestedthumbnailsize: u32, thumbnailsize: *mut super::super::Foundation::SIZE, thumbnailstream: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com")))]
GetThumbnailStream: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
pub SetThumbnailStream: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, path: ::windows::core::PCWSTR, cacheid: u64, thumbnailsize: super::super::Foundation::SIZE, thumbnailstream: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com")))]
SetThumbnailStream: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ITrackShellMenu(::windows::core::IUnknown);
impl ITrackShellMenu {
pub unsafe fn Initialize<P0>(&self, psmc: P0, uid: u32, uidancestor: u32, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellMenuCallback>>,
{
(::windows::core::Vtable::vtable(self).base__.Initialize)(::windows::core::Vtable::as_raw(self), psmc.into().abi(), uid, uidancestor, dwflags).ok()
}
pub unsafe fn GetMenuInfo(&self, ppsmc: ::core::option::Option<*mut ::core::option::Option<IShellMenuCallback>>, puid: ::core::option::Option<*mut u32>, puidancestor: ::core::option::Option<*mut u32>, pdwflags: ::core::option::Option<*mut u32>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetMenuInfo)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(ppsmc.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(puid.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(puidancestor.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pdwflags.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_System_Registry\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Registry", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn SetShellFolder<P0, P1>(&self, psf: P0, pidlfolder: ::core::option::Option<*const Common::ITEMIDLIST>, hkey: P1, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellFolder>>,
P1: ::std::convert::Into<super::super::System::Registry::HKEY>,
{
(::windows::core::Vtable::vtable(self).base__.SetShellFolder)(::windows::core::Vtable::as_raw(self), psf.into().abi(), ::core::mem::transmute(pidlfolder.unwrap_or(::std::ptr::null())), hkey.into(), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetShellFolder(&self, pdwflags: *mut u32, ppidl: *mut *mut Common::ITEMIDLIST, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetShellFolder)(::windows::core::Vtable::as_raw(self), pdwflags, ppidl, riid, ppv).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn SetMenu<P0, P1>(&self, hmenu: P0, hwnd: P1, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::WindowsAndMessaging::HMENU>,
P1: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).base__.SetMenu)(::windows::core::Vtable::as_raw(self), hmenu.into(), hwnd.into(), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn GetMenu(&self, phmenu: ::core::option::Option<*mut super::WindowsAndMessaging::HMENU>, phwnd: ::core::option::Option<*mut super::super::Foundation::HWND>, pdwflags: ::core::option::Option<*mut u32>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetMenu)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(phmenu.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(phwnd.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(pdwflags.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn InvalidateItem(&self, psmd: ::core::option::Option<*const SMDATA>, dwflags: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.InvalidateItem)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(psmd.unwrap_or(::std::ptr::null())), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_WindowsAndMessaging"))]
pub unsafe fn GetState(&self, psmd: *mut SMDATA) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GetState)(::windows::core::Vtable::as_raw(self), psmd).ok()
}
pub unsafe fn SetMenuToolbar<P0>(&self, punk: P0, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).base__.SetMenuToolbar)(::windows::core::Vtable::as_raw(self), punk.into().abi(), dwflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetObscured<P0, P1>(&self, hwndtb: P0, punkband: P1, dwsmsetflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).SetObscured)(::windows::core::Vtable::as_raw(self), hwndtb.into(), punkband.into().abi(), dwsmsetflags).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Popup<P0>(&self, hwnd: P0, ppt: *mut super::super::Foundation::POINTL, prcexclude: *mut super::super::Foundation::RECTL, dwflags: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).Popup)(::windows::core::Vtable::as_raw(self), hwnd.into(), ppt, prcexclude, dwflags).ok()
}
}
::windows::core::interface_hierarchy!(ITrackShellMenu, ::windows::core::IUnknown, IShellMenu);
impl ::core::clone::Clone for ITrackShellMenu {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ITrackShellMenu {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ITrackShellMenu {}
impl ::core::fmt::Debug for ITrackShellMenu {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ITrackShellMenu").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ITrackShellMenu {
type Vtable = ITrackShellMenu_Vtbl;
}
unsafe impl ::windows::core::Interface for ITrackShellMenu {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8278f932_2a3e_11d2_838f_00c04fd918d0);
}
#[repr(C)]
#[doc(hidden)]
pub struct ITrackShellMenu_Vtbl {
pub base__: IShellMenu_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub SetObscured: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwndtb: super::super::Foundation::HWND, punkband: *mut ::core::ffi::c_void, dwsmsetflags: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetObscured: usize,
#[cfg(feature = "Win32_Foundation")]
pub Popup: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, ppt: *mut super::super::Foundation::POINTL, prcexclude: *mut super::super::Foundation::RECTL, dwflags: i32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Popup: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ITranscodeImage(::windows::core::IUnknown);
impl ITranscodeImage {
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn TranscodeImage<P0, P1>(&self, pshellitem: P0, uimaxwidth: u32, uimaxheight: u32, flags: u32, pvimage: P1, puiwidth: *mut u32, puiheight: *mut u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
(::windows::core::Vtable::vtable(self).TranscodeImage)(::windows::core::Vtable::as_raw(self), pshellitem.into().abi(), uimaxwidth, uimaxheight, flags, pvimage.into().abi(), puiwidth, puiheight).ok()
}
}
::windows::core::interface_hierarchy!(ITranscodeImage, ::windows::core::IUnknown);
impl ::core::clone::Clone for ITranscodeImage {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ITranscodeImage {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ITranscodeImage {}
impl ::core::fmt::Debug for ITranscodeImage {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ITranscodeImage").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ITranscodeImage {
type Vtable = ITranscodeImage_Vtbl;
}
unsafe impl ::windows::core::Interface for ITranscodeImage {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbae86ddd_dc11_421c_b7ab_cc55d1d65c44);
}
#[repr(C)]
#[doc(hidden)]
pub struct ITranscodeImage_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_System_Com")]
pub TranscodeImage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pshellitem: *mut ::core::ffi::c_void, uimaxwidth: u32, uimaxheight: u32, flags: u32, pvimage: *mut ::core::ffi::c_void, puiwidth: *mut u32, puiheight: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
TranscodeImage: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ITransferAdviseSink(::windows::core::IUnknown);
impl ITransferAdviseSink {
pub unsafe fn UpdateProgress(&self, ullsizecurrent: u64, ullsizetotal: u64, nfilescurrent: i32, nfilestotal: i32, nfolderscurrent: i32, nfolderstotal: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UpdateProgress)(::windows::core::Vtable::as_raw(self), ullsizecurrent, ullsizetotal, nfilescurrent, nfilestotal, nfolderscurrent, nfolderstotal).ok()
}
pub unsafe fn UpdateTransferState(&self, ts: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).UpdateTransferState)(::windows::core::Vtable::as_raw(self), ts).ok()
}
pub unsafe fn ConfirmOverwrite<P0, P1, P2>(&self, psisource: P0, psidestparent: P1, pszname: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).ConfirmOverwrite)(::windows::core::Vtable::as_raw(self), psisource.into().abi(), psidestparent.into().abi(), pszname.into().abi()).ok()
}
pub unsafe fn ConfirmEncryptionLoss<P0>(&self, psisource: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).ConfirmEncryptionLoss)(::windows::core::Vtable::as_raw(self), psisource.into().abi()).ok()
}
pub unsafe fn FileFailure<P0, P1>(&self, psi: P0, pszitem: P1, hrerror: ::windows::core::HRESULT, pszrename: &mut [u16]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).FileFailure)(::windows::core::Vtable::as_raw(self), psi.into().abi(), pszitem.into().abi(), hrerror, ::core::mem::transmute(pszrename.as_ptr()), pszrename.len() as _).ok()
}
pub unsafe fn SubStreamFailure<P0, P1>(&self, psi: P0, pszstreamname: P1, hrerror: ::windows::core::HRESULT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SubStreamFailure)(::windows::core::Vtable::as_raw(self), psi.into().abi(), pszstreamname.into().abi(), hrerror).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn PropertyFailure<P0>(&self, psi: P0, pkey: *const PropertiesSystem::PROPERTYKEY, hrerror: ::windows::core::HRESULT) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).PropertyFailure)(::windows::core::Vtable::as_raw(self), psi.into().abi(), pkey, hrerror).ok()
}
}
::windows::core::interface_hierarchy!(ITransferAdviseSink, ::windows::core::IUnknown);
impl ::core::clone::Clone for ITransferAdviseSink {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ITransferAdviseSink {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ITransferAdviseSink {}
impl ::core::fmt::Debug for ITransferAdviseSink {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ITransferAdviseSink").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ITransferAdviseSink {
type Vtable = ITransferAdviseSink_Vtbl;
}
unsafe impl ::windows::core::Interface for ITransferAdviseSink {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd594d0d8_8da7_457b_b3b4_ce5dbaac0b88);
}
#[repr(C)]
#[doc(hidden)]
pub struct ITransferAdviseSink_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub UpdateProgress: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ullsizecurrent: u64, ullsizetotal: u64, nfilescurrent: i32, nfilestotal: i32, nfolderscurrent: i32, nfolderstotal: i32) -> ::windows::core::HRESULT,
pub UpdateTransferState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ts: u32) -> ::windows::core::HRESULT,
pub ConfirmOverwrite: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psisource: *mut ::core::ffi::c_void, psidestparent: *mut ::core::ffi::c_void, pszname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub ConfirmEncryptionLoss: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psisource: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub FileFailure: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, pszitem: ::windows::core::PCWSTR, hrerror: ::windows::core::HRESULT, pszrename: ::windows::core::PWSTR, cchrename: u32) -> ::windows::core::HRESULT,
pub SubStreamFailure: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, pszstreamname: ::windows::core::PCWSTR, hrerror: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub PropertyFailure: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, pkey: *const PropertiesSystem::PROPERTYKEY, hrerror: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
PropertyFailure: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ITransferDestination(::windows::core::IUnknown);
impl ITransferDestination {
pub unsafe fn Advise<P0>(&self, psink: P0) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<ITransferAdviseSink>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Advise)(::windows::core::Vtable::as_raw(self), psink.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Unadvise(&self, dwcookie: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Unadvise)(::windows::core::Vtable::as_raw(self), dwcookie).ok()
}
pub unsafe fn CreateItem<P0>(&self, pszname: P0, dwattributes: u32, ullsize: u64, flags: u32, riiditem: *const ::windows::core::GUID, ppvitem: *mut *mut ::core::ffi::c_void, riidresources: *const ::windows::core::GUID, ppvresources: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).CreateItem)(::windows::core::Vtable::as_raw(self), pszname.into().abi(), dwattributes, ullsize, flags, riiditem, ppvitem, riidresources, ppvresources).ok()
}
}
::windows::core::interface_hierarchy!(ITransferDestination, ::windows::core::IUnknown);
impl ::core::clone::Clone for ITransferDestination {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ITransferDestination {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ITransferDestination {}
impl ::core::fmt::Debug for ITransferDestination {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ITransferDestination").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ITransferDestination {
type Vtable = ITransferDestination_Vtbl;
}
unsafe impl ::windows::core::Interface for ITransferDestination {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x48addd32_3ca5_4124_abe3_b5a72531b207);
}
#[repr(C)]
#[doc(hidden)]
pub struct ITransferDestination_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Advise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psink: *mut ::core::ffi::c_void, pdwcookie: *mut u32) -> ::windows::core::HRESULT,
pub Unadvise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwcookie: u32) -> ::windows::core::HRESULT,
pub CreateItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszname: ::windows::core::PCWSTR, dwattributes: u32, ullsize: u64, flags: u32, riiditem: *const ::windows::core::GUID, ppvitem: *mut *mut ::core::ffi::c_void, riidresources: *const ::windows::core::GUID, ppvresources: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ITransferMediumItem(::windows::core::IUnknown);
impl ITransferMediumItem {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetItemIDList(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItemIDList)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetItem(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItem)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ITransferMediumItem, ::windows::core::IUnknown, IRelatedItem);
impl ::core::clone::Clone for ITransferMediumItem {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ITransferMediumItem {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ITransferMediumItem {}
impl ::core::fmt::Debug for ITransferMediumItem {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ITransferMediumItem").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ITransferMediumItem {
type Vtable = ITransferMediumItem_Vtbl;
}
unsafe impl ::windows::core::Interface for ITransferMediumItem {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x77f295d5_2d6f_4e19_b8ae_322f3e721ab5);
}
#[repr(C)]
#[doc(hidden)]
pub struct ITransferMediumItem_Vtbl {
pub base__: IRelatedItem_Vtbl,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ITransferSource(::windows::core::IUnknown);
impl ITransferSource {
pub unsafe fn Advise<P0>(&self, psink: P0) -> ::windows::core::Result<u32>
where
P0: ::std::convert::Into<::windows::core::InParam<ITransferAdviseSink>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Advise)(::windows::core::Vtable::as_raw(self), psink.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Unadvise(&self, dwcookie: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Unadvise)(::windows::core::Vtable::as_raw(self), dwcookie).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub unsafe fn SetProperties<P0>(&self, pproparray: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<PropertiesSystem::IPropertyChangeArray>>,
{
(::windows::core::Vtable::vtable(self).SetProperties)(::windows::core::Vtable::as_raw(self), pproparray.into().abi()).ok()
}
pub unsafe fn OpenItem<P0>(&self, psi: P0, flags: u32, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).OpenItem)(::windows::core::Vtable::as_raw(self), psi.into().abi(), flags, riid, ppv).ok()
}
pub unsafe fn MoveItem<P0, P1, P2>(&self, psi: P0, psiparentdst: P1, psznamedst: P2, flags: u32) -> ::windows::core::Result<IShellItem>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).MoveItem)(::windows::core::Vtable::as_raw(self), psi.into().abi(), psiparentdst.into().abi(), psznamedst.into().abi(), flags, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn RecycleItem<P0, P1>(&self, psisource: P0, psiparentdest: P1, flags: u32) -> ::windows::core::Result<IShellItem>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).RecycleItem)(::windows::core::Vtable::as_raw(self), psisource.into().abi(), psiparentdest.into().abi(), flags, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn RemoveItem<P0>(&self, psisource: P0, flags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).RemoveItem)(::windows::core::Vtable::as_raw(self), psisource.into().abi(), flags).ok()
}
pub unsafe fn RenameItem<P0, P1>(&self, psisource: P0, psznewname: P1, flags: u32) -> ::windows::core::Result<IShellItem>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).RenameItem)(::windows::core::Vtable::as_raw(self), psisource.into().abi(), psznewname.into().abi(), flags, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn LinkItem<P0, P1, P2>(&self, psisource: P0, psiparentdest: P1, psznewname: P2, flags: u32) -> ::windows::core::Result<IShellItem>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P2: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).LinkItem)(::windows::core::Vtable::as_raw(self), psisource.into().abi(), psiparentdest.into().abi(), psznewname.into().abi(), flags, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn ApplyPropertiesToItem<P0>(&self, psisource: P0) -> ::windows::core::Result<IShellItem>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ApplyPropertiesToItem)(::windows::core::Vtable::as_raw(self), psisource.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetDefaultDestinationName<P0, P1>(&self, psisource: P0, psiparentdest: P1) -> ::windows::core::Result<::windows::core::PWSTR>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
P1: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetDefaultDestinationName)(::windows::core::Vtable::as_raw(self), psisource.into().abi(), psiparentdest.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn EnterFolder<P0>(&self, psichildfolderdest: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).EnterFolder)(::windows::core::Vtable::as_raw(self), psichildfolderdest.into().abi()).ok()
}
pub unsafe fn LeaveFolder<P0>(&self, psichildfolderdest: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IShellItem>>,
{
(::windows::core::Vtable::vtable(self).LeaveFolder)(::windows::core::Vtable::as_raw(self), psichildfolderdest.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(ITransferSource, ::windows::core::IUnknown);
impl ::core::clone::Clone for ITransferSource {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ITransferSource {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ITransferSource {}
impl ::core::fmt::Debug for ITransferSource {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ITransferSource").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ITransferSource {
type Vtable = ITransferSource_Vtbl;
}
unsafe impl ::windows::core::Interface for ITransferSource {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00adb003_bde9_45c6_8e29_d09f9353e108);
}
#[repr(C)]
#[doc(hidden)]
pub struct ITransferSource_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Advise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psink: *mut ::core::ffi::c_void, pdwcookie: *mut u32) -> ::windows::core::HRESULT,
pub Unadvise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwcookie: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub SetProperties: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pproparray: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))]
SetProperties: usize,
pub OpenItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, flags: u32, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub MoveItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psi: *mut ::core::ffi::c_void, psiparentdst: *mut ::core::ffi::c_void, psznamedst: ::windows::core::PCWSTR, flags: u32, ppsinew: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub RecycleItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psisource: *mut ::core::ffi::c_void, psiparentdest: *mut ::core::ffi::c_void, flags: u32, ppsinewdest: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub RemoveItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psisource: *mut ::core::ffi::c_void, flags: u32) -> ::windows::core::HRESULT,
pub RenameItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psisource: *mut ::core::ffi::c_void, psznewname: ::windows::core::PCWSTR, flags: u32, ppsinewdest: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub LinkItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psisource: *mut ::core::ffi::c_void, psiparentdest: *mut ::core::ffi::c_void, psznewname: ::windows::core::PCWSTR, flags: u32, ppsinewdest: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub ApplyPropertiesToItem: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psisource: *mut ::core::ffi::c_void, ppsinew: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetDefaultDestinationName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psisource: *mut ::core::ffi::c_void, psiparentdest: *mut ::core::ffi::c_void, ppszdestinationname: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub EnterFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psichildfolderdest: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub LeaveFolder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psichildfolderdest: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ITravelEntry(::windows::core::IUnknown);
impl ITravelEntry {
pub unsafe fn Invoke<P0>(&self, punk: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).Invoke)(::windows::core::Vtable::as_raw(self), punk.into().abi()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Update<P0, P1>(&self, punk: P0, fislocalanchor: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).Update)(::windows::core::Vtable::as_raw(self), punk.into().abi(), fislocalanchor.into()).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetPidl(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPidl)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ITravelEntry, ::windows::core::IUnknown);
impl ::core::clone::Clone for ITravelEntry {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ITravelEntry {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ITravelEntry {}
impl ::core::fmt::Debug for ITravelEntry {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ITravelEntry").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ITravelEntry {
type Vtable = ITravelEntry_Vtbl;
}
unsafe impl ::windows::core::Interface for ITravelEntry {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf46edb3b_bc2f_11d0_9412_00aa00a3ebd3);
}
#[repr(C)]
#[doc(hidden)]
pub struct ITravelEntry_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Invoke: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub Update: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void, fislocalanchor: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Update: usize,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub GetPidl: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppidl: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
GetPidl: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ITravelLog(::windows::core::IUnknown);
impl ITravelLog {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn AddEntry<P0, P1>(&self, punk: P0, fislocalanchor: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).AddEntry)(::windows::core::Vtable::as_raw(self), punk.into().abi(), fislocalanchor.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn UpdateEntry<P0, P1>(&self, punk: P0, fislocalanchor: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).UpdateEntry)(::windows::core::Vtable::as_raw(self), punk.into().abi(), fislocalanchor.into()).ok()
}
pub unsafe fn UpdateExternal<P0, P1>(&self, punk: P0, punkhlbrowsecontext: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).UpdateExternal)(::windows::core::Vtable::as_raw(self), punk.into().abi(), punkhlbrowsecontext.into().abi()).ok()
}
pub unsafe fn Travel<P0>(&self, punk: P0, ioffset: i32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).Travel)(::windows::core::Vtable::as_raw(self), punk.into().abi(), ioffset).ok()
}
pub unsafe fn GetTravelEntry<P0>(&self, punk: P0, ioffset: i32, ppte: ::core::option::Option<*mut ::core::option::Option<ITravelEntry>>) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).GetTravelEntry)(::windows::core::Vtable::as_raw(self), punk.into().abi(), ioffset, ::core::mem::transmute(ppte.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn FindTravelEntry<P0>(&self, punk: P0, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<ITravelEntry>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).FindTravelEntry)(::windows::core::Vtable::as_raw(self), punk.into().abi(), pidl, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetToolTipText<P0>(&self, punk: P0, ioffset: i32, idstemplate: i32, pwztext: &mut [u16]) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).GetToolTipText)(::windows::core::Vtable::as_raw(self), punk.into().abi(), ioffset, idstemplate, ::core::mem::transmute(pwztext.as_ptr()), pwztext.len() as _).ok()
}
#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub unsafe fn InsertMenuEntries<P0, P1>(&self, punk: P0, hmenu: P1, npos: i32, idfirst: i32, idlast: i32, dwflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
P1: ::std::convert::Into<super::WindowsAndMessaging::HMENU>,
{
(::windows::core::Vtable::vtable(self).InsertMenuEntries)(::windows::core::Vtable::as_raw(self), punk.into().abi(), hmenu.into(), npos, idfirst, idlast, dwflags).ok()
}
pub unsafe fn Clone(&self) -> ::windows::core::Result<ITravelLog> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Clone)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn CountEntries<P0>(&self, punk: P0) -> u32
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::IUnknown>>,
{
(::windows::core::Vtable::vtable(self).CountEntries)(::windows::core::Vtable::as_raw(self), punk.into().abi())
}
pub unsafe fn Revert(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Revert)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(ITravelLog, ::windows::core::IUnknown);
impl ::core::clone::Clone for ITravelLog {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ITravelLog {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ITravelLog {}
impl ::core::fmt::Debug for ITravelLog {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ITravelLog").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ITravelLog {
type Vtable = ITravelLog_Vtbl;
}
unsafe impl ::windows::core::Interface for ITravelLog {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x66a9cb08_4802_11d2_a561_00a0c92dbfe8);
}
#[repr(C)]
#[doc(hidden)]
pub struct ITravelLog_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub AddEntry: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void, fislocalanchor: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
AddEntry: usize,
#[cfg(feature = "Win32_Foundation")]
pub UpdateEntry: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void, fislocalanchor: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
UpdateEntry: usize,
pub UpdateExternal: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void, punkhlbrowsecontext: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Travel: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void, ioffset: i32) -> ::windows::core::HRESULT,
pub GetTravelEntry: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void, ioffset: i32, ppte: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_Shell_Common")]
pub FindTravelEntry: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, ppte: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Shell_Common"))]
FindTravelEntry: usize,
pub GetToolTipText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void, ioffset: i32, idstemplate: i32, pwztext: ::windows::core::PWSTR, cchtext: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub InsertMenuEntries: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void, hmenu: super::WindowsAndMessaging::HMENU, npos: i32, idfirst: i32, idlast: i32, dwflags: u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_WindowsAndMessaging"))]
InsertMenuEntries: usize,
pub Clone: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pptl: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub CountEntries: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, punk: *mut ::core::ffi::c_void) -> u32,
pub Revert: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ITravelLogClient(::windows::core::IUnknown);
impl ITravelLogClient {
pub unsafe fn FindWindowByIndex(&self, dwid: u32) -> ::windows::core::Result<::windows::core::IUnknown> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).FindWindowByIndex)(::windows::core::Vtable::as_raw(self), dwid, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn GetWindowData<P0>(&self, pstream: P0, pwindata: *mut WINDOWDATA) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IStream>>,
{
(::windows::core::Vtable::vtable(self).GetWindowData)(::windows::core::Vtable::as_raw(self), pstream.into().abi(), pwindata).ok()
}
pub unsafe fn LoadHistoryPosition<P0>(&self, pszurllocation: P0, dwposition: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).LoadHistoryPosition)(::windows::core::Vtable::as_raw(self), pszurllocation.into().abi(), dwposition).ok()
}
}
::windows::core::interface_hierarchy!(ITravelLogClient, ::windows::core::IUnknown);
impl ::core::clone::Clone for ITravelLogClient {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ITravelLogClient {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ITravelLogClient {}
impl ::core::fmt::Debug for ITravelLogClient {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ITravelLogClient").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ITravelLogClient {
type Vtable = ITravelLogClient_Vtbl;
}
unsafe impl ::windows::core::Interface for ITravelLogClient {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x241c033e_e659_43da_aa4d_4086dbc4758d);
}
#[repr(C)]
#[doc(hidden)]
pub struct ITravelLogClient_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub FindWindowByIndex: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwid: u32, ppunk: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub GetWindowData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstream: *mut ::core::ffi::c_void, pwindata: *mut WINDOWDATA) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common")))]
GetWindowData: usize,
pub LoadHistoryPosition: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszurllocation: ::windows::core::PCWSTR, dwposition: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ITravelLogEntry(::windows::core::IUnknown);
impl ITravelLogEntry {
pub unsafe fn GetTitle(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetTitle)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetURL(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetURL)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ITravelLogEntry, ::windows::core::IUnknown);
impl ::core::clone::Clone for ITravelLogEntry {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ITravelLogEntry {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ITravelLogEntry {}
impl ::core::fmt::Debug for ITravelLogEntry {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ITravelLogEntry").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ITravelLogEntry {
type Vtable = ITravelLogEntry_Vtbl;
}
unsafe impl ::windows::core::Interface for ITravelLogEntry {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7ebfdd87_ad18_11d3_a4c5_00c04f72d6b8);
}
#[repr(C)]
#[doc(hidden)]
pub struct ITravelLogEntry_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub GetTitle: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppsztitle: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
pub GetURL: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszurl: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ITravelLogStg(::windows::core::IUnknown);
impl ITravelLogStg {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn CreateEntry<P0, P1, P2, P3>(&self, pszurl: P0, psztitle: P1, ptlerelativeto: P2, fprepend: P3) -> ::windows::core::Result<ITravelLogEntry>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P2: ::std::convert::Into<::windows::core::InParam<ITravelLogEntry>>,
P3: ::std::convert::Into<super::super::Foundation::BOOL>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).CreateEntry)(::windows::core::Vtable::as_raw(self), pszurl.into().abi(), psztitle.into().abi(), ptlerelativeto.into().abi(), fprepend.into(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn TravelTo<P0>(&self, ptle: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ITravelLogEntry>>,
{
(::windows::core::Vtable::vtable(self).TravelTo)(::windows::core::Vtable::as_raw(self), ptle.into().abi()).ok()
}
pub unsafe fn EnumEntries(&self, flags: TLENUMF) -> ::windows::core::Result<IEnumTravelLogEntry> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).EnumEntries)(::windows::core::Vtable::as_raw(self), flags, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn FindEntries<P0>(&self, flags: TLENUMF, pszurl: P0) -> ::windows::core::Result<IEnumTravelLogEntry>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).FindEntries)(::windows::core::Vtable::as_raw(self), flags, pszurl.into().abi(), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetCount(&self, flags: TLENUMF) -> ::windows::core::Result<u32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCount)(::windows::core::Vtable::as_raw(self), flags, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn RemoveEntry<P0>(&self, ptle: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ITravelLogEntry>>,
{
(::windows::core::Vtable::vtable(self).RemoveEntry)(::windows::core::Vtable::as_raw(self), ptle.into().abi()).ok()
}
pub unsafe fn GetRelativeEntry(&self, ioffset: i32) -> ::windows::core::Result<ITravelLogEntry> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetRelativeEntry)(::windows::core::Vtable::as_raw(self), ioffset, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(ITravelLogStg, ::windows::core::IUnknown);
impl ::core::clone::Clone for ITravelLogStg {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ITravelLogStg {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ITravelLogStg {}
impl ::core::fmt::Debug for ITravelLogStg {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ITravelLogStg").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ITravelLogStg {
type Vtable = ITravelLogStg_Vtbl;
}
unsafe impl ::windows::core::Interface for ITravelLogStg {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7ebfdd80_ad18_11d3_a4c5_00c04f72d6b8);
}
#[repr(C)]
#[doc(hidden)]
pub struct ITravelLogStg_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub CreateEntry: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszurl: ::windows::core::PCWSTR, psztitle: ::windows::core::PCWSTR, ptlerelativeto: *mut ::core::ffi::c_void, fprepend: super::super::Foundation::BOOL, pptle: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
CreateEntry: usize,
pub TravelTo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ptle: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub EnumEntries: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, flags: TLENUMF, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub FindEntries: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, flags: TLENUMF, pszurl: ::windows::core::PCWSTR, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, flags: TLENUMF, pcentries: *mut u32) -> ::windows::core::HRESULT,
pub RemoveEntry: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ptle: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GetRelativeEntry: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ioffset: i32, ptle: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct ITrayDeskBand(::windows::core::IUnknown);
impl ITrayDeskBand {
pub unsafe fn ShowDeskBand(&self, clsid: *const ::windows::core::GUID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ShowDeskBand)(::windows::core::Vtable::as_raw(self), clsid).ok()
}
pub unsafe fn HideDeskBand(&self, clsid: *const ::windows::core::GUID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).HideDeskBand)(::windows::core::Vtable::as_raw(self), clsid).ok()
}
pub unsafe fn IsDeskBandShown(&self, clsid: *const ::windows::core::GUID) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).IsDeskBandShown)(::windows::core::Vtable::as_raw(self), clsid).ok()
}
pub unsafe fn DeskBandRegistrationChanged(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).DeskBandRegistrationChanged)(::windows::core::Vtable::as_raw(self)).ok()
}
}
::windows::core::interface_hierarchy!(ITrayDeskBand, ::windows::core::IUnknown);
impl ::core::clone::Clone for ITrayDeskBand {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for ITrayDeskBand {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for ITrayDeskBand {}
impl ::core::fmt::Debug for ITrayDeskBand {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ITrayDeskBand").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for ITrayDeskBand {
type Vtable = ITrayDeskBand_Vtbl;
}
unsafe impl ::windows::core::Interface for ITrayDeskBand {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6d67e846_5b9c_4db8_9cbc_dde12f4254f1);
}
#[repr(C)]
#[doc(hidden)]
pub struct ITrayDeskBand_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub ShowDeskBand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clsid: *const ::windows::core::GUID) -> ::windows::core::HRESULT,
pub HideDeskBand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clsid: *const ::windows::core::GUID) -> ::windows::core::HRESULT,
pub IsDeskBandShown: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clsid: *const ::windows::core::GUID) -> ::windows::core::HRESULT,
pub DeskBandRegistrationChanged: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IURLSearchHook(::windows::core::IUnknown);
impl IURLSearchHook {
pub unsafe fn Translate(&self, pwszsearchurl: &mut [u16]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Translate)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pwszsearchurl.as_ptr()), pwszsearchurl.len() as _).ok()
}
}
::windows::core::interface_hierarchy!(IURLSearchHook, ::windows::core::IUnknown);
impl ::core::clone::Clone for IURLSearchHook {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IURLSearchHook {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IURLSearchHook {}
impl ::core::fmt::Debug for IURLSearchHook {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IURLSearchHook").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IURLSearchHook {
type Vtable = IURLSearchHook_Vtbl;
}
unsafe impl ::windows::core::Interface for IURLSearchHook {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xac60f6a0_0fd9_11d0_99cb_00c04fd64497);
}
#[repr(C)]
#[doc(hidden)]
pub struct IURLSearchHook_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub Translate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwszsearchurl: ::windows::core::PWSTR, cchbuffersize: u32) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IURLSearchHook2(::windows::core::IUnknown);
impl IURLSearchHook2 {
pub unsafe fn Translate(&self, pwszsearchurl: &mut [u16]) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Translate)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pwszsearchurl.as_ptr()), pwszsearchurl.len() as _).ok()
}
pub unsafe fn TranslateWithSearchContext<P0>(&self, pwszsearchurl: &mut [u16], psearchcontext: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<ISearchContext>>,
{
(::windows::core::Vtable::vtable(self).TranslateWithSearchContext)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(pwszsearchurl.as_ptr()), pwszsearchurl.len() as _, psearchcontext.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IURLSearchHook2, ::windows::core::IUnknown, IURLSearchHook);
impl ::core::clone::Clone for IURLSearchHook2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IURLSearchHook2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IURLSearchHook2 {}
impl ::core::fmt::Debug for IURLSearchHook2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IURLSearchHook2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IURLSearchHook2 {
type Vtable = IURLSearchHook2_Vtbl;
}
unsafe impl ::windows::core::Interface for IURLSearchHook2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5ee44da4_6d32_46e3_86bc_07540dedd0e0);
}
#[repr(C)]
#[doc(hidden)]
pub struct IURLSearchHook2_Vtbl {
pub base__: IURLSearchHook_Vtbl,
pub TranslateWithSearchContext: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwszsearchurl: ::windows::core::PWSTR, cchbuffersize: u32, psearchcontext: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IUniformResourceLocatorA(::windows::core::IUnknown);
impl IUniformResourceLocatorA {
pub unsafe fn SetURL<P0>(&self, pcszurl: P0, dwinflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCSTR>>,
{
(::windows::core::Vtable::vtable(self).SetURL)(::windows::core::Vtable::as_raw(self), pcszurl.into().abi(), dwinflags).ok()
}
pub unsafe fn GetURL(&self) -> ::windows::core::Result<::windows::core::PSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetURL)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn InvokeCommand(&self, purlici: *mut URLINVOKECOMMANDINFOA) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).InvokeCommand)(::windows::core::Vtable::as_raw(self), purlici).ok()
}
}
::windows::core::interface_hierarchy!(IUniformResourceLocatorA, ::windows::core::IUnknown);
impl ::core::clone::Clone for IUniformResourceLocatorA {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IUniformResourceLocatorA {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IUniformResourceLocatorA {}
impl ::core::fmt::Debug for IUniformResourceLocatorA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IUniformResourceLocatorA").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IUniformResourceLocatorA {
type Vtable = IUniformResourceLocatorA_Vtbl;
}
unsafe impl ::windows::core::Interface for IUniformResourceLocatorA {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfbf23b80_e3f0_101b_8488_00aa003e56f8);
}
#[repr(C)]
#[doc(hidden)]
pub struct IUniformResourceLocatorA_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetURL: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcszurl: ::windows::core::PCSTR, dwinflags: u32) -> ::windows::core::HRESULT,
pub GetURL: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszurl: *mut ::windows::core::PSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub InvokeCommand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, purlici: *mut URLINVOKECOMMANDINFOA) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
InvokeCommand: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IUniformResourceLocatorW(::windows::core::IUnknown);
impl IUniformResourceLocatorW {
pub unsafe fn SetURL<P0>(&self, pcszurl: P0, dwinflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetURL)(::windows::core::Vtable::as_raw(self), pcszurl.into().abi(), dwinflags).ok()
}
pub unsafe fn GetURL(&self) -> ::windows::core::Result<::windows::core::PWSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetURL)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn InvokeCommand(&self, purlici: *mut URLINVOKECOMMANDINFOW) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).InvokeCommand)(::windows::core::Vtable::as_raw(self), purlici).ok()
}
}
::windows::core::interface_hierarchy!(IUniformResourceLocatorW, ::windows::core::IUnknown);
impl ::core::clone::Clone for IUniformResourceLocatorW {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IUniformResourceLocatorW {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IUniformResourceLocatorW {}
impl ::core::fmt::Debug for IUniformResourceLocatorW {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IUniformResourceLocatorW").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IUniformResourceLocatorW {
type Vtable = IUniformResourceLocatorW_Vtbl;
}
unsafe impl ::windows::core::Interface for IUniformResourceLocatorW {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcabb0da0_da57_11cf_9974_0020afd79762);
}
#[repr(C)]
#[doc(hidden)]
pub struct IUniformResourceLocatorW_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetURL: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcszurl: ::windows::core::PCWSTR, dwinflags: u32) -> ::windows::core::HRESULT,
pub GetURL: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppszurl: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub InvokeCommand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, purlici: *mut URLINVOKECOMMANDINFOW) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
InvokeCommand: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IUpdateIDList(::windows::core::IUnknown);
impl IUpdateIDList {
#[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub unsafe fn Update<P0>(&self, pbc: P0, pidlin: *const Common::ITEMIDLIST) -> ::windows::core::Result<*mut Common::ITEMIDLIST>
where
P0: ::std::convert::Into<::windows::core::InParam<super::super::System::Com::IBindCtx>>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Update)(::windows::core::Vtable::as_raw(self), pbc.into().abi(), pidlin, result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IUpdateIDList, ::windows::core::IUnknown);
impl ::core::clone::Clone for IUpdateIDList {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IUpdateIDList {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IUpdateIDList {}
impl ::core::fmt::Debug for IUpdateIDList {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IUpdateIDList").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IUpdateIDList {
type Vtable = IUpdateIDList_Vtbl;
}
unsafe impl ::windows::core::Interface for IUpdateIDList {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6589b6d2_5f8d_4b9e_b7e0_23cdd9717d8c);
}
#[repr(C)]
#[doc(hidden)]
pub struct IUpdateIDList_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))]
pub Update: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbc: *mut ::core::ffi::c_void, pidlin: *const Common::ITEMIDLIST, ppidlout: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common")))]
Update: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IUseToBrowseItem(::windows::core::IUnknown);
impl IUseToBrowseItem {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetItemIDList(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItemIDList)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetItem(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItem)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IUseToBrowseItem, ::windows::core::IUnknown, IRelatedItem);
impl ::core::clone::Clone for IUseToBrowseItem {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IUseToBrowseItem {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IUseToBrowseItem {}
impl ::core::fmt::Debug for IUseToBrowseItem {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IUseToBrowseItem").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IUseToBrowseItem {
type Vtable = IUseToBrowseItem_Vtbl;
}
unsafe impl ::windows::core::Interface for IUseToBrowseItem {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x05edda5c_98a3_4717_8adb_c5e7da991eb1);
}
#[repr(C)]
#[doc(hidden)]
pub struct IUseToBrowseItem_Vtbl {
pub base__: IRelatedItem_Vtbl,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IUserAccountChangeCallback(::windows::core::IUnknown);
impl IUserAccountChangeCallback {
pub unsafe fn OnPictureChange<P0>(&self, pszusername: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).OnPictureChange)(::windows::core::Vtable::as_raw(self), pszusername.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IUserAccountChangeCallback, ::windows::core::IUnknown);
impl ::core::clone::Clone for IUserAccountChangeCallback {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IUserAccountChangeCallback {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IUserAccountChangeCallback {}
impl ::core::fmt::Debug for IUserAccountChangeCallback {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IUserAccountChangeCallback").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IUserAccountChangeCallback {
type Vtable = IUserAccountChangeCallback_Vtbl;
}
unsafe impl ::windows::core::Interface for IUserAccountChangeCallback {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa561e69a_b4b8_4113_91a5_64c6bcca3430);
}
#[repr(C)]
#[doc(hidden)]
pub struct IUserAccountChangeCallback_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub OnPictureChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszusername: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IUserNotification(::windows::core::IUnknown);
impl IUserNotification {
pub unsafe fn SetBalloonInfo<P0, P1>(&self, psztitle: P0, psztext: P1, dwinfoflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetBalloonInfo)(::windows::core::Vtable::as_raw(self), psztitle.into().abi(), psztext.into().abi(), dwinfoflags).ok()
}
pub unsafe fn SetBalloonRetry(&self, dwshowtime: u32, dwinterval: u32, cretrycount: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetBalloonRetry)(::windows::core::Vtable::as_raw(self), dwshowtime, dwinterval, cretrycount).ok()
}
#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub unsafe fn SetIconInfo<P0, P1>(&self, hicon: P0, psztooltip: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::WindowsAndMessaging::HICON>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetIconInfo)(::windows::core::Vtable::as_raw(self), hicon.into(), psztooltip.into().abi()).ok()
}
pub unsafe fn Show<P0>(&self, pqc: P0, dwcontinuepollinterval: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IQueryContinue>>,
{
(::windows::core::Vtable::vtable(self).Show)(::windows::core::Vtable::as_raw(self), pqc.into().abi(), dwcontinuepollinterval).ok()
}
pub unsafe fn PlaySound<P0>(&self, pszsoundname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).PlaySound)(::windows::core::Vtable::as_raw(self), pszsoundname.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IUserNotification, ::windows::core::IUnknown);
impl ::core::clone::Clone for IUserNotification {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IUserNotification {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IUserNotification {}
impl ::core::fmt::Debug for IUserNotification {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IUserNotification").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IUserNotification {
type Vtable = IUserNotification_Vtbl;
}
unsafe impl ::windows::core::Interface for IUserNotification {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xba9711ba_5893_4787_a7e1_41277151550b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IUserNotification_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetBalloonInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psztitle: ::windows::core::PCWSTR, psztext: ::windows::core::PCWSTR, dwinfoflags: u32) -> ::windows::core::HRESULT,
pub SetBalloonRetry: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwshowtime: u32, dwinterval: u32, cretrycount: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub SetIconInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hicon: super::WindowsAndMessaging::HICON, psztooltip: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_WindowsAndMessaging"))]
SetIconInfo: usize,
pub Show: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pqc: *mut ::core::ffi::c_void, dwcontinuepollinterval: u32) -> ::windows::core::HRESULT,
pub PlaySound: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszsoundname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IUserNotification2(::windows::core::IUnknown);
impl IUserNotification2 {
pub unsafe fn SetBalloonInfo<P0, P1>(&self, psztitle: P0, psztext: P1, dwinfoflags: u32) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetBalloonInfo)(::windows::core::Vtable::as_raw(self), psztitle.into().abi(), psztext.into().abi(), dwinfoflags).ok()
}
pub unsafe fn SetBalloonRetry(&self, dwshowtime: u32, dwinterval: u32, cretrycount: u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetBalloonRetry)(::windows::core::Vtable::as_raw(self), dwshowtime, dwinterval, cretrycount).ok()
}
#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub unsafe fn SetIconInfo<P0, P1>(&self, hicon: P0, psztooltip: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::WindowsAndMessaging::HICON>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetIconInfo)(::windows::core::Vtable::as_raw(self), hicon.into(), psztooltip.into().abi()).ok()
}
pub unsafe fn Show<P0, P1>(&self, pqc: P0, dwcontinuepollinterval: u32, psink: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<IQueryContinue>>,
P1: ::std::convert::Into<::windows::core::InParam<IUserNotificationCallback>>,
{
(::windows::core::Vtable::vtable(self).Show)(::windows::core::Vtable::as_raw(self), pqc.into().abi(), dwcontinuepollinterval, psink.into().abi()).ok()
}
pub unsafe fn PlaySound<P0>(&self, pszsoundname: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).PlaySound)(::windows::core::Vtable::as_raw(self), pszsoundname.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IUserNotification2, ::windows::core::IUnknown);
impl ::core::clone::Clone for IUserNotification2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IUserNotification2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IUserNotification2 {}
impl ::core::fmt::Debug for IUserNotification2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IUserNotification2").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IUserNotification2 {
type Vtable = IUserNotification2_Vtbl;
}
unsafe impl ::windows::core::Interface for IUserNotification2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x215913cc_57eb_4fab_ab5a_e5fa7bea2a6c);
}
#[repr(C)]
#[doc(hidden)]
pub struct IUserNotification2_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
pub SetBalloonInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psztitle: ::windows::core::PCWSTR, psztext: ::windows::core::PCWSTR, dwinfoflags: u32) -> ::windows::core::HRESULT,
pub SetBalloonRetry: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwshowtime: u32, dwinterval: u32, cretrycount: u32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub SetIconInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hicon: super::WindowsAndMessaging::HICON, psztooltip: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_WindowsAndMessaging"))]
SetIconInfo: usize,
pub Show: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pqc: *mut ::core::ffi::c_void, dwcontinuepollinterval: u32, psink: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub PlaySound: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszsoundname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IUserNotificationCallback(::windows::core::IUnknown);
impl IUserNotificationCallback {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnBalloonUserClick(&self, pt: *const super::super::Foundation::POINT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OnBalloonUserClick)(::windows::core::Vtable::as_raw(self), pt).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnLeftClick(&self, pt: *const super::super::Foundation::POINT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OnLeftClick)(::windows::core::Vtable::as_raw(self), pt).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn OnContextMenu(&self, pt: *const super::super::Foundation::POINT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).OnContextMenu)(::windows::core::Vtable::as_raw(self), pt).ok()
}
}
::windows::core::interface_hierarchy!(IUserNotificationCallback, ::windows::core::IUnknown);
impl ::core::clone::Clone for IUserNotificationCallback {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IUserNotificationCallback {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IUserNotificationCallback {}
impl ::core::fmt::Debug for IUserNotificationCallback {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IUserNotificationCallback").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IUserNotificationCallback {
type Vtable = IUserNotificationCallback_Vtbl;
}
unsafe impl ::windows::core::Interface for IUserNotificationCallback {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x19108294_0441_4aff_8013_fa0a730b0bea);
}
#[repr(C)]
#[doc(hidden)]
pub struct IUserNotificationCallback_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub OnBalloonUserClick: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pt: *const super::super::Foundation::POINT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
OnBalloonUserClick: usize,
#[cfg(feature = "Win32_Foundation")]
pub OnLeftClick: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pt: *const super::super::Foundation::POINT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
OnLeftClick: usize,
#[cfg(feature = "Win32_Foundation")]
pub OnContextMenu: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pt: *const super::super::Foundation::POINT) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
OnContextMenu: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IViewStateIdentityItem(::windows::core::IUnknown);
impl IViewStateIdentityItem {
#[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub unsafe fn GetItemIDList(&self) -> ::windows::core::Result<*mut Common::ITEMIDLIST> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItemIDList)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn GetItem(&self) -> ::windows::core::Result<IShellItem> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetItem)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IViewStateIdentityItem, ::windows::core::IUnknown, IRelatedItem);
impl ::core::clone::Clone for IViewStateIdentityItem {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IViewStateIdentityItem {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IViewStateIdentityItem {}
impl ::core::fmt::Debug for IViewStateIdentityItem {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IViewStateIdentityItem").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IViewStateIdentityItem {
type Vtable = IViewStateIdentityItem_Vtbl;
}
unsafe impl ::windows::core::Interface for IViewStateIdentityItem {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9d264146_a94f_4195_9f9f_3bb12ce0c955);
}
#[repr(C)]
#[doc(hidden)]
pub struct IViewStateIdentityItem_Vtbl {
pub base__: IRelatedItem_Vtbl,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IVirtualDesktopManager(::windows::core::IUnknown);
impl IVirtualDesktopManager {
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn IsWindowOnCurrentVirtualDesktop<P0>(&self, toplevelwindow: P0) -> ::windows::core::Result<super::super::Foundation::BOOL>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).IsWindowOnCurrentVirtualDesktop)(::windows::core::Vtable::as_raw(self), toplevelwindow.into(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetWindowDesktopId<P0>(&self, toplevelwindow: P0) -> ::windows::core::Result<::windows::core::GUID>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetWindowDesktopId)(::windows::core::Vtable::as_raw(self), toplevelwindow.into(), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn MoveWindowToDesktop<P0>(&self, toplevelwindow: P0, desktopid: *const ::windows::core::GUID) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::HWND>,
{
(::windows::core::Vtable::vtable(self).MoveWindowToDesktop)(::windows::core::Vtable::as_raw(self), toplevelwindow.into(), desktopid).ok()
}
}
::windows::core::interface_hierarchy!(IVirtualDesktopManager, ::windows::core::IUnknown);
impl ::core::clone::Clone for IVirtualDesktopManager {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IVirtualDesktopManager {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IVirtualDesktopManager {}
impl ::core::fmt::Debug for IVirtualDesktopManager {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IVirtualDesktopManager").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IVirtualDesktopManager {
type Vtable = IVirtualDesktopManager_Vtbl;
}
unsafe impl ::windows::core::Interface for IVirtualDesktopManager {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa5cd92ff_29be_454c_8d04_d82879fb3f1b);
}
#[repr(C)]
#[doc(hidden)]
pub struct IVirtualDesktopManager_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Foundation")]
pub IsWindowOnCurrentVirtualDesktop: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, toplevelwindow: super::super::Foundation::HWND, oncurrentdesktop: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
IsWindowOnCurrentVirtualDesktop: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetWindowDesktopId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, toplevelwindow: super::super::Foundation::HWND, desktopid: *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetWindowDesktopId: usize,
#[cfg(feature = "Win32_Foundation")]
pub MoveWindowToDesktop: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, toplevelwindow: super::super::Foundation::HWND, desktopid: *const ::windows::core::GUID) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
MoveWindowToDesktop: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IVisualProperties(::windows::core::IUnknown);
impl IVisualProperties {
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn SetWatermark<P0>(&self, hbmp: P0, vpwf: VPWATERMARKFLAGS) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Graphics::Gdi::HBITMAP>,
{
(::windows::core::Vtable::vtable(self).SetWatermark)(::windows::core::Vtable::as_raw(self), hbmp.into(), vpwf).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetColor<P0>(&self, vpcf: VPCOLORFLAGS, cr: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::COLORREF>,
{
(::windows::core::Vtable::vtable(self).SetColor)(::windows::core::Vtable::as_raw(self), vpcf, cr.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn GetColor(&self, vpcf: VPCOLORFLAGS) -> ::windows::core::Result<super::super::Foundation::COLORREF> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetColor)(::windows::core::Vtable::as_raw(self), vpcf, result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetItemHeight(&self, cyiteminpixels: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetItemHeight)(::windows::core::Vtable::as_raw(self), cyiteminpixels).ok()
}
pub unsafe fn GetItemHeight(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetItemHeight)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
pub unsafe fn SetFont<P0>(&self, plf: *const super::super::Graphics::Gdi::LOGFONTW, bredraw: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::BOOL>,
{
(::windows::core::Vtable::vtable(self).SetFont)(::windows::core::Vtable::as_raw(self), plf, bredraw.into()).ok()
}
#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"]
#[cfg(feature = "Win32_Graphics_Gdi")]
pub unsafe fn GetFont(&self, plf: *mut super::super::Graphics::Gdi::LOGFONTW) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GetFont)(::windows::core::Vtable::as_raw(self), plf).ok()
}
pub unsafe fn SetTheme<P0, P1>(&self, pszsubappname: P0, pszsubidlist: P1) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
P1: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetTheme)(::windows::core::Vtable::as_raw(self), pszsubappname.into().abi(), pszsubidlist.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IVisualProperties, ::windows::core::IUnknown);
impl ::core::clone::Clone for IVisualProperties {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IVisualProperties {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IVisualProperties {}
impl ::core::fmt::Debug for IVisualProperties {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IVisualProperties").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IVisualProperties {
type Vtable = IVisualProperties_Vtbl;
}
unsafe impl ::windows::core::Interface for IVisualProperties {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe693cf68_d967_4112_8763_99172aee5e5a);
}
#[repr(C)]
#[doc(hidden)]
pub struct IVisualProperties_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Graphics_Gdi")]
pub SetWatermark: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hbmp: super::super::Graphics::Gdi::HBITMAP, vpwf: VPWATERMARKFLAGS) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Gdi"))]
SetWatermark: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vpcf: VPCOLORFLAGS, cr: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetColor: usize,
#[cfg(feature = "Win32_Foundation")]
pub GetColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vpcf: VPCOLORFLAGS, pcr: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
GetColor: usize,
pub SetItemHeight: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cyiteminpixels: i32) -> ::windows::core::HRESULT,
pub GetItemHeight: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cyiteminpixels: *mut i32) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
pub SetFont: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plf: *const super::super::Graphics::Gdi::LOGFONTW, bredraw: super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi")))]
SetFont: usize,
#[cfg(feature = "Win32_Graphics_Gdi")]
pub GetFont: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plf: *mut super::super::Graphics::Gdi::LOGFONTW) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Gdi"))]
GetFont: usize,
pub SetTheme: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszsubappname: ::windows::core::PCWSTR, pszsubidlist: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IWebBrowser(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IWebBrowser {
pub unsafe fn GoBack(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GoBack)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GoForward(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GoForward)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GoHome(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GoHome)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GoSearch(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).GoSearch)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Navigate(&self, url: &::windows::core::BSTR, flags: ::core::option::Option<*const super::super::System::Com::VARIANT>, targetframename: ::core::option::Option<*const super::super::System::Com::VARIANT>, postdata: ::core::option::Option<*const super::super::System::Com::VARIANT>, headers: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Navigate)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute(flags.unwrap_or(::std::ptr::null())), ::core::mem::transmute(targetframename.unwrap_or(::std::ptr::null())), ::core::mem::transmute(postdata.unwrap_or(::std::ptr::null())), ::core::mem::transmute(headers.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn Refresh(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Refresh)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Refresh2(&self, level: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Refresh2)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(level.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn Stop(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Stop)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Container(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Container)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Document(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Document)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn TopLevelContainer(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).TopLevelContainer)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Type(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Type)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Left(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Left)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetLeft(&self, left: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetLeft)(::windows::core::Vtable::as_raw(self), left).ok()
}
pub unsafe fn Top(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Top)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetTop(&self, top: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetTop)(::windows::core::Vtable::as_raw(self), top).ok()
}
pub unsafe fn Width(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Width)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetWidth(&self, width: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetWidth)(::windows::core::Vtable::as_raw(self), width).ok()
}
pub unsafe fn Height(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Height)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetHeight(&self, height: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetHeight)(::windows::core::Vtable::as_raw(self), height).ok()
}
pub unsafe fn LocationName(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).LocationName)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn LocationURL(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).LocationURL)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Busy(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Busy)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IWebBrowser, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IWebBrowser {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IWebBrowser {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IWebBrowser {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IWebBrowser {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IWebBrowser").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IWebBrowser {
type Vtable = IWebBrowser_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IWebBrowser {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xeab22ac1_30c1_11cf_a7eb_0000c05bae0b);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IWebBrowser_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
pub GoBack: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GoForward: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GoHome: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub GoSearch: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub Navigate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, url: *mut ::core::ffi::c_void, flags: *const super::super::System::Com::VARIANT, targetframename: *const super::super::System::Com::VARIANT, postdata: *const super::super::System::Com::VARIANT, headers: *const super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
Navigate: usize,
pub Refresh: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub Refresh2: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, level: *const super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
Refresh2: usize,
pub Stop: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_System_Com")]
pub Application: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppdisp: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Application: usize,
#[cfg(feature = "Win32_System_Com")]
pub Parent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppdisp: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Parent: usize,
#[cfg(feature = "Win32_System_Com")]
pub Container: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppdisp: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Container: usize,
#[cfg(feature = "Win32_System_Com")]
pub Document: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppdisp: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Com"))]
Document: usize,
#[cfg(feature = "Win32_Foundation")]
pub TopLevelContainer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbool: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
TopLevelContainer: usize,
pub Type: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, r#type: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Left: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pl: *mut i32) -> ::windows::core::HRESULT,
pub SetLeft: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, left: i32) -> ::windows::core::HRESULT,
pub Top: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pl: *mut i32) -> ::windows::core::HRESULT,
pub SetTop: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, top: i32) -> ::windows::core::HRESULT,
pub Width: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pl: *mut i32) -> ::windows::core::HRESULT,
pub SetWidth: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, width: i32) -> ::windows::core::HRESULT,
pub Height: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pl: *mut i32) -> ::windows::core::HRESULT,
pub SetHeight: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, height: i32) -> ::windows::core::HRESULT,
pub LocationName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, locationname: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub LocationURL: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, locationurl: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub Busy: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbool: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Busy: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IWebBrowser2(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IWebBrowser2 {
pub unsafe fn GoBack(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.GoBack)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GoForward(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.GoForward)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GoHome(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.GoHome)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GoSearch(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.GoSearch)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Navigate(&self, url: &::windows::core::BSTR, flags: ::core::option::Option<*const super::super::System::Com::VARIANT>, targetframename: ::core::option::Option<*const super::super::System::Com::VARIANT>, postdata: ::core::option::Option<*const super::super::System::Com::VARIANT>, headers: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.Navigate)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute(flags.unwrap_or(::std::ptr::null())), ::core::mem::transmute(targetframename.unwrap_or(::std::ptr::null())), ::core::mem::transmute(postdata.unwrap_or(::std::ptr::null())), ::core::mem::transmute(headers.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn Refresh(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.Refresh)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Refresh2(&self, level: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.Refresh2)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(level.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn Stop(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.Stop)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Container(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Container)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Document(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Document)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn TopLevelContainer(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.TopLevelContainer)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Type(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Type)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Left(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Left)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetLeft(&self, left: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.SetLeft)(::windows::core::Vtable::as_raw(self), left).ok()
}
pub unsafe fn Top(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Top)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetTop(&self, top: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.SetTop)(::windows::core::Vtable::as_raw(self), top).ok()
}
pub unsafe fn Width(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Width)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetWidth(&self, width: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.SetWidth)(::windows::core::Vtable::as_raw(self), width).ok()
}
pub unsafe fn Height(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Height)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetHeight(&self, height: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.base__.SetHeight)(::windows::core::Vtable::as_raw(self), height).ok()
}
pub unsafe fn LocationName(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.LocationName)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn LocationURL(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.LocationURL)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Busy(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.base__.Busy)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Quit(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Quit)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ClientToWindow(&self, pcx: *mut i32, pcy: *mut i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.ClientToWindow)(::windows::core::Vtable::as_raw(self), pcx, pcy).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn PutProperty(&self, property: &::windows::core::BSTR, vtvalue: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.PutProperty)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(property), ::core::mem::transmute(vtvalue)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn GetProperty(&self, property: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetProperty)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(property), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Name(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Name)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn HWND(&self) -> ::windows::core::Result<super::super::Foundation::SHANDLE_PTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.HWND)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn FullName(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.FullName)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Path(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Path)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Visible(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Visible)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetVisible<P0>(&self, value: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.SetVisible)(::windows::core::Vtable::as_raw(self), value.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn StatusBar(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.StatusBar)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetStatusBar<P0>(&self, value: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.SetStatusBar)(::windows::core::Vtable::as_raw(self), value.into()).ok()
}
pub unsafe fn StatusText(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.StatusText)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetStatusText(&self, statustext: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetStatusText)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(statustext)).ok()
}
pub unsafe fn ToolBar(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.ToolBar)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetToolBar(&self, value: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetToolBar)(::windows::core::Vtable::as_raw(self), value).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn MenuBar(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.MenuBar)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetMenuBar<P0>(&self, value: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.SetMenuBar)(::windows::core::Vtable::as_raw(self), value.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn FullScreen(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.FullScreen)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetFullScreen<P0>(&self, bfullscreen: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.SetFullScreen)(::windows::core::Vtable::as_raw(self), bfullscreen.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Navigate2(&self, url: *const super::super::System::Com::VARIANT, flags: ::core::option::Option<*const super::super::System::Com::VARIANT>, targetframename: ::core::option::Option<*const super::super::System::Com::VARIANT>, postdata: ::core::option::Option<*const super::super::System::Com::VARIANT>, headers: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Navigate2)(::windows::core::Vtable::as_raw(self), url, ::core::mem::transmute(flags.unwrap_or(::std::ptr::null())), ::core::mem::transmute(targetframename.unwrap_or(::std::ptr::null())), ::core::mem::transmute(postdata.unwrap_or(::std::ptr::null())), ::core::mem::transmute(headers.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn QueryStatusWB(&self, cmdid: super::super::System::Ole::OLECMDID) -> ::windows::core::Result<super::super::System::Ole::OLECMDF> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).QueryStatusWB)(::windows::core::Vtable::as_raw(self), cmdid, result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ExecWB(&self, cmdid: super::super::System::Ole::OLECMDID, cmdexecopt: super::super::System::Ole::OLECMDEXECOPT, pvain: ::core::option::Option<*const super::super::System::Com::VARIANT>, pvaout: ::core::option::Option<*mut super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ExecWB)(::windows::core::Vtable::as_raw(self), cmdid, cmdexecopt, ::core::mem::transmute(pvain.unwrap_or(::std::ptr::null())), ::core::mem::transmute(pvaout.unwrap_or(::std::ptr::null_mut()))).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn ShowBrowserBar(&self, pvaclsid: *const super::super::System::Com::VARIANT, pvarshow: ::core::option::Option<*const super::super::System::Com::VARIANT>, pvarsize: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ShowBrowserBar)(::windows::core::Vtable::as_raw(self), pvaclsid, ::core::mem::transmute(pvarshow.unwrap_or(::std::ptr::null())), ::core::mem::transmute(pvarsize.unwrap_or(::std::ptr::null()))).ok()
}
#[doc = "*Required features: `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub unsafe fn ReadyState(&self) -> ::windows::core::Result<super::super::System::Ole::READYSTATE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ReadyState)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Offline(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Offline)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetOffline<P0>(&self, boffline: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).SetOffline)(::windows::core::Vtable::as_raw(self), boffline.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Silent(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Silent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetSilent<P0>(&self, bsilent: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).SetSilent)(::windows::core::Vtable::as_raw(self), bsilent.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RegisterAsBrowser(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).RegisterAsBrowser)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetRegisterAsBrowser<P0>(&self, bregister: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).SetRegisterAsBrowser)(::windows::core::Vtable::as_raw(self), bregister.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn RegisterAsDropTarget(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).RegisterAsDropTarget)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetRegisterAsDropTarget<P0>(&self, bregister: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).SetRegisterAsDropTarget)(::windows::core::Vtable::as_raw(self), bregister.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn TheaterMode(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).TheaterMode)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetTheaterMode<P0>(&self, bregister: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).SetTheaterMode)(::windows::core::Vtable::as_raw(self), bregister.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn AddressBar(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).AddressBar)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetAddressBar<P0>(&self, value: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).SetAddressBar)(::windows::core::Vtable::as_raw(self), value.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Resizable(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Resizable)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetResizable<P0>(&self, value: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).SetResizable)(::windows::core::Vtable::as_raw(self), value.into()).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IWebBrowser2, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IWebBrowser, IWebBrowserApp);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IWebBrowser2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IWebBrowser2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IWebBrowser2 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IWebBrowser2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IWebBrowser2").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IWebBrowser2 {
type Vtable = IWebBrowser2_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IWebBrowser2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd30c1661_cdaf_11d0_8a3e_00c04fc9e26e);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IWebBrowser2_Vtbl {
pub base__: IWebBrowserApp_Vtbl,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub Navigate2: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, url: *const super::super::System::Com::VARIANT, flags: *const super::super::System::Com::VARIANT, targetframename: *const super::super::System::Com::VARIANT, postdata: *const super::super::System::Com::VARIANT, headers: *const super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
Navigate2: usize,
#[cfg(feature = "Win32_System_Ole")]
pub QueryStatusWB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cmdid: super::super::System::Ole::OLECMDID, pcmdf: *mut super::super::System::Ole::OLECMDF) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Ole"))]
QueryStatusWB: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub ExecWB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cmdid: super::super::System::Ole::OLECMDID, cmdexecopt: super::super::System::Ole::OLECMDEXECOPT, pvain: *const super::super::System::Com::VARIANT, pvaout: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
ExecWB: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub ShowBrowserBar: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pvaclsid: *const super::super::System::Com::VARIANT, pvarshow: *const super::super::System::Com::VARIANT, pvarsize: *const super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
ShowBrowserBar: usize,
#[cfg(feature = "Win32_System_Ole")]
pub ReadyState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plreadystate: *mut super::super::System::Ole::READYSTATE) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_System_Ole"))]
ReadyState: usize,
#[cfg(feature = "Win32_Foundation")]
pub Offline: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pboffline: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Offline: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetOffline: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, boffline: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetOffline: usize,
#[cfg(feature = "Win32_Foundation")]
pub Silent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbsilent: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Silent: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetSilent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bsilent: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetSilent: usize,
#[cfg(feature = "Win32_Foundation")]
pub RegisterAsBrowser: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbregister: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
RegisterAsBrowser: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetRegisterAsBrowser: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bregister: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetRegisterAsBrowser: usize,
#[cfg(feature = "Win32_Foundation")]
pub RegisterAsDropTarget: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbregister: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
RegisterAsDropTarget: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetRegisterAsDropTarget: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bregister: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetRegisterAsDropTarget: usize,
#[cfg(feature = "Win32_Foundation")]
pub TheaterMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbregister: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
TheaterMode: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetTheaterMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bregister: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetTheaterMode: usize,
#[cfg(feature = "Win32_Foundation")]
pub AddressBar: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
AddressBar: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetAddressBar: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetAddressBar: usize,
#[cfg(feature = "Win32_Foundation")]
pub Resizable: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Resizable: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetResizable: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetResizable: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IWebBrowserApp(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IWebBrowserApp {
pub unsafe fn GoBack(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GoBack)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GoForward(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GoForward)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GoHome(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GoHome)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn GoSearch(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.GoSearch)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Navigate(&self, url: &::windows::core::BSTR, flags: ::core::option::Option<*const super::super::System::Com::VARIANT>, targetframename: ::core::option::Option<*const super::super::System::Com::VARIANT>, postdata: ::core::option::Option<*const super::super::System::Com::VARIANT>, headers: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Navigate)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(url), ::core::mem::transmute(flags.unwrap_or(::std::ptr::null())), ::core::mem::transmute(targetframename.unwrap_or(::std::ptr::null())), ::core::mem::transmute(postdata.unwrap_or(::std::ptr::null())), ::core::mem::transmute(headers.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn Refresh(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Refresh)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn Refresh2(&self, level: ::core::option::Option<*const super::super::System::Com::VARIANT>) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Refresh2)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(level.unwrap_or(::std::ptr::null()))).ok()
}
pub unsafe fn Stop(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Stop)(::windows::core::Vtable::as_raw(self)).ok()
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Application(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Application)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Parent(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Parent)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Container(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Container)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub unsafe fn Document(&self) -> ::windows::core::Result<super::super::System::Com::IDispatch> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Document)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn TopLevelContainer(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.TopLevelContainer)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Type(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Type)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Left(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Left)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetLeft(&self, left: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetLeft)(::windows::core::Vtable::as_raw(self), left).ok()
}
pub unsafe fn Top(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Top)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetTop(&self, top: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetTop)(::windows::core::Vtable::as_raw(self), top).ok()
}
pub unsafe fn Width(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Width)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetWidth(&self, width: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetWidth)(::windows::core::Vtable::as_raw(self), width).ok()
}
pub unsafe fn Height(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Height)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetHeight(&self, height: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetHeight)(::windows::core::Vtable::as_raw(self), height).ok()
}
pub unsafe fn LocationName(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.LocationName)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn LocationURL(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.LocationURL)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Busy(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Busy)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Quit(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Quit)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn ClientToWindow(&self, pcx: *mut i32, pcy: *mut i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).ClientToWindow)(::windows::core::Vtable::as_raw(self), pcx, pcy).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn PutProperty(&self, property: &::windows::core::BSTR, vtvalue: super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).PutProperty)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(property), ::core::mem::transmute(vtvalue)).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn GetProperty(&self, property: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetProperty)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(property), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Name(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Name)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn HWND(&self) -> ::windows::core::Result<super::super::Foundation::SHANDLE_PTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).HWND)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn FullName(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).FullName)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn Path(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Path)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn Visible(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Visible)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetVisible<P0>(&self, value: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).SetVisible)(::windows::core::Vtable::as_raw(self), value.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn StatusBar(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).StatusBar)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetStatusBar<P0>(&self, value: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).SetStatusBar)(::windows::core::Vtable::as_raw(self), value.into()).ok()
}
pub unsafe fn StatusText(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).StatusText)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetStatusText(&self, statustext: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetStatusText)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(statustext)).ok()
}
pub unsafe fn ToolBar(&self) -> ::windows::core::Result<i32> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).ToolBar)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetToolBar(&self, value: i32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetToolBar)(::windows::core::Vtable::as_raw(self), value).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn MenuBar(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).MenuBar)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetMenuBar<P0>(&self, value: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).SetMenuBar)(::windows::core::Vtable::as_raw(self), value.into()).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn FullScreen(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).FullScreen)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetFullScreen<P0>(&self, bfullscreen: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).SetFullScreen)(::windows::core::Vtable::as_raw(self), bfullscreen.into()).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IWebBrowserApp, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IWebBrowser);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IWebBrowserApp {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IWebBrowserApp {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IWebBrowserApp {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IWebBrowserApp {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IWebBrowserApp").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IWebBrowserApp {
type Vtable = IWebBrowserApp_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IWebBrowserApp {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0002df05_0000_0000_c000_000000000046);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IWebBrowserApp_Vtbl {
pub base__: IWebBrowser_Vtbl,
pub Quit: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub ClientToWindow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcx: *mut i32, pcy: *mut i32) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub PutProperty: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, property: *mut ::core::ffi::c_void, vtvalue: super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
PutProperty: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub GetProperty: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, property: *mut ::core::ffi::c_void, pvtvalue: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
GetProperty: usize,
pub Name: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, name: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub HWND: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phwnd: *mut super::super::Foundation::SHANDLE_PTR) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
HWND: usize,
pub FullName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, fullname: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Path: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, path: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub Visible: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbool: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
Visible: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetVisible: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetVisible: usize,
#[cfg(feature = "Win32_Foundation")]
pub StatusBar: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbool: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
StatusBar: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetStatusBar: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetStatusBar: usize,
pub StatusText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, statustext: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetStatusText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, statustext: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub ToolBar: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut i32) -> ::windows::core::HRESULT,
pub SetToolBar: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: i32) -> ::windows::core::HRESULT,
#[cfg(feature = "Win32_Foundation")]
pub MenuBar: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
MenuBar: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetMenuBar: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetMenuBar: usize,
#[cfg(feature = "Win32_Foundation")]
pub FullScreen: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbfullscreen: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
FullScreen: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetFullScreen: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bfullscreen: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetFullScreen: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IWebWizardExtension(::windows::core::IUnknown);
impl IWebWizardExtension {
#[doc = "*Required features: `\"Win32_UI_Controls\"`*"]
#[cfg(feature = "Win32_UI_Controls")]
pub unsafe fn AddPages(&self, apages: &mut [super::Controls::HPROPSHEETPAGE], pnpagesadded: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.AddPages)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(apages.as_ptr()), apages.len() as _, pnpagesadded).ok()
}
#[doc = "*Required features: `\"Win32_UI_Controls\"`*"]
#[cfg(feature = "Win32_UI_Controls")]
pub unsafe fn GetFirstPage(&self) -> ::windows::core::Result<super::Controls::HPROPSHEETPAGE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetFirstPage)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Controls\"`*"]
#[cfg(feature = "Win32_UI_Controls")]
pub unsafe fn GetLastPage(&self) -> ::windows::core::Result<super::Controls::HPROPSHEETPAGE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.GetLastPage)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
pub unsafe fn SetInitialURL<P0>(&self, pszurl: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetInitialURL)(::windows::core::Vtable::as_raw(self), pszurl.into().abi()).ok()
}
pub unsafe fn SetErrorURL<P0>(&self, pszerrorurl: P0) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<::windows::core::InParam<::windows::core::PCWSTR>>,
{
(::windows::core::Vtable::vtable(self).SetErrorURL)(::windows::core::Vtable::as_raw(self), pszerrorurl.into().abi()).ok()
}
}
::windows::core::interface_hierarchy!(IWebWizardExtension, ::windows::core::IUnknown, IWizardExtension);
impl ::core::clone::Clone for IWebWizardExtension {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IWebWizardExtension {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IWebWizardExtension {}
impl ::core::fmt::Debug for IWebWizardExtension {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IWebWizardExtension").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IWebWizardExtension {
type Vtable = IWebWizardExtension_Vtbl;
}
unsafe impl ::windows::core::Interface for IWebWizardExtension {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0e6b3f66_98d1_48c0_a222_fbde74e2fbc5);
}
#[repr(C)]
#[doc(hidden)]
pub struct IWebWizardExtension_Vtbl {
pub base__: IWizardExtension_Vtbl,
pub SetInitialURL: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszurl: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
pub SetErrorURL: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszerrorurl: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IWebWizardHost(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IWebWizardHost {
pub unsafe fn FinalBack(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).FinalBack)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FinalNext(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).FinalNext)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Cancel(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).Cancel)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetCaption(&self, bstrcaption: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetCaption)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrcaption)).ok()
}
pub unsafe fn Caption(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).Caption)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn put_Property(&self, bstrpropertyname: &::windows::core::BSTR, pvproperty: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).put_Property)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrpropertyname), pvproperty).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn get_Property(&self, bstrpropertyname: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).get_Property)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrpropertyname), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetWizardButtons<P0, P1, P2>(&self, vfenableback: P0, vfenablenext: P1, vflastpage: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P1: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P2: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).SetWizardButtons)(::windows::core::Vtable::as_raw(self), vfenableback.into(), vfenablenext.into(), vflastpage.into()).ok()
}
pub unsafe fn SetHeaderText(&self, bstrheadertitle: &::windows::core::BSTR, bstrheadersubtitle: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).SetHeaderText)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrheadertitle), ::core::mem::transmute_copy(bstrheadersubtitle)).ok()
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IWebWizardHost, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IWebWizardHost {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IWebWizardHost {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IWebWizardHost {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IWebWizardHost {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IWebWizardHost").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IWebWizardHost {
type Vtable = IWebWizardHost_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IWebWizardHost {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x18bcc359_4990_4bfb_b951_3c83702be5f9);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IWebWizardHost_Vtbl {
pub base__: super::super::System::Com::IDispatch_Vtbl,
pub FinalBack: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub FinalNext: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Cancel: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub SetCaption: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrcaption: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
pub Caption: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstrcaption: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub put_Property: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrpropertyname: *mut ::core::ffi::c_void, pvproperty: *const super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
put_Property: usize,
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub get_Property: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrpropertyname: *mut ::core::ffi::c_void, pvproperty: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT,
#[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
get_Property: usize,
#[cfg(feature = "Win32_Foundation")]
pub SetWizardButtons: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vfenableback: super::super::Foundation::VARIANT_BOOL, vfenablenext: super::super::Foundation::VARIANT_BOOL, vflastpage: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_Foundation"))]
SetWizardButtons: usize,
pub SetHeaderText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrheadertitle: *mut ::core::ffi::c_void, bstrheadersubtitle: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
#[repr(transparent)]
pub struct IWebWizardHost2(::windows::core::IUnknown);
#[cfg(feature = "Win32_System_Com")]
impl IWebWizardHost2 {
pub unsafe fn FinalBack(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.FinalBack)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn FinalNext(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.FinalNext)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn Cancel(&self) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.Cancel)(::windows::core::Vtable::as_raw(self)).ok()
}
pub unsafe fn SetCaption(&self, bstrcaption: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetCaption)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrcaption)).ok()
}
pub unsafe fn Caption(&self) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.Caption)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn put_Property(&self, bstrpropertyname: &::windows::core::BSTR, pvproperty: *const super::super::System::Com::VARIANT) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.put_Property)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrpropertyname), pvproperty).ok()
}
#[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
pub unsafe fn get_Property(&self, bstrpropertyname: &::windows::core::BSTR) -> ::windows::core::Result<super::super::System::Com::VARIANT> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).base__.get_Property)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrpropertyname), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub unsafe fn SetWizardButtons<P0, P1, P2>(&self, vfenableback: P0, vfenablenext: P1, vflastpage: P2) -> ::windows::core::Result<()>
where
P0: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P1: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
P2: ::std::convert::Into<super::super::Foundation::VARIANT_BOOL>,
{
(::windows::core::Vtable::vtable(self).base__.SetWizardButtons)(::windows::core::Vtable::as_raw(self), vfenableback.into(), vfenablenext.into(), vflastpage.into()).ok()
}
pub unsafe fn SetHeaderText(&self, bstrheadertitle: &::windows::core::BSTR, bstrheadersubtitle: &::windows::core::BSTR) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).base__.SetHeaderText)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(bstrheadertitle), ::core::mem::transmute_copy(bstrheadersubtitle)).ok()
}
pub unsafe fn SignString(&self, value: &::windows::core::BSTR) -> ::windows::core::Result<::windows::core::BSTR> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).SignString)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute_copy(value), result__.as_mut_ptr()).from_abi(result__)
}
}
#[cfg(feature = "Win32_System_Com")]
::windows::core::interface_hierarchy!(IWebWizardHost2, ::windows::core::IUnknown, super::super::System::Com::IDispatch, IWebWizardHost);
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for IWebWizardHost2 {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for IWebWizardHost2 {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for IWebWizardHost2 {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for IWebWizardHost2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IWebWizardHost2").field(&self.0).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Vtable for IWebWizardHost2 {
type Vtable = IWebWizardHost2_Vtbl;
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Interface for IWebWizardHost2 {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf9c013dc_3c23_4041_8e39_cfb402f7ea59);
}
#[cfg(feature = "Win32_System_Com")]
#[repr(C)]
#[doc(hidden)]
pub struct IWebWizardHost2_Vtbl {
pub base__: IWebWizardHost_Vtbl,
pub SignString: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut ::core::ffi::c_void, signedvalue: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IWizardExtension(::windows::core::IUnknown);
impl IWizardExtension {
#[doc = "*Required features: `\"Win32_UI_Controls\"`*"]
#[cfg(feature = "Win32_UI_Controls")]
pub unsafe fn AddPages(&self, apages: &mut [super::Controls::HPROPSHEETPAGE], pnpagesadded: *mut u32) -> ::windows::core::Result<()> {
(::windows::core::Vtable::vtable(self).AddPages)(::windows::core::Vtable::as_raw(self), ::core::mem::transmute(apages.as_ptr()), apages.len() as _, pnpagesadded).ok()
}
#[doc = "*Required features: `\"Win32_UI_Controls\"`*"]
#[cfg(feature = "Win32_UI_Controls")]
pub unsafe fn GetFirstPage(&self) -> ::windows::core::Result<super::Controls::HPROPSHEETPAGE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetFirstPage)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Controls\"`*"]
#[cfg(feature = "Win32_UI_Controls")]
pub unsafe fn GetLastPage(&self) -> ::windows::core::Result<super::Controls::HPROPSHEETPAGE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetLastPage)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IWizardExtension, ::windows::core::IUnknown);
impl ::core::clone::Clone for IWizardExtension {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IWizardExtension {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IWizardExtension {}
impl ::core::fmt::Debug for IWizardExtension {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IWizardExtension").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IWizardExtension {
type Vtable = IWizardExtension_Vtbl;
}
unsafe impl ::windows::core::Interface for IWizardExtension {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc02ea696_86cc_491e_9b23_74394a0444a8);
}
#[repr(C)]
#[doc(hidden)]
pub struct IWizardExtension_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Controls")]
pub AddPages: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, apages: *mut super::Controls::HPROPSHEETPAGE, cpages: u32, pnpagesadded: *mut u32) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Controls"))]
AddPages: usize,
#[cfg(feature = "Win32_UI_Controls")]
pub GetFirstPage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phpage: *mut super::Controls::HPROPSHEETPAGE) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Controls"))]
GetFirstPage: usize,
#[cfg(feature = "Win32_UI_Controls")]
pub GetLastPage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phpage: *mut super::Controls::HPROPSHEETPAGE) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Controls"))]
GetLastPage: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
pub struct IWizardSite(::windows::core::IUnknown);
impl IWizardSite {
#[doc = "*Required features: `\"Win32_UI_Controls\"`*"]
#[cfg(feature = "Win32_UI_Controls")]
pub unsafe fn GetPreviousPage(&self) -> ::windows::core::Result<super::Controls::HPROPSHEETPAGE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetPreviousPage)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Controls\"`*"]
#[cfg(feature = "Win32_UI_Controls")]
pub unsafe fn GetNextPage(&self) -> ::windows::core::Result<super::Controls::HPROPSHEETPAGE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetNextPage)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
#[doc = "*Required features: `\"Win32_UI_Controls\"`*"]
#[cfg(feature = "Win32_UI_Controls")]
pub unsafe fn GetCancelledPage(&self) -> ::windows::core::Result<super::Controls::HPROPSHEETPAGE> {
let mut result__ = ::core::mem::MaybeUninit::zeroed();
(::windows::core::Vtable::vtable(self).GetCancelledPage)(::windows::core::Vtable::as_raw(self), result__.as_mut_ptr()).from_abi(result__)
}
}
::windows::core::interface_hierarchy!(IWizardSite, ::windows::core::IUnknown);
impl ::core::clone::Clone for IWizardSite {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
impl ::core::cmp::PartialEq for IWizardSite {
fn eq(&self, other: &Self) -> bool {
self.0 == other.0
}
}
impl ::core::cmp::Eq for IWizardSite {}
impl ::core::fmt::Debug for IWizardSite {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IWizardSite").field(&self.0).finish()
}
}
unsafe impl ::windows::core::Vtable for IWizardSite {
type Vtable = IWizardSite_Vtbl;
}
unsafe impl ::windows::core::Interface for IWizardSite {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x88960f5b_422f_4e7b_8013_73415381c3c3);
}
#[repr(C)]
#[doc(hidden)]
pub struct IWizardSite_Vtbl {
pub base__: ::windows::core::IUnknown_Vtbl,
#[cfg(feature = "Win32_UI_Controls")]
pub GetPreviousPage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phpage: *mut super::Controls::HPROPSHEETPAGE) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Controls"))]
GetPreviousPage: usize,
#[cfg(feature = "Win32_UI_Controls")]
pub GetNextPage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phpage: *mut super::Controls::HPROPSHEETPAGE) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Controls"))]
GetNextPage: usize,
#[cfg(feature = "Win32_UI_Controls")]
pub GetCancelledPage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phpage: *mut super::Controls::HPROPSHEETPAGE) -> ::windows::core::HRESULT,
#[cfg(not(feature = "Win32_UI_Controls"))]
GetCancelledPage: usize,
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABE_BOTTOM: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABE_LEFT: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABE_RIGHT: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABE_TOP: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABM_ACTIVATE: u32 = 6u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABM_GETAUTOHIDEBAR: u32 = 7u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABM_GETAUTOHIDEBAREX: u32 = 11u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABM_GETSTATE: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABM_GETTASKBARPOS: u32 = 5u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABM_NEW: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABM_QUERYPOS: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABM_REMOVE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABM_SETAUTOHIDEBAR: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABM_SETAUTOHIDEBAREX: u32 = 12u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABM_SETPOS: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABM_SETSTATE: u32 = 10u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABM_WINDOWPOSCHANGED: u32 = 9u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABN_FULLSCREENAPP: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABN_POSCHANGED: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABN_STATECHANGE: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABN_WINDOWARRANGE: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABS_ALWAYSONTOP: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ABS_AUTOHIDE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACDD_VISIBLE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ADDURL_SILENT: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AD_APPLY_BUFFERED_REFRESH: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AD_APPLY_DYNAMICREFRESH: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AD_APPLY_FORCE: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AD_APPLY_HTMLGEN: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AD_APPLY_REFRESH: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AD_APPLY_SAVE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AD_GETWP_BMP: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AD_GETWP_IMAGE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AD_GETWP_LAST_APPLIED: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const APPNAMEBUFFERLEN: u32 = 40u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_AUDIOCD: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_AUTOPLAYMUSIC: u32 = 256u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_AUTOPLAYPIX: u32 = 128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_AUTOPLAYVIDEO: u32 = 512u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_AUTORUNINF: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_BLANKBD: u32 = 8192u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_BLANKCD: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_BLANKDVD: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_BLURAY: u32 = 16384u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_CAMERASTORAGE: u32 = 32768u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_CUSTOMEVENT: u32 = 65536u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_DVDAUDIO: u32 = 4096u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_DVDMOVIE: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_MASK: u32 = 131070u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_NONE: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_PHASE_FINAL: u32 = 1073741824u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_PHASE_MASK: u32 = 1879048192u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_PHASE_PRESNIFF: u32 = 268435456u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_PHASE_SNIFFING: u32 = 536870912u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_PHASE_UNKNOWN: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_SVCD: u32 = 2048u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_UNKNOWNCONTENT: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ARCONTENT_VCD: u32 = 1024u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AccessibilityDockingService: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x29ce1d46_b481_4aa0_a08a_d3ebc8aca402);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AlphabeticalCategorizer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3c2654c6_7372_4f6b_b310_55d6128f49d2);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AppShellVerbHandler: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4ed3a719_cea8_4bd9_910d_e252f997afc2);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AppStartupLink: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x273eb5e7_88b0_4843_bfef_e2c81d43aae5);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AppVisibility: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7e5fe3d9_985f_4908_91f9_ee19f9fd1514);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ApplicationActivationManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x45ba127d_10a8_46ea_8ab7_56ea9078943c);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ApplicationAssociationRegistration: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x591209c7_767b_42b2_9fba_44ee4615f2c7);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ApplicationAssociationRegistrationUI: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1968106d_f3b5_44cf_890e_116fcb9ecef1);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ApplicationDesignModeSettings: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x958a6fb5_dcb2_4faf_aafd_7fb054ad1a3b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ApplicationDestinations: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x86c14003_4d6b_4ef3_a7b4_0506663b2e68);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ApplicationDocumentLists: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x86bec222_30f2_47e0_9f25_60d11cd75c28);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AttachmentServices: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4125dd96_e03a_4103_8f70_e0597d803b9c);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFFM_ENABLEOK: u32 = 1125u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFFM_INITIALIZED: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFFM_IUNKNOWN: u32 = 5u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFFM_SELCHANGED: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFFM_SETEXPANDED: u32 = 1130u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFFM_SETOKTEXT: u32 = 1129u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFFM_SETSELECTION: u32 = 1127u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFFM_SETSELECTIONA: u32 = 1126u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFFM_SETSELECTIONW: u32 = 1127u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFFM_SETSTATUSTEXT: u32 = 1128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFFM_SETSTATUSTEXTA: u32 = 1124u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFFM_SETSTATUSTEXTW: u32 = 1128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFFM_VALIDATEFAILED: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFFM_VALIDATEFAILEDA: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFFM_VALIDATEFAILEDW: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BHID_AssociationArray: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbea9ef17_82f1_4f60_9284_4f8db75c3be9);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BHID_DataObject: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb8c0bd9f_ed24_455c_83e6_d5390c4fe8c4);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BHID_EnumAssocHandlers: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb8ab0b9c_c2ec_4f7a_918d_314900e6280a);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BHID_EnumItems: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x94f60519_2850_4924_aa5a_d15e84868039);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BHID_FilePlaceholder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8677dceb_aae0_4005_8d3d_547fa852f825);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BHID_Filter: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x38d08778_f557_4690_9ebf_ba54706ad8f7);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BHID_LinkTargetItem: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3981e228_f559_11d3_8e3a_00c04f6837d5);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BHID_PropertyStore: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0384e1a4_1523_439c_a4c8_ab911052f586);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BHID_RandomAccessStream: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf16fc93b_77ae_4cfe_bda7_a866eea6878d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BHID_SFObject: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3981e224_f559_11d3_8e3a_00c04f6837d5);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BHID_SFUIObject: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3981e225_f559_11d3_8e3a_00c04f6837d5);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BHID_SFViewObject: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3981e226_f559_11d3_8e3a_00c04f6837d5);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BHID_Storage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3981e227_f559_11d3_8e3a_00c04f6837d5);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BHID_StorageEnum: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4621a4e3_f0d6_4773_8a9c_46e77b174840);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BHID_StorageItem: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x404e2109_77d2_4699_a5a0_4fdf10db9837);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BHID_Stream: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1cebb3ab_7c10_499a_a417_92ca16c4cb83);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BHID_ThumbnailHandler: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7b2e650a_8e20_4f4a_b09e_6597afc72fb0);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BHID_Transfer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd5e346a1_f753_4932_b403_4574800e2498);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BIF_BROWSEFILEJUNCTIONS: u32 = 65536u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BIF_BROWSEFORCOMPUTER: u32 = 4096u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BIF_BROWSEFORPRINTER: u32 = 8192u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BIF_BROWSEINCLUDEFILES: u32 = 16384u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BIF_BROWSEINCLUDEURLS: u32 = 128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BIF_DONTGOBELOWDOMAIN: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BIF_EDITBOX: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BIF_NEWDIALOGSTYLE: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BIF_NONEWFOLDERBUTTON: u32 = 512u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BIF_NOTRANSLATETARGETS: u32 = 1024u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BIF_RETURNFSANCESTORS: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BIF_RETURNONLYFSDIRS: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BIF_SHAREABLE: u32 = 32768u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BIF_STATUSTEXT: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BIF_UAHINT: u32 = 256u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BIF_VALIDATE: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BIND_INTERRUPTABLE: u32 = 4294967295u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BMICON_LARGE: i32 = 0i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BMICON_SMALL: i32 = 1i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSF_CANMAXIMIZE: u32 = 1024u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSF_DELEGATEDNAVIGATION: u32 = 65536u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSF_DONTSHOWNAVCANCELPAGE: u32 = 16384u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSF_FEEDNAVIGATION: u32 = 524288u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSF_FEEDSUBSCRIBED: u32 = 1048576u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSF_HTMLNAVCANCELED: u32 = 8192u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSF_MERGEDMENUS: u32 = 262144u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSF_NAVNOHISTORY: u32 = 4096u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSF_NOLOCALFILEWARNING: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSF_REGISTERASDROPTARGET: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSF_RESIZABLE: u32 = 512u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSF_SETNAVIGATABLECODEPAGE: u32 = 32768u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSF_THEATERMODE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSF_TOPBROWSER: u32 = 2048u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSF_TRUSTEDFORACTIVEX: u32 = 131072u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSF_UISETBYAUTOMATION: u32 = 256u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSIM_STATE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSIM_STYLE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSIS_ALWAYSGRIPPER: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSIS_AUTOGRIPPER: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSIS_FIXEDORDER: u32 = 1024u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSIS_LEFTALIGN: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSIS_LOCKED: u32 = 256u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSIS_NOCAPTION: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSIS_NOCONTEXTMENU: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSIS_NODROPTARGET: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSIS_NOGRIPPER: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSIS_PREFERNOLINEBREAK: u32 = 128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSIS_PRESERVEORDERDURINGLAYOUT: u32 = 512u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSIS_SINGLECLICK: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSSF_NOTITLE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSSF_UNDELETEABLE: u32 = 4096u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSSF_VISIBLE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BUFFLEN: u32 = 255u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CABINETSTATE_VERSION: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CAMERAROLL_E_NO_DOWNSAMPLING_REQUIRED: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927456i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATID_BrowsableShellExt: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00021490_0000_0000_c000_000000000046);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATID_BrowseInPlace: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00021491_0000_0000_c000_000000000046);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATID_CommBand: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00021494_0000_0000_c000_000000000046);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATID_DeskBand: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00021492_0000_0000_c000_000000000046);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATID_FilePlaceholderMergeHandler: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3e9c9a51_d4aa_4870_b47c_7424b491f1cc);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATID_InfoBand: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00021493_0000_0000_c000_000000000046);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATID_LocationFactory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x965c4d51_8b76_4e57_80b7_564d2ea4b55e);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATID_LocationProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1b3ca474_2614_414b_b813_1aceca3e3dd8);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATID_SearchableApplication: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x366c292a_d9b3_4dbf_bb70_e62ec3d0bbbf);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDB2GVF_ADDSHIELD: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDB2GVF_ALLOWPREVIEWPANE: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDB2GVF_ISFILESAVE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDB2GVF_ISFOLDERPICKER: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDB2GVF_NOINCLUDEITEM: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDB2GVF_NOSELECTVERB: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDB2GVF_SHOWALLFILES: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDB2N_CONTEXTMENU_DONE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDB2N_CONTEXTMENU_START: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDBOSC_KILLFOCUS: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDBOSC_RENAME: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDBOSC_SELCHANGE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDBOSC_SETFOCUS: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDBOSC_STATECHANGE: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDBurn: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfbeb8a05_beee_4442_804e_409d6c4515e9);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_AUTOPLAY_SHELLIDLISTS: ::windows::core::PCWSTR = ::windows::w!("Autoplay Enumerated IDList Array");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_DROPDESCRIPTION: ::windows::core::PCWSTR = ::windows::w!("DropDescription");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_FILECONTENTS: ::windows::core::PCWSTR = ::windows::w!("FileContents");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_FILEDESCRIPTOR: ::windows::core::PCWSTR = ::windows::w!("FileGroupDescriptorW");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_FILEDESCRIPTORA: ::windows::core::PCWSTR = ::windows::w!("FileGroupDescriptor");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_FILEDESCRIPTORW: ::windows::core::PCWSTR = ::windows::w!("FileGroupDescriptorW");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_FILENAME: ::windows::core::PCWSTR = ::windows::w!("FileNameW");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_FILENAMEA: ::windows::core::PCWSTR = ::windows::w!("FileName");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_FILENAMEMAP: ::windows::core::PCWSTR = ::windows::w!("FileNameMapW");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_FILENAMEMAPA: ::windows::core::PCWSTR = ::windows::w!("FileNameMap");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_FILENAMEMAPW: ::windows::core::PCWSTR = ::windows::w!("FileNameMapW");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_FILENAMEW: ::windows::core::PCWSTR = ::windows::w!("FileNameW");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_FILE_ATTRIBUTES_ARRAY: ::windows::core::PCWSTR = ::windows::w!("File Attributes Array");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_INDRAGLOOP: ::windows::core::PCWSTR = ::windows::w!("InShellDragLoop");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_INETURL: ::windows::core::PCWSTR = ::windows::w!("UniformResourceLocatorW");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_INETURLA: ::windows::core::PCWSTR = ::windows::w!("UniformResourceLocator");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_INETURLW: ::windows::core::PCWSTR = ::windows::w!("UniformResourceLocatorW");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_INVOKECOMMAND_DROPPARAM: ::windows::core::PCWSTR = ::windows::w!("InvokeCommand DropParam");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_LOGICALPERFORMEDDROPEFFECT: ::windows::core::PCWSTR = ::windows::w!("Logical Performed DropEffect");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_MOUNTEDVOLUME: ::windows::core::PCWSTR = ::windows::w!("MountedVolume");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_NETRESOURCES: ::windows::core::PCWSTR = ::windows::w!("Net Resource");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_PASTESUCCEEDED: ::windows::core::PCWSTR = ::windows::w!("Paste Succeeded");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_PERFORMEDDROPEFFECT: ::windows::core::PCWSTR = ::windows::w!("Performed DropEffect");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_PERSISTEDDATAOBJECT: ::windows::core::PCWSTR = ::windows::w!("PersistedDataObject");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_PREFERREDDROPEFFECT: ::windows::core::PCWSTR = ::windows::w!("Preferred DropEffect");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_PRINTERGROUP: ::windows::core::PCWSTR = ::windows::w!("PrinterFriendlyName");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_SHELLDROPHANDLER: ::windows::core::PCWSTR = ::windows::w!("DropHandlerCLSID");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_SHELLIDLIST: ::windows::core::PCWSTR = ::windows::w!("Shell IDList Array");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_SHELLIDLISTOFFSET: ::windows::core::PCWSTR = ::windows::w!("Shell Object Offsets");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_SHELLURL: ::windows::core::PCWSTR = ::windows::w!("UniformResourceLocator");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_TARGETCLSID: ::windows::core::PCWSTR = ::windows::w!("TargetCLSID");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_UNTRUSTEDDRAGDROP: ::windows::core::PCWSTR = ::windows::w!("UntrustedDragDrop");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CFSTR_ZONEIDENTIFIER: ::windows::core::PCWSTR = ::windows::w!("ZoneIdentifier");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CGID_DefView: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4af07f10_d231_11d0_b942_00a0c90312e1);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CGID_Explorer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214d0_0000_0000_c000_000000000046);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CGID_ExplorerBarDoc: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214d3_0000_0000_c000_000000000046);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CGID_MENUDESKBAR: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5c9f0a12_959e_11d0_a3a4_00a0c9082636);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CGID_ShellDocView: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214d1_0000_0000_c000_000000000046);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CGID_ShellServiceObject: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214d2_0000_0000_c000_000000000046);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CGID_ShortCut: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x93a68750_951a_11d1_946f_000000000000);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLOSEPROPS_DISCARD: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLOSEPROPS_NONE: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_ACLCustomMRU: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6935db93_21e8_4ccc_beb9_9fe3c77a297a);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_ACLHistory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00bb2764_6a77_11d0_a535_00c04fd7d062);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_ACLMRU: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6756a641_de71_11d0_831b_00aa005b4383);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_ACLMulti: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00bb2765_6a77_11d0_a535_00c04fd7d062);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_ACListISF: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x03c036f1_a186_11d0_824a_00aa005b4383);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_ActiveDesktop: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x75048700_ef1f_11d0_9888_006097deacf9);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_AutoComplete: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00bb2763_6a77_11d0_a535_00c04fd7d062);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_CAnchorBrowsePropertyPage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3050f3bb_98b5_11cf_bb82_00aa00bdce0b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_CDocBrowsePropertyPage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3050f3b4_98b5_11cf_bb82_00aa00bdce0b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_CFSIconOverlayManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x63b51f81_c868_11d0_999c_00c04fd655e1);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_CImageBrowsePropertyPage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3050f3b3_98b5_11cf_bb82_00aa00bdce0b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_CURLSearchHook: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcfbfae00_17a6_11d0_99cb_00c04fd64497);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_CUrlHistory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3c374a40_bae4_11cf_bf7d_00aa006946ee);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_ControlPanel: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x21ec2020_3aea_1069_a2dd_08002b30309d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_DarwinAppPublisher: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcfccc7a0_a282_11d1_9082_006008059382);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_DocHostUIHandler: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7057e952_bd1b_11d1_8919_00c04fc2c836);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_DragDropHelper: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4657278a_411b_11d2_839a_00c04fd918d0);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_FileTypes: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb091e540_83e3_11cf_a713_0020afd79762);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_FolderItemsMultiLevel: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x53c74826_ab99_4d33_aca4_3117f51d3788);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_FolderShortcut: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0afaced1_e828_11d1_9187_b532f1e9575d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_HWShellExecute: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xffb8655f_81b9_4fce_b89c_9a6ba76d13e7);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_ISFBand: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd82be2b0_5764_11d0_a96e_00c04fd705a2);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_Internet: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x871c5380_42a0_1069_a2ea_08002b30309d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_InternetButtons: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1e796980_9cc5_11d1_a83f_00c04fc99d61);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_InternetShortcut: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfbf23b40_e3f0_101b_8488_00aa003e56f8);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_LinkColumnProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x24f14f02_7b1c_11d1_838f_0000f80461cf);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_MSOButtons: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x178f34b8_a282_11d2_86c5_00c04f8eea99);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_MenuBand: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5b4dae26_b807_11d0_9815_00c04fd91972);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_MenuBandSite: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe13ef4e4_d2f2_11d0_9816_00c04fd91972);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_MenuToolbarBase: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x40b96610_b522_11d1_b3b4_00aa006efde7);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_MyComputer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x20d04fe0_3aea_1069_a2d8_08002b30309d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_MyDocuments: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x450d8fba_ad25_11d0_98a8_0800361b1103);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_NetworkDomain: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x46e06680_4bf0_11d1_83ee_00a0c90dc849);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_NetworkServer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc0542a90_4bf0_11d1_83ee_00a0c90dc849);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_NetworkShare: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x54a754c0_4bf0_11d1_83ee_00a0c90dc849);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_NewMenu: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd969a300_e7ff_11d0_a93b_00a0c90f2719);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_Printers: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2227a280_3aea_1069_a2de_08002b30309d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_ProgressDialog: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf8383852_fcd3_11d1_a6b9_006097df5bd4);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_QueryAssociations: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa07034fd_6caa_4954_ac3f_97a27216f98a);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_QuickLinks: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0e5cbf21_d15f_11d0_8301_00aa005b4383);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_RecycleBin: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x645ff040_5081_101b_9f08_00aa002f954e);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_ShellFldSetExt: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6d5313c0_8c62_11d1_b2cd_006097df8c11);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_ShellThumbnailDiskCache: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1ebdcf80_a200_11d0_a3a4_00c04fd706ec);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CLSID_ToolbarExtButtons: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2ce4b5d8_a28f_11d2_86c5_00c04f8eea99);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMDID_INTSHORTCUTCREATE: i32 = 1i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMDSTR_NEWFOLDER: ::windows::core::PCWSTR = ::windows::w!("NewFolder");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMDSTR_NEWFOLDERA: ::windows::core::PCSTR = ::windows::s!("NewFolder");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMDSTR_NEWFOLDERW: ::windows::core::PCWSTR = ::windows::w!("NewFolder");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMDSTR_VIEWDETAILS: ::windows::core::PCWSTR = ::windows::w!("ViewDetails");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMDSTR_VIEWDETAILSA: ::windows::core::PCSTR = ::windows::s!("ViewDetails");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMDSTR_VIEWDETAILSW: ::windows::core::PCWSTR = ::windows::w!("ViewDetails");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMDSTR_VIEWLIST: ::windows::core::PCWSTR = ::windows::w!("ViewList");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMDSTR_VIEWLISTA: ::windows::core::PCSTR = ::windows::s!("ViewList");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMDSTR_VIEWLISTW: ::windows::core::PCWSTR = ::windows::w!("ViewList");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMF_ASYNCVERBSTATE: u32 = 1024u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMF_CANRENAME: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMF_DEFAULTONLY: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMF_DISABLEDVERBS: u32 = 512u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMF_DONOTPICKDEFAULT: u32 = 8192u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMF_EXPLORE: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMF_EXTENDEDVERBS: u32 = 256u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMF_INCLUDESTATIC: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMF_ITEMMENU: u32 = 128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMF_NODEFAULT: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMF_NORMAL: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMF_NOVERBS: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMF_OPTIMIZEFORINVOKE: u32 = 2048u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMF_RESERVED: u32 = 4294901760u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMF_SYNCCASCADEMENU: u32 = 4096u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMF_VERBSONLY: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMIC_MASK_CONTROL_DOWN: u32 = 1073741824u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMIC_MASK_PTINVOKE: u32 = 536870912u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CMIC_MASK_SHIFT_DOWN: u32 = 268435456u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMPONENT_DEFAULT_LEFT: u32 = 65535u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMPONENT_DEFAULT_TOP: u32 = 65535u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMPONENT_TOP: u32 = 1073741823u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_ELEM_CHECKED: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_ELEM_CURITEMSTATE: u32 = 16384u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_ELEM_DIRTY: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_ELEM_FRIENDLYNAME: u32 = 1024u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_ELEM_NOSCROLL: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_ELEM_ORIGINAL_CSI: u32 = 4096u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_ELEM_POS_LEFT: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_ELEM_POS_TOP: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_ELEM_POS_ZINDEX: u32 = 256u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_ELEM_RESTORED_CSI: u32 = 8192u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_ELEM_SIZE_HEIGHT: u32 = 128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_ELEM_SIZE_WIDTH: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_ELEM_SOURCE: u32 = 512u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_ELEM_SUBSCRIBEDURL: u32 = 2048u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_ELEM_TYPE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_TYPE_CFHTML: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_TYPE_CONTROL: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_TYPE_HTMLDOC: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_TYPE_MAX: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_TYPE_PICTURE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COMP_TYPE_WEBSITE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CONFLICT_RESOLUTION_CLSID_KEY: ::windows::core::PCWSTR = ::windows::w!("ConflictResolutionCLSID");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_ACCESSDENIED_READONLY: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927681i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_ACCESS_DENIED_DEST: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927710i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_ACCESS_DENIED_SRC: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927711i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_ALREADY_EXISTS_FOLDER: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927700i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_ALREADY_EXISTS_NORMAL: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927703i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_ALREADY_EXISTS_READONLY: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927702i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_ALREADY_EXISTS_SYSTEM: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927701i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_BLOCKED_BY_DLP_POLICY: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927666i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_BLOCKED_BY_EDP_FOR_REMOVABLE_DRIVE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927670i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_BLOCKED_BY_EDP_POLICY: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927672i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_CANCELLED: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927743i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_CANNOT_MOVE_FROM_RECYCLE_BIN: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927677i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_CANNOT_MOVE_SHARED_FOLDER: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927676i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_CANT_REACH_SOURCE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927691i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_DEST_IS_RO_CD: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927729i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_DEST_IS_RO_DVD: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927726i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_DEST_IS_RW_CD: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927728i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_DEST_IS_RW_DVD: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927725i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_DEST_IS_R_CD: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927727i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_DEST_IS_R_DVD: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927724i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_DEST_SAME_TREE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927734i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_DEST_SUBTREE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927735i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_DIFF_DIR: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927740i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_DIR_NOT_EMPTY: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927683i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_DISK_FULL: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927694i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_DISK_FULL_CLEAN: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927693i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_EA_LOSS: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927698i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_EA_NOT_SUPPORTED: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927692i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_ENCRYPTION_LOSS: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927695i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_FAT_MAX_IN_ROOT: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927682i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_FILE_IS_FLD_DEST: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927732i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_FILE_TOO_LARGE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927731i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_FLD_IS_FILE_DEST: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927733i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_INTERNET_ITEM_STORAGE_PROVIDER_ERROR: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927675i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_INTERNET_ITEM_STORAGE_PROVIDER_PAUSED: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927674i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_INTERNET_ITEM_UNAVAILABLE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927678i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_INVALID_FILES_DEST: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927716i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_INVALID_FILES_SRC: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927717i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_MANY_SRC_1_DEST: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927739i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_NET_DISCONNECT_DEST: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927706i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_NET_DISCONNECT_SRC: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927707i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_NEWFILE_NAME_TOO_LONG: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927685i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_NEWFOLDER_NAME_TOO_LONG: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927684i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_PATH_NOT_FOUND_DEST: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927708i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_PATH_NOT_FOUND_SRC: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927709i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_PATH_TOO_DEEP_DEST: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927714i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_PATH_TOO_DEEP_SRC: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927715i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_PROPERTIES_LOSS: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927696i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_PROPERTY_LOSS: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927697i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_RECYCLE_BIN_NOT_FOUND: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927686i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_RECYCLE_FORCE_NUKE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927690i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_RECYCLE_PATH_TOO_LONG: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927688i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_RECYCLE_SIZE_TOO_BIG: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927689i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_RECYCLE_UNKNOWN_ERROR: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927691i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_REDIRECTED_TO_WEBPAGE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927680i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_REMOVABLE_FULL: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927730i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_REQUIRES_EDP_CONSENT: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927673i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_REQUIRES_EDP_CONSENT_FOR_REMOVABLE_DRIVE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927671i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_REQUIRES_ELEVATION: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927742i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_RMS_BLOCKED_BY_EDP_FOR_REMOVABLE_DRIVE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927668i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_RMS_REQUIRES_EDP_CONSENT_FOR_REMOVABLE_DRIVE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927669i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_ROOT_DIR_DEST: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927712i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_ROOT_DIR_SRC: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927713i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_SAME_FILE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927741i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_SERVER_BAD_FILE_TYPE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927679i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_SHARING_VIOLATION_DEST: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927704i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_SHARING_VIOLATION_SRC: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927705i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_SILENT_FAIL_BY_DLP_POLICY: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927665i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_SRC_IS_RO_CD: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927723i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_SRC_IS_RO_DVD: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927720i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_SRC_IS_RW_CD: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927722i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_SRC_IS_RW_DVD: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927719i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_SRC_IS_R_CD: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927721i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_SRC_IS_R_DVD: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927718i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_STREAM_LOSS: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927699i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_USER_CANCELLED: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927744i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_E_WARNED_BY_DLP_POLICY: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927667i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_S_ALREADY_DONE: ::windows::core::HRESULT = ::windows::core::HRESULT(2555914i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_S_CLOSE_PROGRAM: ::windows::core::HRESULT = ::windows::core::HRESULT(2555917i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_S_COLLISIONRESOLVED: ::windows::core::HRESULT = ::windows::core::HRESULT(2555918i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_S_DONT_PROCESS_CHILDREN: ::windows::core::HRESULT = ::windows::core::HRESULT(2555912i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_S_KEEP_BOTH: ::windows::core::HRESULT = ::windows::core::HRESULT(2555916i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_S_MERGE: ::windows::core::HRESULT = ::windows::core::HRESULT(2555910i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_S_NOT_HANDLED: ::windows::core::HRESULT = ::windows::core::HRESULT(2555907i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_S_PENDING: ::windows::core::HRESULT = ::windows::core::HRESULT(2555915i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_S_PROGRESS_PAUSE: ::windows::core::HRESULT = ::windows::core::HRESULT(2555919i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_S_USER_IGNORED: ::windows::core::HRESULT = ::windows::core::HRESULT(2555909i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_S_USER_RETRY: ::windows::core::HRESULT = ::windows::core::HRESULT(2555908i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const COPYENGINE_S_YES: ::windows::core::HRESULT = ::windows::core::HRESULT(2555905i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFG_CREDENTIAL_PROVIDER_LABEL: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x286bbff3_bad4_438f_b007_79b7267c3d48);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFG_CREDENTIAL_PROVIDER_LOGO: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2d837775_f6cd_464e_a745_482fd0b47493);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFG_LOGON_PASSWORD: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x60624cfa_a477_47b1_8a8e_3a4a19981827);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFG_LOGON_USERNAME: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xda15bbe8_954d_4fd3_b0f4_1fb5b90b174b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFG_SMARTCARD_PIN: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4fe5263b_9181_46c1_b0a4_9dedd4db7dea);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFG_SMARTCARD_USERNAME: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3e1ecf69_568c_4d96_9d59_46444174e2d6);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFG_STANDALONE_SUBMIT_BUTTON: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0b7b0ad8_cc36_4d59_802b_82f714fa7022);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFG_STYLE_LINK_AS_BUTTON: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x088fa508_94a6_4430_a4cb_6fc6e3c0b9e2);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPLPAGE_DISPLAY_BACKGROUND: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPLPAGE_KEYBOARD_SPEED: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPLPAGE_MOUSE_BUTTONS: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPLPAGE_MOUSE_PTRMOTION: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPLPAGE_MOUSE_WHEEL: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPL_DBLCLK: u32 = 5u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPL_DYNAMIC_RES: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPL_EXIT: u32 = 7u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPL_GETCOUNT: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPL_INIT: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPL_INQUIRE: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPL_NEWINQUIRE: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPL_SELECT: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPL_SETUP: u32 = 200u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPL_STARTWPARMS: u32 = 10u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPL_STARTWPARMSA: u32 = 9u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPL_STARTWPARMSW: u32 = 10u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPL_STOP: u32 = 6u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CREDENTIAL_PROVIDER_NO_DEFAULT: u32 = 4294967295u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_ADMINTOOLS: u32 = 48u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_ALTSTARTUP: u32 = 29u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_APPDATA: u32 = 26u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_BITBUCKET: u32 = 10u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_CDBURN_AREA: u32 = 59u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_COMMON_ADMINTOOLS: u32 = 47u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_COMMON_ALTSTARTUP: u32 = 30u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_COMMON_APPDATA: u32 = 35u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_COMMON_DESKTOPDIRECTORY: u32 = 25u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_COMMON_DOCUMENTS: u32 = 46u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_COMMON_FAVORITES: u32 = 31u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_COMMON_MUSIC: u32 = 53u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_COMMON_OEM_LINKS: u32 = 58u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_COMMON_PICTURES: u32 = 54u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_COMMON_PROGRAMS: u32 = 23u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_COMMON_STARTMENU: u32 = 22u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_COMMON_STARTUP: u32 = 24u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_COMMON_TEMPLATES: u32 = 45u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_COMMON_VIDEO: u32 = 55u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_COMPUTERSNEARME: u32 = 61u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_CONNECTIONS: u32 = 49u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_CONTROLS: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_COOKIES: u32 = 33u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_DESKTOP: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_DESKTOPDIRECTORY: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_DRIVES: u32 = 17u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_FAVORITES: u32 = 6u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_FLAG_CREATE: u32 = 32768u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_FLAG_DONT_UNEXPAND: u32 = 8192u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_FLAG_DONT_VERIFY: u32 = 16384u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_FLAG_MASK: u32 = 65280u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_FLAG_NO_ALIAS: u32 = 4096u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_FLAG_PER_USER_INIT: u32 = 2048u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_FLAG_PFTI_TRACKTARGET: u32 = 16384u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_FONTS: u32 = 20u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_HISTORY: u32 = 34u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_INTERNET: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_INTERNET_CACHE: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_LOCAL_APPDATA: u32 = 28u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_MYDOCUMENTS: u32 = 5u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_MYMUSIC: u32 = 13u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_MYPICTURES: u32 = 39u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_MYVIDEO: u32 = 14u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_NETHOOD: u32 = 19u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_NETWORK: u32 = 18u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_PERSONAL: u32 = 5u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_PRINTERS: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_PRINTHOOD: u32 = 27u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_PROFILE: u32 = 40u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_PROGRAMS: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_PROGRAM_FILES: u32 = 38u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_PROGRAM_FILESX86: u32 = 42u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_PROGRAM_FILES_COMMON: u32 = 43u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_PROGRAM_FILES_COMMONX86: u32 = 44u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_RECENT: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_RESOURCES: u32 = 56u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_RESOURCES_LOCALIZED: u32 = 57u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_SENDTO: u32 = 9u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_STARTMENU: u32 = 11u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_STARTUP: u32 = 7u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_SYSTEM: u32 = 37u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_SYSTEMX86: u32 = 41u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_TEMPLATES: u32 = 21u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSIDL_WINDOWS: u32 = 36u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CScriptErrorList: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xefd01300_160f_11d2_bb2e_00805ff7efca);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CTF_COINIT: i32 = 8i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CTF_COINIT_MTA: i32 = 4096i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CTF_COINIT_STA: i32 = 8i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CTF_FREELIBANDEXIT: i32 = 16i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CTF_INHERITWOW64: i32 = 256i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CTF_INSIST: i32 = 1i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CTF_KEYBOARD_LOCALE: i32 = 1024i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CTF_NOADDREFLIB: i32 = 8192i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CTF_OLEINITIALIZE: i32 = 2048i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CTF_PROCESS_REF: i32 = 4i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CTF_REF_COUNTED: i32 = 32i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CTF_THREAD_REF: i32 = 2i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CTF_UNUSED: i32 = 128i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CTF_WAIT_ALLOWCOM: i32 = 64i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CTF_WAIT_NO_REENTRANCY: i32 = 512i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ConflictFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x289978ac_a101_4341_a817_21eba7fd046d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBCID_CLSIDOFBAR: i32 = 2i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBCID_EMPTY: i32 = 0i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBCID_GETBAR: i32 = 4i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBCID_ONDRAG: i32 = 1i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBCID_RESIZE: i32 = 3i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBCID_UPDATESIZE: i32 = 5i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBC_GS_IDEAL: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBC_GS_SIZEDOWN: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBC_HIDE: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBC_SHOW: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBC_SHOWOBSCURE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIF_VIEWMODE_FLOATING: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIF_VIEWMODE_NORMAL: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIF_VIEWMODE_TRANSPARENT: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIF_VIEWMODE_VERTICAL: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIMF_ADDTOFRONT: u32 = 512u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIMF_ALWAYSGRIPPER: u32 = 4096u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIMF_BKCOLOR: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIMF_BREAK: u32 = 256u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIMF_DEBOSSED: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIMF_FIXED: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIMF_FIXEDBMP: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIMF_NOGRIPPER: u32 = 2048u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIMF_NOMARGINS: u32 = 8192u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIMF_NORMAL: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIMF_TOPALIGN: u32 = 1024u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIMF_UNDELETEABLE: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIMF_USECHEVRON: u32 = 128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIMF_VARIABLEHEIGHT: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIM_ACTUAL: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIM_BKCOLOR: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIM_INTEGRAL: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIM_MAXSIZE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIM_MINSIZE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIM_MODEFLAGS: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBIM_TITLE: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBPC_SELECTFIRST: u32 = 4294967295u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_BEGINDRAG: u32 = 204u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_CHECKSTATECHANGED: u32 = 209u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_COLUMNSCHANGED: u32 = 212u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_CONTENTSCHANGED: u32 = 207u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_CTRLMOUSEWHEEL: u32 = 213u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_DEFAULTVERBINVOKED: u32 = 203u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_ENTERPRESSED: u32 = 200u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_ENTERPRISEIDCHANGED: u32 = 224u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_EXPLORERWINDOWREADY: u32 = 221u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_FILELISTENUMDONE: u32 = 201u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_FILTERINVOKED: u32 = 218u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_FOCUSCHANGED: u32 = 208u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_FOLDERCHANGED: u32 = 217u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_IADCCTL_DEFAULTCAT: u32 = 262u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_IADCCTL_DIRTY: u32 = 256u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_IADCCTL_FORCEX86: u32 = 259u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_IADCCTL_ONDOMAIN: u32 = 261u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_IADCCTL_PUBCAT: u32 = 257u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_IADCCTL_SHOWPOSTSETUP: u32 = 260u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_IADCCTL_SORT: u32 = 258u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_ICONSIZECHANGED: u32 = 215u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_INITIALENUMERATIONDONE: u32 = 223u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_NOITEMSTATE_CHANGED: u32 = 206u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_ORDERCHANGED: u32 = 210u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_SEARCHCOMMAND_ABORT: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_SEARCHCOMMAND_COMPLETE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_SEARCHCOMMAND_ERROR: u32 = 6u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_SEARCHCOMMAND_PROGRESSTEXT: u32 = 5u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_SEARCHCOMMAND_RESTORE: u32 = 7u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_SEARCHCOMMAND_START: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_SEARCHCOMMAND_UPDATE: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_SELECTEDITEMCHANGED: u32 = 220u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_SELECTIONCHANGED: u32 = 200u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_SORTDONE: u32 = 214u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_UPDATEIMAGE: u32 = 222u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_VERBINVOKED: u32 = 202u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_VIEWMODECHANGED: u32 = 205u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_VIEWPAINTDONE: u32 = 211u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DISPID_WORDWHEELEDITED: u32 = 219u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DI_GETDRAGIMAGE: ::windows::core::PCWSTR = ::windows::w!("ShellGetDragImage");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DLG_SCRNSAVECONFIGURE: u32 = 2003u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DLLVER_BUILD_MASK: u64 = 4294901760u64;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DLLVER_MAJOR_MASK: u64 = 18446462598732840960u64;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DLLVER_MINOR_MASK: u64 = 281470681743360u64;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DLLVER_PLATFORM_NT: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DLLVER_PLATFORM_WINDOWS: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DLLVER_QFE_MASK: u64 = 65535u64;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DVASPECT_COPY: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DVASPECT_LINK: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DVASPECT_SHORTNAME: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DWFAF_AUTOHIDE: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DWFAF_GROUP1: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DWFAF_GROUP2: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DWFAF_HIDDEN: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DWFRF_DELETECONFIGDATA: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DWFRF_NORMAL: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DefFolderMenu: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc63382be_7933_48d0_9ac8_85fb46be2fdd);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DesktopGadget: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x924ccc1b_6562_4c85_8657_d177925222b6);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DesktopWallpaper: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc2cf3110_460e_4fc1_b9d0_8a1c0c9cc4bd);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DestinationList: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x77f10cf0_3db5_4966_b520_b7c54fd35ed6);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DocPropShellExtension: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x883373c3_bf89_11d1_be35_080036b11a03);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DriveSizeCategorizer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x94357b53_ca29_4b78_83ae_e8fe7409134f);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DriveTypeCategorizer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb0a8f3cf_4333_4bab_8873_1ccb1cada48b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EP_AdvQueryPane: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb4e9db8b_34ba_4c39_b5cc_16a1bd2c411c);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EP_Commands: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd9745868_ca5f_4a76_91cd_f5a129fbb076);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EP_Commands_Organize: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x72e81700_e3ec_4660_bf24_3c3b7b648806);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EP_Commands_View: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x21f7c32d_eeaa_439b_bb51_37b96fd6a943);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EP_DetailsPane: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x43abf98b_89b8_472d_b9ce_e69b8229f019);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EP_NavPane: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcb316b22_25f7_42b8_8a09_540d23a43c2f);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EP_PreviewPane: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x893c63d1_45c8_4d17_be19_223be71be365);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EP_QueryPane: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x65bcde4f_4f07_4f27_83a7_1afca4df7ddd);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EP_Ribbon: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd27524a8_c9f2_4834_a106_df8889fd4f37);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EP_StatusBar: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x65fe56ce_5cfe_4bc4_ad8a_7ae3fe7e8f7c);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EXECUTE_E_LAUNCH_APPLICATION: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927487i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EXP_DARWIN_ID_SIG: u32 = 2684354566u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EXP_PROPERTYSTORAGE_SIG: u32 = 2684354569u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EXP_SPECIAL_FOLDER_SIG: u32 = 2684354565u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EXP_SZ_ICON_SIG: u32 = 2684354567u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EXP_SZ_LINK_SIG: u32 = 2684354561u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_ACTIVATIONDENIED_SHELLERROR: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927439i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_ACTIVATIONDENIED_SHELLNOTREADY: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927436i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_ACTIVATIONDENIED_SHELLRESTART: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927438i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_ACTIVATIONDENIED_UNEXPECTED: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927437i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_ACTIVATIONDENIED_USERCLOSE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927440i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_FILE_PLACEHOLDER_NOT_INITIALIZED: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927472i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_FILE_PLACEHOLDER_SERVER_TIMED_OUT: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927470i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_FILE_PLACEHOLDER_STORAGEPROVIDER_NOT_FOUND: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927469i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_FILE_PLACEHOLDER_VERSION_MISMATCH: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927471i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_FLAGS: ::windows::core::HRESULT = ::windows::core::HRESULT(-2147217408i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_IMAGEFEED_CHANGEDISABLED: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144926960i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_NOTVALIDFORANIMATEDIMAGE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2147221503i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_PREVIEWHANDLER_CORRUPT: ::windows::core::HRESULT = ::windows::core::HRESULT(-2042494972i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_PREVIEWHANDLER_DRM_FAIL: ::windows::core::HRESULT = ::windows::core::HRESULT(-2042494975i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_PREVIEWHANDLER_NOAUTH: ::windows::core::HRESULT = ::windows::core::HRESULT(-2042494974i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_PREVIEWHANDLER_NOTFOUND: ::windows::core::HRESULT = ::windows::core::HRESULT(-2042494973i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_SHELL_EXTENSION_BLOCKED: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144926975i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_TILE_NOTIFICATIONS_PLATFORM_FAILURE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927159i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_USERTILE_CHANGEDISABLED: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927215i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_USERTILE_FILESIZE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927212i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_USERTILE_LARGEORDYNAMIC: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927214i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_USERTILE_UNSUPPORTEDFILETYPE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927216i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const E_USERTILE_VIDEOFRAMESIZE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927213i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EnumerableObjectCollection: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2d3468c1_36a7_43b6_ac24_d3f02fd9607a);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ExecuteFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x11dbb47c_a525_400b_9e80_a54615a090c0);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ExecuteUnknown: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe44e9428_bdbc_4987_a099_40dc8fd255e7);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ExplorerBrowser: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x71f96385_ddd6_48d3_a0c1_ae06e8b055fb);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCIDM_BROWSERFIRST: u32 = 40960u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCIDM_BROWSERLAST: u32 = 48896u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCIDM_GLOBALFIRST: u32 = 32768u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCIDM_GLOBALLAST: u32 = 40959u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCIDM_MENU_EDIT: u32 = 32832u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCIDM_MENU_EXPLORE: u32 = 33104u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCIDM_MENU_FAVORITES: u32 = 33136u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCIDM_MENU_FILE: u32 = 32768u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCIDM_MENU_FIND: u32 = 33088u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCIDM_MENU_HELP: u32 = 33024u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCIDM_MENU_TOOLS: u32 = 32960u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCIDM_MENU_TOOLS_SEP_GOTO: u32 = 32961u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCIDM_MENU_VIEW: u32 = 32896u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCIDM_MENU_VIEW_SEP_OPTIONS: u32 = 32897u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCIDM_SHVIEWFIRST: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCIDM_SHVIEWLAST: u32 = 32767u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCIDM_STATUS: u32 = 40961u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCIDM_TOOLBAR: u32 = 40960u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCSM_CLSID: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCSM_FLAGS: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCSM_ICONFILE: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCSM_INFOTIP: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCSM_LOGO: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCSM_VIEWID: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCSM_WEBVIEWTEMPLATE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCS_FLAG_DRAGDROP: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCS_FORCEWRITE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCS_READ: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCT_ADDTOEND: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCT_CONFIGABLE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCT_MERGE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCW_INTERNETBAR: u32 = 6u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCW_PROGRESS: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCW_STATUS: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCW_TOOLBAR: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FCW_TREE: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FDTF_LONGDATE: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FDTF_LONGTIME: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FDTF_LTRDATE: u32 = 256u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FDTF_NOAUTOREADINGORDER: u32 = 1024u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FDTF_RELATIVE: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FDTF_RTLDATE: u32 = 512u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FDTF_SHORTDATE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FDTF_SHORTTIME: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FMTID_Briefcase: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x328d8b21_7729_4bfc_954c_902b329d56b0);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FMTID_CustomImageProperties: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7ecd8b0e_c136_4a9b_9411_4ebd6673ccc3);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FMTID_DRM: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xaeac19e4_89ae_4508_b9b7_bb867abee2ed);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FMTID_Displaced: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9b174b33_40ff_11d2_a27e_00c04fc30871);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FMTID_ImageProperties: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x14b81da1_0135_4d31_96d9_6cbfc9671a99);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FMTID_InternetSite: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214a1_0000_0000_c000_000000000046);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FMTID_Intshcut: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000214a0_0000_0000_c000_000000000046);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FMTID_LibraryProperties: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5d76b67f_9b3d_44bb_b6ae_25da4f638a67);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FMTID_MUSIC: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x56a3372e_ce9c_11d2_9f0e_006097c686f6);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FMTID_Misc: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9b174b34_40ff_11d2_a27e_00c04fc30871);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FMTID_Query: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x49691c90_7e17_101a_a91c_08002b2ecda9);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FMTID_ShellDetails: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x28636aa6_953d_11d2_b5d6_00c04fd918d0);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FMTID_Storage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb725f130_47ef_101a_a5f1_02608c9eebac);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FMTID_Volume: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9b174b35_40ff_11d2_a27e_00c04fc30871);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FMTID_WebView: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf2275480_f782_4291_bd94_f13693513aec);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOFX_ADDUNDORECORD: u32 = 536870912u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOFX_COPYASDOWNLOAD: u32 = 1073741824u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOFX_DONTDISPLAYDESTPATH: u32 = 134217728u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOFX_DONTDISPLAYLOCATIONS: u32 = 2147483648u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOFX_DONTDISPLAYSOURCEPATH: u32 = 67108864u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOFX_EARLYFAILURE: u32 = 1048576u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOFX_KEEPNEWERFILE: u32 = 4194304u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOFX_MOVEACLSACROSSVOLUMES: u32 = 33554432u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOFX_NOCOPYHOOKS: u32 = 8388608u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOFX_NOMINIMIZEBOX: u32 = 16777216u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOFX_NOSKIPJUNCTIONS: u32 = 65536u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOFX_PREFERHARDLINK: u32 = 131072u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOFX_PRESERVEFILEEXTENSIONS: u32 = 2097152u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOFX_RECYCLEONDELETE: u32 = 524288u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOFX_REQUIREELEVATION: u32 = 268435456u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOFX_SHOWELEVATIONPROMPT: u32 = 262144u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOF_ALLOWUNDO: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOF_CONFIRMMOUSE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOF_FILESONLY: u32 = 128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOF_MULTIDESTFILES: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOF_NOCONFIRMATION: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOF_NOCONFIRMMKDIR: u32 = 512u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOF_NOCOPYSECURITYATTRIBS: u32 = 2048u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOF_NOERRORUI: u32 = 1024u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOF_NORECURSEREPARSE: u32 = 32768u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOF_NORECURSION: u32 = 4096u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOF_NO_CONNECTED_ELEMENTS: u32 = 8192u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOF_RENAMEONCOLLISION: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOF_SILENT: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOF_SIMPLEPROGRESS: u32 = 256u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOF_WANTMAPPINGHANDLE: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOF_WANTNUKEWARNING: u32 = 16384u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_AccountPictures: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x008ca0b1_55b4_4c56_b8a8_4de4b299d3be);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_AddNewPrograms: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xde61d971_5ebc_4f02_a3a9_6c82895e5c04);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_AdminTools: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x724ef170_a42d_4fef_9f26_b60e846fba4f);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_AllAppMods: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7ad67899_66af_43ba_9156_6aad42e6c596);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_AppCaptures: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xedc0fe71_98d8_4f4a_b920_c8dc133cb165);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_AppDataDesktop: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb2c5e279_7add_439f_b28c_c41fe1bbf672);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_AppDataDocuments: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7be16610_1f7f_44ac_bff0_83e15f2ffca1);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_AppDataFavorites: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7cfbefbc_de1f_45aa_b843_a542ac536cc9);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_AppDataProgramData: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x559d40a3_a036_40fa_af61_84cb430a4d34);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_AppUpdates: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa305ce99_f527_492b_8b1a_7e76fa98d6e4);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_ApplicationShortcuts: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa3918781_e5f2_4890_b3d9_a7e54332328c);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_AppsFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1e87508d_89c2_42f0_8a7e_645a0f50ca58);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_CDBurning: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9e52ab10_f80d_49df_acb8_4330f5687855);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_CameraRoll: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xab5fb87b_7ce2_4f83_915d_550846c9537b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_CameraRollLibrary: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2b20df75_1eda_4039_8097_38798227d5b7);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_ChangeRemovePrograms: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdf7266ac_9274_4867_8d55_3bd661de872d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_CommonAdminTools: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd0384e7d_bac3_4797_8f14_cba229b392b5);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_CommonOEMLinks: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc1bae2d0_10df_4334_bedd_7aa20b227a9d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_CommonPrograms: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0139d44e_6afe_49f2_8690_3dafcae6ffb8);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_CommonStartMenu: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa4115719_d62e_491d_aa7c_e74b8be3b067);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_CommonStartMenuPlaces: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa440879f_87a0_4f7d_b700_0207b966194a);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_CommonStartup: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x82a5ea35_d9cd_47c5_9629_e15d2f714e6e);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_CommonTemplates: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb94237e7_57ac_4347_9151_b08c6c32d1f7);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_ComputerFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0ac0837c_bbf8_452a_850d_79d08e667ca7);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_ConflictFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4bfefb45_347d_4006_a5be_ac0cb0567192);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_ConnectionsFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6f0cd92b_2e97_45d1_88ff_b0d186b8dedd);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Contacts: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x56784854_c6cb_462b_8169_88e350acb882);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_ControlPanelFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x82a74aeb_aeb4_465c_a014_d097ee346d63);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Cookies: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2b0f765d_c0e9_4171_908e_08a611b84ff6);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_CurrentAppMods: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3db40b20_2a30_4dbe_917e_771dd21dd099);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Desktop: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb4bfcc3a_db2c_424c_b029_7fe99a87c641);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_DevelopmentFiles: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdbe8e08e_3053_4bbc_b183_2a7b2b191e59);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Device: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1c2ac1dc_4358_4b6c_9733_af21156576f0);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_DeviceMetadataStore: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5ce4a5e9_e4eb_479d_b89f_130c02886155);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Documents: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfdd39ad0_238f_46af_adb4_6c85480369c7);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_DocumentsLibrary: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7b0db17d_9cd2_4a93_9733_46cc89022e7c);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Downloads: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x374de290_123f_4565_9164_39c4925e467b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Favorites: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1777f761_68ad_4d8a_87bd_30b759fa33dd);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Fonts: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfd228cb7_ae11_4ae3_864c_16f3910ab8fe);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_GameTasks: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x054fae61_4dd8_4787_80b6_090220c4b700);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Games: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcac52c1a_b53d_4edc_92d7_6b2e8ac19434);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_History: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd9dc8a3b_b784_432e_a781_5a1130a75963);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_HomeGroup: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x52528a6b_b9e3_4add_b60d_588c2dba842d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_HomeGroupCurrentUser: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9b74b6a3_0dfd_4f11_9e78_5f7800f2e772);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_ImplicitAppShortcuts: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbcb5256f_79f6_4cee_b725_dc34e402fd46);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_InternetCache: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x352481e8_33be_4251_ba85_6007caedcf9d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_InternetFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4d9f7874_4e0c_4904_967b_40b0d20c3e4b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Libraries: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1b3ea5dc_b587_4786_b4ef_bd1dc332aeae);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Links: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbfb9d5e0_c6a9_404c_b2b2_ae6db6af4968);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_LocalAppData: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf1b32785_6fba_4fcf_9d55_7b8e7f157091);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_LocalAppDataLow: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa520a1a4_1780_4ff6_bd18_167343c5af16);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_LocalDocuments: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf42ee2d3_909f_4907_8871_4c22fc0bf756);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_LocalDownloads: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7d83ee9b_2244_4e70_b1f5_5393042af1e4);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_LocalMusic: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa0c69a99_21c8_4671_8703_7934162fcf1d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_LocalPictures: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0ddd015d_b06c_45d5_8c4c_f59713854639);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_LocalStorage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb3eb08d3_a1f3_496b_865a_42b536cda0ec);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_LocalVideos: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x35286a68_3c57_41a1_bbb1_0eae73d76c95);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_LocalizedResourcesDir: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2a00375e_224c_49de_b8d1_440df7ef3ddc);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Music: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4bd8d571_6d19_48d3_be97_422220080e43);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_MusicLibrary: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2112ab0a_c86a_4ffe_a368_0de96e47012e);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_NetHood: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc5abbf53_e17f_4121_8900_86626fc2c973);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_NetworkFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd20beec4_5ca8_4905_ae3b_bf251ea09b53);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Objects3D: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x31c0dd25_9439_4f12_bf41_7ff4eda38722);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_OneDrive: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa52bba46_e9e1_435f_b3d9_28daa648c0f6);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_OriginalImages: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2c36c0aa_5812_4b87_bfd0_4cd0dfb19b39);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_PhotoAlbums: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x69d2cf90_fc33_4fb7_9a0c_ebb0f0fcb43c);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Pictures: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x33e28130_4e1e_4676_835a_98395c3bc3bb);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_PicturesLibrary: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa990ae9f_a03b_4e80_94bc_9912d7504104);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Playlists: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xde92c1c7_837f_4f69_a3bb_86e631204a23);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_PrintHood: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9274bd8d_cfd1_41c3_b35e_b13f55a758f4);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_PrintersFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x76fc4e2d_d6ad_4519_a663_37bd56068185);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Profile: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5e6c858f_0e22_4760_9afe_ea3317b67173);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_ProgramData: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x62ab5d82_fdc1_4dc3_a9dd_070d1d495d97);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_ProgramFiles: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x905e63b6_c1bf_494e_b29c_65b732d3d21a);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_ProgramFilesCommon: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf7f1ed05_9f6d_47a2_aaae_29d317c6f066);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_ProgramFilesCommonX64: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6365d5a7_0f0d_45e5_87f6_0da56b6a4f7d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_ProgramFilesCommonX86: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xde974d24_d9c6_4d3e_bf91_f4455120b917);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_ProgramFilesX64: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6d809377_6af0_444b_8957_a3773f02200e);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_ProgramFilesX86: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7c5a40ef_a0fb_4bfc_874a_c0f2e0b9fa8e);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Programs: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa77f5d77_2e2b_44c3_a6a2_aba601054a51);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Public: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdfdf76a2_c82a_4d63_906a_5644ac457385);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_PublicDesktop: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc4aa340d_f20f_4863_afef_f87ef2e6ba25);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_PublicDocuments: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xed4824af_dce4_45a8_81e2_fc7965083634);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_PublicDownloads: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3d644c9b_1fb8_4f30_9b45_f670235f79c0);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_PublicGameTasks: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdebf2536_e1a8_4c59_b6a2_414586476aea);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_PublicLibraries: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x48daf80b_e6cf_4f4e_b800_0e69d84ee384);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_PublicMusic: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3214fab5_9757_4298_bb61_92a9deaa44ff);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_PublicPictures: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb6ebfb86_6907_413c_9af7_4fc2abf07cc5);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_PublicRingtones: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe555ab60_153b_4d17_9f04_a5fe99fc15ec);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_PublicUserTiles: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482af6c_08f1_4c34_8c90_e17ec98b1e17);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_PublicVideos: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2400183a_6185_49fb_a2d8_4a392a602ba3);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_QuickLaunch: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x52a4f021_7b75_48a9_9f6b_4b87a210bc8f);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Recent: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xae50c081_ebd2_438a_8655_8a092e34987a);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_RecordedCalls: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2f8b40c2_83ed_48ee_b383_a1f157ec6f9a);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_RecordedTVLibrary: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1a6fdba2_f42d_4358_a798_b74d745926c5);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_RecycleBinFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb7534046_3ecb_4c18_be4e_64cd4cb7d6ac);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_ResourceDir: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8ad10c31_2adb_4296_a8f7_e4701232c972);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_RetailDemo: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x12d4c69e_24ad_4923_be19_31321c43a767);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Ringtones: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc870044b_f49e_4126_a9c3_b52a1ff411e8);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_RoamedTileImages: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xaaa8d5a5_f1d6_4259_baa8_78e7ef60835e);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_RoamingAppData: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3eb685db_65f9_4cf6_a03a_e3ef65729f3d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_RoamingTiles: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00bcfc5a_ed94_4e48_96a1_3f6217f21990);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SEARCH_CSC: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xee32e446_31ca_4aba_814f_a5ebd2fd6d5e);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SEARCH_MAPI: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x98ec0e18_2098_4d44_8644_66979315a281);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SampleMusic: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb250c668_f57d_4ee1_a63c_290ee7d1aa1f);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SamplePictures: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc4900540_2379_4c75_844b_64e6faf8716b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SamplePlaylists: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x15ca69b3_30ee_49c1_ace1_6b5ec372afb5);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SampleVideos: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x859ead94_2e85_48ad_a71a_0969cb56a6cd);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SavedGames: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4c5c32ff_bb9d_43b0_b5b4_2d72e54eaaa4);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SavedPictures: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3b193882_d3ad_4eab_965a_69829d1fb59f);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SavedPicturesLibrary: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe25b5812_be88_4bd9_94b0_29233477b6c3);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SavedSearches: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7d1d3a04_debb_4115_95cf_2f29da2920da);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Screenshots: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb7bede81_df94_4682_a7d8_57a52620b86f);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SearchHistory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0d4c3db6_03a3_462f_a0e6_08924c41b5d4);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SearchHome: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x190337d1_b8ca_4121_a639_6d472d16972a);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SearchTemplates: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7e636bfe_dfa9_4d5e_b456_d7b39851d8a9);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SendTo: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8983036c_27c0_404b_8f08_102d10dcfd74);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SidebarDefaultParts: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7b396e54_9ec5_4300_be0a_2482ebae1a26);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SidebarParts: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa75d362e_50fc_4fb7_ac2c_a8beaa314493);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SkyDrive: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa52bba46_e9e1_435f_b3d9_28daa648c0f6);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SkyDriveCameraRoll: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x767e6811_49cb_4273_87c2_20f355e1085b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SkyDriveDocuments: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x24d89e24_2f19_4534_9dde_6a6671fbb8fe);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SkyDriveMusic: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc3f2459e_80d6_45dc_bfef_1f769f2be730);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SkyDrivePictures: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x339719b5_8c47_4894_94c2_d8f77add44a6);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_StartMenu: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x625b53c3_ab48_4ec1_ba1f_a1ef4146fc19);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_StartMenuAllPrograms: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf26305ef_6948_40b9_b255_81453d09c785);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Startup: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb97d20bb_f46a_4c97_ba10_5e3608430854);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SyncManagerFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x43668bf8_c14e_49b2_97c9_747784d784b7);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SyncResultsFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x289a9a43_be44_4057_a41b_587a76d7e7f9);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SyncSetupFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0f214138_b1d3_4a90_bba9_27cbc0c5389a);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_System: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1ac14e77_02e7_4e5d_b744_2eb1ae5198b7);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_SystemX86: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd65231b0_b2f1_4857_a4ce_a8e7c6ea7d27);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Templates: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa63293e8_664e_48db_a079_df759e0509f7);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_UserPinned: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9e3995ab_1f9c_4f13_b827_48b24b6c7174);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_UserProfiles: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0762d272_c50a_4bb0_a382_697dcd729b80);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_UserProgramFiles: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5cd7aee2_2219_4a67_b85d_6c9ce15660cb);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_UserProgramFilesCommon: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbcbd3057_ca5c_4622_b42d_bc56db0ae516);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_UsersFiles: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf3ce0f7c_4901_4acc_8648_d5d44b04ef8f);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_UsersLibraries: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa302545d_deff_464b_abe8_61c8648d939b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Videos: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x18989b1d_99b5_455b_841c_ab7c74e4ddfc);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_VideosLibrary: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x491e922f_5643_4af4_a7eb_4e7a138d8174);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERID_Windows: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf38bf404_1d43_42f2_9305_67de0b28fc23);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_AccountPictures: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdb2a5d8f_06e6_4007_aba6_af877d526ea6);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_Communications: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x91475fe5_586b_4eba_8d75_d17434b8cdf6);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_CompressedFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x80213e82_bcfd_4c4f_8817_bb27601267a9);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_Contacts: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xde2b70ec_9bf7_4a93_bd3d_243f7881d492);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_ControlPanelCategory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xde4f0660_fa10_4b8f_a494_068b20b22307);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_ControlPanelClassic: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0c3794f3_b545_43aa_a329_c37430c58d2a);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_Documents: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7d49d726_3c21_4f05_99aa_fdc2c9474656);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_Downloads: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x885a186e_a440_4ada_812b_db871b942259);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_Games: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb689b0d0_76d3_4cbb_87f7_585d0e0ce070);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_Generic: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5c4f28b5_f869_4e84_8e60_f11db97c5cc7);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_GenericLibrary: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5f4eab9a_6833_4f61_899d_31cf46979d49);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_GenericSearchResults: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7fde1a1e_8b31_49a5_93b8_6be14cfa4943);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_Invalid: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x57807898_8c4f_4462_bb63_71042380b109);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_Music: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x94d6ddcc_4a68_4175_a374_bd584a510b78);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_NetworkExplorer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x25cc242b_9a7c_4f51_80e0_7a2928febe42);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_OpenSearch: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8faf9629_1980_46ff_8023_9dceab9c3ee3);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_OtherUsers: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb337fd00_9dd5_4635_a6d4_da33fd102b7a);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_Pictures: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb3690e58_e961_423b_b687_386ebfd83239);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_Printers: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2c7bbec6_c844_4a0a_91fa_cef6f59cfda1);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_PublishedItems: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7f2f5b96_ff74_41da_afd8_1c78a5f3aea2);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_RecordedTV: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5557a28f_5da6_4f83_8809_c2c98a11a6fa);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_RecycleBin: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd6d9e004_cd87_442b_9d57_5e0aeb4f6f72);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_SavedGames: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd0363307_28cb_4106_9f23_2956e3e5e0e7);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_SearchConnector: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x982725ee_6f47_479e_b447_812bfa7d2e8f);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_SearchHome: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x834d8a44_0974_4ed6_866e_f203d80b3810);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_Searches: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0b0ba2e3_405f_415e_a6ee_cad625207853);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_SoftwareExplorer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd674391b_52d9_4e07_834e_67c98610f39d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_StartMenu: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xef87b4cb_f2ce_4785_8658_4ca6c63e38c6);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_StorageProviderDocuments: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdd61bd66_70e8_48dd_9655_65c5e1aac2d1);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_StorageProviderGeneric: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4f01ebc5_2385_41f2_a28e_2c5c91fb56e0);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_StorageProviderMusic: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x672ecd7e_af04_4399_875c_0290845b6247);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_StorageProviderPictures: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x71d642a9_f2b1_42cd_ad92_eb9300c7cc0a);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_StorageProviderVideos: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x51294da1_d7b1_485b_9e9a_17cffe33e187);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_UserFiles: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcd0fc69b_71e2_46e5_9690_5bcd9f57aab3);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_UsersLibraries: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc4d98f09_6124_4fe0_9942_826416082da9);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOLDERTYPEID_Videos: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5fa96407_7e77_483c_ac93_691d05850de8);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FO_COPY: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FO_DELETE: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FO_MOVE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FO_RENAME: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FSCopyHandler: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd197380a_0a79_4dc8_a033_ed882c2fa14b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVSIF_CANVIEWIT: u32 = 1073741824u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVSIF_NEWFAILED: u32 = 134217728u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVSIF_NEWFILE: u32 = 2147483648u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVSIF_PINNED: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVSIF_RECT: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FileOpenDialog: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdc1c5a9c_e88a_4dde_a5a1_60f82a20aef7);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FileOperation: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3ad05575_8857_4850_9277_11b85bdb8e09);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FileSaveDialog: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc0b4e2f3_ba21_4773_8dba_335ec946eb8b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FileSearchBand: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc4ee31f3_4768_11d2_be5c_00a0c9a83da1);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FolderViewHost: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x20b1cb23_6968_4eb9_b7d4_a66d00d07cee);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FrameworkInputPane: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd5120aa3_46ba_44c5_822d_ca8092c1fc72);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FreeSpaceCategorizer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb5607793_24ac_44c7_82e2_831726aa6cb7);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GADOF_DIRTY: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GCS_HELPTEXT: u32 = 5u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GCS_HELPTEXTA: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GCS_HELPTEXTW: u32 = 5u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GCS_UNICODE: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GCS_VALIDATE: u32 = 6u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GCS_VALIDATEA: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GCS_VALIDATEW: u32 = 6u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GCS_VERB: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GCS_VERBA: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GCS_VERBICONW: u32 = 20u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GCS_VERBW: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GCT_INVALID: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GCT_LFNCHAR: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GCT_SEPARATOR: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GCT_SHORTCHAR: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GCT_WILD: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GETPROPS_NONE: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GIL_ASYNC: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GIL_CHECKSHIELD: u32 = 512u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GIL_DEFAULTICON: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GIL_DONTCACHE: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GIL_FORCENOSHIELD: u32 = 1024u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GIL_FORSHELL: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GIL_FORSHORTCUT: u32 = 128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GIL_NOTFILENAME: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GIL_OPENICON: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GIL_PERCLASS: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GIL_PERINSTANCE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GIL_SHIELD: u32 = 512u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GIL_SIMULATEDOC: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GenericCredentialProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x25cbb996_92ed_457e_b28c_4774084bd562);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLINK_E_FIRST: ::windows::core::HRESULT = ::windows::core::HRESULT(-2147221248i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLINK_S_DONTHIDE: i32 = 262400i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLINK_S_FIRST: ::windows::core::HRESULT = ::windows::core::HRESULT(262400i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLNF_ALLOW_AUTONAVIGATE: u32 = 536870912u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLNF_CALLERUNTRUSTED: u32 = 2097152u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLNF_DISABLEWINDOWRESTRICTIONS: u32 = 8388608u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLNF_EXTERNALNAVIGATE: u32 = 268435456u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLNF_NEWWINDOWSMANAGED: u32 = 2147483648u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLNF_TRUSTEDFORACTIVEX: u32 = 4194304u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLNF_TRUSTFIRSTDOWNLOAD: u32 = 16777216u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLNF_UNTRUSTEDFORDOWNLOAD: u32 = 33554432u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HOMEGROUP_SECURITY_GROUP: ::windows::core::PCWSTR = ::windows::w!("HomeUsers");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HOMEGROUP_SECURITY_GROUP_MULTI: ::windows::core::PCWSTR = ::windows::w!("HUG");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HideInputPaneAnimationCoordinator: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x384742b1_2a77_4cb3_8cf8_1136f5e17e59);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HomeGroup: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xde77ba04_3c92_4d11_a1a5_42352a53e0e3);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IDC_OFFLINE_HAND: u32 = 103u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IDC_PANTOOL_HAND_CLOSED: u32 = 105u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IDC_PANTOOL_HAND_OPEN: u32 = 104u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IDD_WIZEXTN_FIRST: u32 = 20480u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IDD_WIZEXTN_LAST: u32 = 20736u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IDO_SHGIOI_DEFAULT: u64 = 4294967292u64;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IDO_SHGIOI_LINK: u32 = 268435454u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IDO_SHGIOI_SHARE: u32 = 268435455u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IDO_SHGIOI_SLOWFILE: u64 = 4294967293u64;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IDS_DESCRIPTION: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ID_APP: u32 = 100u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IEIFLAG_ASPECT: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IEIFLAG_ASYNC: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IEIFLAG_CACHE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IEIFLAG_GLEAM: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IEIFLAG_NOBORDER: u32 = 256u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IEIFLAG_NOSTAMP: u32 = 128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IEIFLAG_OFFLINE: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IEIFLAG_ORIGSIZE: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IEIFLAG_QUALITY: u32 = 512u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IEIFLAG_REFRESH: u32 = 1024u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IEIFLAG_SCREEN: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IEIT_PRIORITY_NORMAL: u32 = 268435456u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IEI_PRIORITY_MAX: u32 = 2147483647u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IEI_PRIORITY_MIN: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IENamespaceTreeControl: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xace52d03_e5cd_4b20_82ff_e71b11beae1d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ILMM_IE4: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IMM_ACC_DOCKING_E_DOCKOCCUPIED: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927183i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IMM_ACC_DOCKING_E_INSUFFICIENTHEIGHT: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927184i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IMSC_E_SHELL_COMPONENT_STARTUP_FAILURE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927181i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const INTERNET_MAX_PATH_LENGTH: u32 = 2048u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const INTERNET_MAX_SCHEME_LENGTH: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IRTIR_TASK_FINISHED: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IRTIR_TASK_NOT_RUNNING: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IRTIR_TASK_PENDING: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IRTIR_TASK_RUNNING: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IRTIR_TASK_SUSPENDED: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISFBVIEWMODE_LARGEICONS: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISFBVIEWMODE_LOGOS: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISFBVIEWMODE_SMALLICONS: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISFB_MASK_BKCOLOR: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISFB_MASK_COLORS: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISFB_MASK_IDLIST: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISFB_MASK_SHELLFOLDER: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISFB_MASK_STATE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISFB_MASK_VIEWMODE: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISFB_STATE_ALLOWRENAME: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISFB_STATE_BTNMINSIZE: u32 = 256u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISFB_STATE_CHANNELBAR: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISFB_STATE_DEBOSSED: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISFB_STATE_DEFAULT: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISFB_STATE_FULLOPEN: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISFB_STATE_NONAMESORT: u32 = 128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISFB_STATE_NOSHOWTEXT: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISFB_STATE_QLINKSMODE: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISHCUTCMDID_COMMITHISTORY: i32 = 2i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISHCUTCMDID_DOWNLOADICON: i32 = 0i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISHCUTCMDID_INTSHORTCUTCREATE: i32 = 1i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISHCUTCMDID_SETUSERAWURL: i32 = 3i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISIOI_ICONFILE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ISIOI_ICONINDEX: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IS_E_EXEC_FAILED: ::windows::core::HRESULT = ::windows::core::HRESULT(-2147213310i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IS_FULLSCREEN: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IS_NORMAL: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IS_SPLIT: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ITSAT_DEFAULT_PRIORITY: u32 = 268435456u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ITSAT_MAX_PRIORITY: u32 = 2147483647u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ITSAT_MIN_PRIORITY: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ITSSFLAG_COMPLETE_ON_DESTROY: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ITSSFLAG_FLAGS_MASK: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ITSSFLAG_KILL_ON_DESTROY: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const Identity_LocalUserProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa198529b_730f_4089_b646_a12557f5665e);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ImageProperties: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7ab770c7_0e23_4d7a_8aa2_19bfad479829);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ImageRecompress: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6e33091c_d2f8_4740_b55e_2e11d1477a2c);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ImageTranscode: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x17b75166_928f_417d_9685_64aa135565c1);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const InputPanelConfiguration: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2853add3_f096_4c63_a78f_7fa3ea837fb7);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const InternetExplorer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0002df01_0000_0000_c000_000000000046);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const InternetExplorerMedium: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd5e8041d_920f_45e9_b8fb_b1deb82c6e5e);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const InternetPrintOrdering: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xadd36aa8_751a_4579_a266_d66f5202ccbb);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ItemCount_Property_GUID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xabbf5c45_5ccc_47b7_bb4e_87cb87bbd162);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ItemIndex_Property_GUID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x92a053da_2969_4021_bf27_514cfc2e4a69);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KnownFolderManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4df0c730_df9d_4ae3_9153_aa6b82e9795a);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const LIBRARY_E_NO_ACCESSIBLE_LOCATION: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927231i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const LIBRARY_E_NO_SAVE_LOCATION: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927232i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const LINK_E_DELETE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927485i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const LocalThumbnailCache: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x50ef4544_ac9f_4a8e_b21b_8a26180db13f);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MAXFILELEN: u32 = 13u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MAX_COLUMN_DESC_LEN: u32 = 128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MAX_COLUMN_NAME_LEN: u32 = 80u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MAX_SYNCMGRHANDLERNAME: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MAX_SYNCMGRITEMNAME: u32 = 128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MAX_SYNCMGR_ID: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MAX_SYNCMGR_NAME: u32 = 128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MAX_SYNCMGR_PROGRESSTEXT: u32 = 260u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MailRecipient: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9e56be60_c50f_11cf_9a2c_00a0c90a90ce);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MergedCategorizer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8e827c11_33e7_4bc1_b242_8cd9a1c2b304);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NCM_DISPLAYERRORTIP: u32 = 1028u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NCM_GETADDRESS: u32 = 1025u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NCM_GETALLOWTYPE: u32 = 1027u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NCM_SETALLOWTYPE: u32 = 1026u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NETCACHE_E_NEGATIVE_CACHE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927488i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NINF_KEY: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIN_BALLOONHIDE: u32 = 1027u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIN_BALLOONSHOW: u32 = 1026u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIN_BALLOONTIMEOUT: u32 = 1028u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIN_BALLOONUSERCLICK: u32 = 1029u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIN_POPUPCLOSE: u32 = 1031u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIN_POPUPOPEN: u32 = 1030u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIN_SELECT: u32 = 1024u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NOTIFYICON_VERSION: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NOTIFYICON_VERSION_4: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NPCredentialProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3dd6bec0_8193_4ffe_ae25_e08e39ea4063);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCDHPOS_ONTOP: i32 = -1i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NT_CONSOLE_PROPS_SIG: u32 = 2684354562u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NT_FE_CONSOLE_PROPS_SIG: u32 = 2684354564u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NUM_POINTS: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NamespaceTreeControl: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xae054212_3535_4430_83ed_d501aa6680e6);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NamespaceWalker: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x72eb61e0_8672_4303_9175_f2e4c68b2e7c);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NetworkConnections: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7007acc7_3202_11d1_aad2_00805fc1270e);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NetworkExplorerFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf02c1a0d_be21_4350_88b0_7367fc96ef3c);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NetworkPlaces: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x208d2c60_3aea_1069_a2d7_08002b30309d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OFASI_EDIT: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OFASI_OPENDESKTOP: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OFFLINE_STATUS_INCOMPLETE: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OFFLINE_STATUS_LOCAL: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OFFLINE_STATUS_REMOTE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OF_CAP_CANCLOSE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OF_CAP_CANSWITCHTO: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OI_ASYNC: u32 = 4294962926u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OI_DEFAULT: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OPENPROPS_INHIBITPIF: u32 = 32768u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OPENPROPS_NONE: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OnexCredentialProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x07aa0886_cc8d_4e19_a410_1c75af686e62);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OnexPlapSmartcardCredentialProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x33c86cd6_705f_4ba1_9adb_67070b837775);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OpenControlPanel: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x06622d85_6856_4460_8de1_a81921b41c4b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PANE_NAVIGATION: u32 = 5u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PANE_NONE: u32 = 4294967295u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PANE_OFFLINE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PANE_PRINTER: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PANE_PRIVACY: u32 = 7u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PANE_PROGRESS: u32 = 6u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PANE_SSL: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PANE_ZONE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PATHCCH_MAX_CCH: u32 = 32768u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PDTIMER_PAUSE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PDTIMER_RESET: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PDTIMER_RESUME: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDASI_AVG_DATA_RATE: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDASI_CHANNEL_COUNT: u32 = 7u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDASI_COMPRESSION: u32 = 10u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDASI_FORMAT: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDASI_SAMPLE_RATE: u32 = 5u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDASI_SAMPLE_SIZE: u32 = 6u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDASI_STREAM_NAME: u32 = 9u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDASI_STREAM_NUMBER: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDASI_TIMELENGTH: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDDRSI_DESCRIPTION: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDDRSI_PLAYCOUNT: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDDRSI_PLAYEXPIRES: u32 = 6u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDDRSI_PLAYSTARTS: u32 = 5u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDDRSI_PROTECTED: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDSI_ALBUM: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDSI_ARTIST: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDSI_COMMENT: u32 = 6u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDSI_GENRE: u32 = 11u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDSI_LYRICS: u32 = 12u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDSI_SONGTITLE: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDSI_TRACK: u32 = 7u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDSI_YEAR: u32 = 5u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDVSI_COMPRESSION: u32 = 10u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDVSI_DATA_RATE: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDVSI_FRAME_COUNT: u32 = 5u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDVSI_FRAME_HEIGHT: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDVSI_FRAME_RATE: u32 = 6u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDVSI_FRAME_WIDTH: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDVSI_SAMPLE_SIZE: u32 = 9u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDVSI_STREAM_NAME: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDVSI_STREAM_NUMBER: u32 = 11u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDVSI_TIMELENGTH: u32 = 7u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_COMPUTERNAME: u32 = 5u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_CONTROLPANEL_CATEGORY: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_DESCRIPTIONID: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_DISPLACED_DATE: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_DISPLACED_FROM: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_DISPLAY_PROPERTIES: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_FINDDATA: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_HTMLINFOTIPFILE: u32 = 5u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTROTEXT: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_LINK_TARGET: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_LINK_TARGET_TYPE: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_MISC_ACCESSCOUNT: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_MISC_OWNER: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_MISC_PICS: u32 = 6u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_MISC_STATUS: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_NETRESOURCE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_NETWORKLOCATION: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_QUERY_RANK: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_SHARE_CSC_STATUS: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_SYNC_COPY_IN: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_VOLUME_CAPACITY: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_VOLUME_FILESYSTEM: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_VOLUME_FREE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_WHICHFOLDER: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIFDEFFILESIZE: u32 = 80u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIFDEFPATHSIZE: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIFMAXFILEPATH: u32 = 260u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIFNAMESIZE: u32 = 30u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIFPARAMSSIZE: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIFSHDATASIZE: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIFSHPROGSIZE: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIFSTARTLOCSIZE: u32 = 63u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PINLogonCredentialProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcb82ea12_9f71_446d_89e1_8d0924e1256e);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PLATFORM_BROWSERONLY: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PLATFORM_IE3: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PLATFORM_INTEGRATED: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PLATFORM_UNKNOWN: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PMSF_DONT_STRIP_SPACES: u32 = 65536u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PMSF_MULTIPLE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PMSF_NORMAL: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PO_DELETE: u32 = 19u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PO_PORTCHANGE: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PO_RENAME: u32 = 20u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PO_REN_PORT: u32 = 52u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PPCF_ADDARGUMENTS: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PPCF_ADDQUOTES: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PPCF_FORCEQUALIFY: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PPCF_LONGESTPOSSIBLE: u32 = 128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PPCF_NODIRECTORIES: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PRINTACTION_DOCUMENTDEFAULTS: u32 = 6u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PRINTACTION_NETINSTALL: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PRINTACTION_NETINSTALLLINK: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PRINTACTION_OPEN: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PRINTACTION_OPENNETPRN: u32 = 5u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PRINTACTION_PROPERTIES: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PRINTACTION_SERVERPROPERTIES: u32 = 7u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PRINTACTION_TESTPAGE: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PRINT_PROP_FORCE_NAME: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PROGDLG_AUTOTIME: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PROGDLG_MARQUEEPROGRESS: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PROGDLG_MODAL: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PROGDLG_NOCANCEL: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PROGDLG_NOMINIMIZE: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PROGDLG_NOPROGRESSBAR: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PROGDLG_NORMAL: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PROGDLG_NOTIME: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PROPSTR_EXTENSIONCOMPLETIONSTATE: ::windows::core::PCWSTR = ::windows::w!("ExtensionCompletionState");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PROP_CONTRACT_DELEGATE: ::windows::core::PCWSTR = ::windows::w!("ContractDelegate");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PackageDebugSettings: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb1aec16f_2383_4852_b0e9_8f0b1dc66b4d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PasswordCredentialProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x60b78e88_ead8_445c_9cfd_0b87f74ea6cd);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PreviousVersions: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x596ab062_b4d2_4215_9f74_e9109b0a8153);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PropertiesUI: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd912f8cf_0396_4915_884e_fb425d32943b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PublishDropTarget: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcc6eeffb_43f6_46c5_9619_51d571967f7d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PublishingWizard: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6b33163c_76a5_4b6c_bf21_45de9cd503a1);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const QCMINFO_PLACE_AFTER: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const QCMINFO_PLACE_BEFORE: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const QueryCancelAutoPlay: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x331f1768_05a9_4ddd_b86e_dae34ddc998a);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const RASProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5537e283_b1e7_4ef8_9c6e_7ab0afe5056d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_ABSOLUTE: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_ACTIVATE_NOFOCUS: u32 = 524288u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_ALLOW_AUTONAVIGATE: u32 = 65536u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_CALLERUNTRUSTED: u32 = 8388608u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_CREATENOHISTORY: u32 = 1048576u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_DEFBROWSER: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_DEFMODE: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_EXPLOREMODE: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_FEEDNAVIGATION: u32 = 536870912u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_HELPMODE: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_INITIATEDBYHLINKFRAME: u32 = 2147483648u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_KEEPSAMETEMPLATE: u32 = 131072u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_KEEPWORDWHEELTEXT: u32 = 262144u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_NAVIGATEBACK: u32 = 16384u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_NAVIGATEFORWARD: u32 = 32768u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_NEWBROWSER: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_NOAUTOSELECT: u32 = 67108864u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_NOTRANSFERHIST: u32 = 128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_OPENMODE: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_PARENT: u32 = 8192u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_PLAYNOSOUND: u32 = 2097152u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_REDIRECT: u32 = 1073741824u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_RELATIVE: u32 = 4096u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_SAMEBROWSER: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_TRUSTEDFORACTIVEX: u32 = 268435456u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_TRUSTFIRSTDOWNLOAD: u32 = 16777216u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_UNTRUSTEDFORDOWNLOAD: u32 = 33554432u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSP_WRITENOHISTORY: u32 = 134217728u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SCHEME_CREATE: u32 = 128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SCHEME_DISPLAY: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SCHEME_DONOTUSE: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SCHEME_EDIT: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SCHEME_GLOBAL: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SCHEME_LOCAL: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SCHEME_REFRESH: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SCHEME_UPDATE: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SCRM_VERIFYPW: u32 = 32768u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_ASYNCOK: u32 = 1048576u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_CLASSKEY: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_CLASSNAME: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_CONNECTNETDRV: u32 = 128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_DEFAULT: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_DOENVSUBST: u32 = 512u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_FLAG_DDEWAIT: u32 = 256u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_FLAG_HINST_IS_SITE: u32 = 134217728u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_FLAG_LOG_USAGE: u32 = 67108864u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_FLAG_NO_UI: u32 = 1024u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_HMONITOR: u32 = 2097152u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_HOTKEY: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_ICON: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_IDLIST: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_INVOKEIDLIST: u32 = 12u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_NOASYNC: u32 = 256u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_NOCLOSEPROCESS: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_NOQUERYCLASSSTORE: u32 = 16777216u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_NOZONECHECKS: u32 = 8388608u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_NO_CONSOLE: u32 = 32768u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_UNICODE: u32 = 16384u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SEE_MASK_WAITFORINPUTIDLE: u32 = 33554432u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SETPROPS_NONE: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SE_ERR_ACCESSDENIED: u32 = 5u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SE_ERR_ASSOCINCOMPLETE: u32 = 27u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SE_ERR_DDEBUSY: u32 = 30u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SE_ERR_DDEFAIL: u32 = 29u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SE_ERR_DDETIMEOUT: u32 = 28u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SE_ERR_DLLNOTFOUND: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SE_ERR_FNF: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SE_ERR_NOASSOC: u32 = 31u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SE_ERR_OOM: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SE_ERR_PNF: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SE_ERR_SHARE: u32 = 26u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFBID_PIDLCHANGED: i32 = 0i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_ADDOBJECT: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_GETSELECTEDOBJECTS: u32 = 9u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_REARRANGE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_REMOVEOBJECT: u32 = 6u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_SETCLIPBOARD: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_SETITEMPOS: u32 = 14u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_SETPOINTS: u32 = 23u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_UPDATEOBJECT: u32 = 7u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVSOC_INVALIDATE_ALL: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVSOC_NOSCROLL: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCDF_UPDATEITEM: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCIDS_ALLFIELDS: i32 = -2147483648i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCIDS_BITMASK: i32 = -65536i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCIDS_CANONICALONLY: i32 = 268435456i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCIDS_COLUMNMASK: i32 = 65535i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNEE_MSI_CHANGE: i32 = 4i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNEE_MSI_UNINSTALL: i32 = 5i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNEE_ORDERCHANGED: i32 = 2i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHC_E_SHELL_COMPONENT_STARTUP_FAILURE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927180i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHELLSTATEVERSION_IE4: u32 = 9u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHELLSTATEVERSION_WIN2K: u32 = 10u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHELL_E_WRONG_BITDEPTH: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927486i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHERB_NOCONFIRMATION: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHERB_NOPROGRESSUI: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHERB_NOSOUND: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGNLI_NOLNK: u64 = 8u64;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGNLI_NOLOCNAME: u64 = 16u64;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGNLI_NOUNIQUE: u64 = 4u64;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGNLI_PIDL: u64 = 1u64;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGNLI_PREFIXNAME: u64 = 2u64;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGNLI_USEURLEXT: u64 = 32u64;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGVSPB_ALLFOLDERS: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGVSPB_ALLUSERS: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGVSPB_INHERIT: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGVSPB_NOAUTODEFAULTS: u32 = 2147483648u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGVSPB_PERFOLDER: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGVSPB_PERUSER: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGVSPB_ROAM: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHHLNF_NOAUTOSELECT: u32 = 67108864u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHHLNF_WRITENOHISTORY: u32 = 134217728u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHIL_EXTRALARGE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHIL_JUMBO: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHIL_LARGE: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHIL_LAST: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHIL_SMALL: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHIL_SYSSMALL: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHIMGDEC_DEFAULT: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHIMGDEC_LOADFULL: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHIMGDEC_THUMBNAIL: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHIMGKEY_QUALITY: ::windows::core::PCWSTR = ::windows::w!("Compression");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHIMGKEY_RAWFORMAT: ::windows::core::PCWSTR = ::windows::w!("RawDataFormat");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHIMSTCAPFLAG_LOCKABLE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHIMSTCAPFLAG_PURGEABLE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHPPFW_ASKDIRCREATE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHPPFW_DIRCREATE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHPPFW_IGNOREFILENAME: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHPPFW_MEDIACHECKONLY: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHPPFW_NONE: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHPPFW_NOWRITECHECK: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHPWHF_ANYLOCATION: u32 = 256u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHPWHF_NOFILESELECTOR: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHPWHF_NONETPLACECREATE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHPWHF_NORECOMPRESS: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHPWHF_USEMRU: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHPWHF_VALIDATEVIAWEBFOLDERS: u32 = 65536u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHREGSET_FORCE_HKCU: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHREGSET_FORCE_HKLM: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHREGSET_HKCU: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHREGSET_HKLM: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_CommandsPropertyBag: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6e043250_4416_485c_b143_e62a760d9fe5);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_CtxQueryAssociations: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfaadfc40_b777_4b69_aa81_77035ef0e6e8);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_DefView: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6d12fe80_7911_11cf_9534_0000c05bae0b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_LaunchSourceAppUserModelId: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2ce78010_74db_48bc_9c6a_10f372495723);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_LaunchSourceViewSizePreference: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x80605492_67d9_414f_af89_a1cdf1242bc1);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_LaunchTargetViewSizePreference: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x26db2472_b7b7_406b_9702_730a4e20d3bf);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_MenuShellFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa6c17eb4_2d65_11d2_838f_00c04fd918d0);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_SCommDlgBrowser: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x80f30233_b7df_11d2_a33b_006097df5bd4);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_SCommandBarState: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb99eaa5c_3850_4400_bc33_2ce534048bf8);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_SGetViewFromViewDual: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x889a935d_971e_4b12_b90c_24dfc9e1e5e8);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_SInPlaceBrowser: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1d2ae02b_3655_46cc_b63a_285988153bca);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_SMenuBandBKContextMenu: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x164bbd86_1d0d_4de0_9a3b_d9729647c2b8);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_SMenuBandBottom: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x743ca664_0deb_11d1_9825_00c04fd91972);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_SMenuBandBottomSelected: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x165ebaf4_6d51_11d2_83ad_00c04fd918d0);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_SMenuBandChild: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xed9cc020_08b9_11d1_9823_00c04fd91972);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_SMenuBandContextMenuModifier: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x39545874_7162_465e_b783_2aa1874fef81);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_SMenuBandParent: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8c278eec_3eab_11d1_8cb0_00c04fd918d0);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_SMenuBandTop: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9493a810_ec38_11d0_bc46_00aa006ce2f5);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_SMenuPopup: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd1e7afeb_6a2e_11d0_8c78_00c04fd918b4);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_SSearchBoxInfo: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x142daa61_516b_4713_b49c_fb985ef82998);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_STopLevelBrowser: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4c96be40_915c_11cf_99d3_00aa004ae837);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_STopWindow: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x49e1b500_4636_11d3_97f7_00c04f45d0b3);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_ShellExecuteNamedPropertyStore: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xeb84ada2_00ff_4992_8324_ed5ce061cb29);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SID_URLExecutionContext: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfb5f8ebc_bbb6_4d10_a461_777291a09030);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIOM_ICONINDEX: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIOM_OVERLAYINDEX: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIOM_RESERVED_DEFAULT: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIOM_RESERVED_LINK: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIOM_RESERVED_SHARED: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIOM_RESERVED_SLOWFILE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMAE_CONTRACTED: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMAE_EXPANDED: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMAE_USER: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMAE_VALID: u32 = 7u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_AUTOEXPANDCHANGE: u32 = 66u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_CHEVRONEXPAND: u32 = 25u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_CHEVRONGETTIP: u32 = 47u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_CREATE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_DEFAULTICON: u32 = 22u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_DEMOTE: u32 = 17u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_DISPLAYCHEVRONTIP: u32 = 42u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_EXITMENU: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_GETAUTOEXPANDSTATE: u32 = 65u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_GETBKCONTEXTMENU: u32 = 68u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_GETCONTEXTMENUMODIFIER: u32 = 67u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_GETINFO: u32 = 5u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_GETOBJECT: u32 = 7u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_GETSFINFO: u32 = 6u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_GETSFOBJECT: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_INITMENU: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_NEWITEM: u32 = 23u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_OPEN: u32 = 69u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_PROMOTE: u32 = 18u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_REFRESH: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_SETSFOBJECT: u32 = 45u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_SFDDRESTRICTED: u32 = 48u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_SFEXEC: u32 = 9u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_SFEXEC_MIDDLE: u32 = 49u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_SFSELECTITEM: u32 = 10u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMC_SHCHANGENOTIFY: u32 = 46u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMDM_HMENU: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMDM_SHELLFOLDER: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMDM_TOOLBAR: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMINIT_AUTOEXPAND: u32 = 256u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMINIT_AUTOTOOLTIP: u32 = 512u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMINIT_CACHED: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMINIT_DEFAULT: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMINIT_DROPONCONTAINER: u32 = 1024u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMINIT_HORIZONTAL: u32 = 536870912u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMINIT_RESTRICT_DRAGDROP: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMINIT_TOPLEVEL: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMINIT_VERTICAL: u32 = 268435456u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMINV_ID: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMINV_REFRESH: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMSET_BOTTOM: u32 = 536870912u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMSET_DONTOWN: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMSET_TOP: u32 = 268435456u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPMODE_BROWSER: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPMODE_DBMON: u32 = 8192u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPMODE_DEBUGBREAK: u32 = 512u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPMODE_DEBUGOUT: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPMODE_EVENT: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPMODE_EVENTTRACE: u32 = 32768u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPMODE_FLUSH: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPMODE_FORMATTEXT: u32 = 128u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPMODE_MEMWATCH: u32 = 4096u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPMODE_MSGTRACE: u32 = 1024u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPMODE_MSVM: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPMODE_MULTISTOP: u32 = 16384u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPMODE_PERFTAGS: u32 = 2048u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPMODE_PROFILE: u32 = 256u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPMODE_SHELL: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPMODE_TEST: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SRRF_NOEXPAND: u32 = 268435456u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SRRF_NOVIRT: u32 = 1073741824u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SRRF_RM_ANY: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SRRF_RM_NORMAL: u32 = 65536u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SRRF_RM_SAFE: u32 = 131072u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SRRF_RM_SAFENETWORK: u32 = 262144u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SRRF_RT_ANY: u32 = 65535u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SRRF_RT_REG_BINARY: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SRRF_RT_REG_DWORD: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SRRF_RT_REG_EXPAND_SZ: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SRRF_RT_REG_MULTI_SZ: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SRRF_RT_REG_NONE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SRRF_RT_REG_QWORD: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SRRF_RT_REG_SZ: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SRRF_ZEROONFAILURE: u32 = 536870912u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSM_CLEAR: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSM_REFRESH: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSM_SET: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSM_UPDATE: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STIF_DEFAULT: i32 = 0i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STIF_SUPPORT_HEX: i32 = 1i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STORE_E_NEWER_VERSION_AVAILABLE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927484i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_AVOID_DRIVE_RESTRICTION_POLICY: ::windows::core::PCWSTR = ::windows::w!("Avoid Drive Restriction Policy");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_BIND_DELEGATE_CREATE_OBJECT: ::windows::core::PCWSTR = ::windows::w!("Delegate Object Creation");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_BIND_FOLDERS_READ_ONLY: ::windows::core::PCWSTR = ::windows::w!("Folders As Read Only");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_BIND_FOLDER_ENUM_MODE: ::windows::core::PCWSTR = ::windows::w!("Folder Enum Mode");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_BIND_FORCE_FOLDER_SHORTCUT_RESOLVE: ::windows::core::PCWSTR = ::windows::w!("Force Folder Shortcut Resolve");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_DONT_PARSE_RELATIVE: ::windows::core::PCWSTR = ::windows::w!("Don\'t Parse Relative");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_DONT_RESOLVE_LINK: ::windows::core::PCWSTR = ::windows::w!("Don\'t Resolve Link");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_ENUM_ITEMS_FLAGS: ::windows::core::PCWSTR = ::windows::w!("SHCONTF");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_FILE_SYS_BIND_DATA: ::windows::core::PCWSTR = ::windows::w!("File System Bind Data");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_FILE_SYS_BIND_DATA_WIN7_FORMAT: ::windows::core::PCWSTR = ::windows::w!("Win7FileSystemIdList");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_GET_ASYNC_HANDLER: ::windows::core::PCWSTR = ::windows::w!("GetAsyncHandler");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_GPS_BESTEFFORT: ::windows::core::PCWSTR = ::windows::w!("GPS_BESTEFFORT");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_GPS_DELAYCREATION: ::windows::core::PCWSTR = ::windows::w!("GPS_DELAYCREATION");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_GPS_FASTPROPERTIESONLY: ::windows::core::PCWSTR = ::windows::w!("GPS_FASTPROPERTIESONLY");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_GPS_HANDLERPROPERTIESONLY: ::windows::core::PCWSTR = ::windows::w!("GPS_HANDLERPROPERTIESONLY");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_GPS_NO_OPLOCK: ::windows::core::PCWSTR = ::windows::w!("GPS_NO_OPLOCK");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_GPS_OPENSLOWITEM: ::windows::core::PCWSTR = ::windows::w!("GPS_OPENSLOWITEM");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_INTERNAL_NAVIGATE: ::windows::core::PCWSTR = ::windows::w!("Internal Navigation");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_INTERNETFOLDER_PARSE_ONLY_URLMON_BINDABLE: ::windows::core::PCWSTR = ::windows::w!("Validate URL");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_ITEM_CACHE_CONTEXT: ::windows::core::PCWSTR = ::windows::w!("ItemCacheContext");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_MYDOCS_CLSID: ::windows::core::PCSTR = ::windows::s!("{450D8FBA-AD25-11D0-98A8-0800361B1103}");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_NO_VALIDATE_FILENAME_CHARS: ::windows::core::PCWSTR = ::windows::w!("NoValidateFilenameChars");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_PARSE_ALLOW_INTERNET_SHELL_FOLDERS: ::windows::core::PCWSTR = ::windows::w!("Allow binding to Internet shell folder handlers and negate STR_PARSE_PREFER_WEB_BROWSING");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_PARSE_AND_CREATE_ITEM: ::windows::core::PCWSTR = ::windows::w!("ParseAndCreateItem");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_PARSE_DONT_REQUIRE_VALIDATED_URLS: ::windows::core::PCWSTR = ::windows::w!("Do not require validated URLs");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_PARSE_EXPLICIT_ASSOCIATION_SUCCESSFUL: ::windows::core::PCWSTR = ::windows::w!("ExplicitAssociationSuccessful");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_PARSE_PARTIAL_IDLIST: ::windows::core::PCWSTR = ::windows::w!("ParseOriginalItem");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_PARSE_PREFER_FOLDER_BROWSING: ::windows::core::PCWSTR = ::windows::w!("Parse Prefer Folder Browsing");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_PARSE_PREFER_WEB_BROWSING: ::windows::core::PCWSTR = ::windows::w!("Do not bind to Internet shell folder handlers");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_PARSE_PROPERTYSTORE: ::windows::core::PCWSTR = ::windows::w!("DelegateNamedProperties");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_PARSE_SHELL_PROTOCOL_TO_FILE_OBJECTS: ::windows::core::PCWSTR = ::windows::w!("Parse Shell Protocol To File Objects");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_PARSE_SHOW_NET_DIAGNOSTICS_UI: ::windows::core::PCWSTR = ::windows::w!("Show network diagnostics UI");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_PARSE_SKIP_NET_CACHE: ::windows::core::PCWSTR = ::windows::w!("Skip Net Resource Cache");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_PARSE_TRANSLATE_ALIASES: ::windows::core::PCWSTR = ::windows::w!("Parse Translate Aliases");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_PARSE_WITH_EXPLICIT_ASSOCAPP: ::windows::core::PCWSTR = ::windows::w!("ExplicitAssociationApp");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_PARSE_WITH_EXPLICIT_PROGID: ::windows::core::PCWSTR = ::windows::w!("ExplicitProgid");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_PARSE_WITH_PROPERTIES: ::windows::core::PCWSTR = ::windows::w!("ParseWithProperties");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_PROPERTYBAG_PARAM: ::windows::core::PCWSTR = ::windows::w!("SHBindCtxPropertyBag");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_REFERRER_IDENTIFIER: ::windows::core::PCWSTR = ::windows::w!("Referrer Identifier");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_SKIP_BINDING_CLSID: ::windows::core::PCWSTR = ::windows::w!("Skip Binding CLSID");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_STORAGEITEM_CREATION_FLAGS: ::windows::core::PCWSTR = ::windows::w!("SHGETSTORAGEITEM");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_TAB_REUSE_IDENTIFIER: ::windows::core::PCWSTR = ::windows::w!("Tab Reuse Identifier");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STR_TRACK_CLSID: ::windows::core::PCWSTR = ::windows::w!("Track the CLSID");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRHANDLERFLAG_MASK: u32 = 15u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRITEM_ITEMFLAGMASK: u32 = 127u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRLOGERROR_ERRORFLAGS: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRLOGERROR_ERRORID: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRLOGERROR_ITEMID: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRPROGRESSITEM_MAXVALUE: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRPROGRESSITEM_PROGVALUE: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRPROGRESSITEM_STATUSTEXT: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRPROGRESSITEM_STATUSTYPE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRREGISTERFLAGS_MASK: u32 = 7u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_OBJECTID_BrowseContent: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x57cbb584_e9b4_47ae_a120_c4df3335dee2);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_OBJECTID_ConflictStore: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd78181f4_2389_47e4_a960_60bcc2ed930b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_OBJECTID_EventLinkClick: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2203bdc1_1af1_4082_8c30_28399f41384c);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_OBJECTID_EventStore: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4bef34b9_a786_4075_ba88_0c2b9d89a98f);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_OBJECTID_Icon: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6dbc85c3_5d07_4c72_a777_7fec78072c06);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_OBJECTID_QueryBeforeActivate: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd882d80b_e7aa_49ed_86b7_e6e1f714cdfe);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_OBJECTID_QueryBeforeDeactivate: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa0efc282_60e0_460e_9374_ea88513cfc80);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_OBJECTID_QueryBeforeDelete: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf76c3397_afb3_45d7_a59f_5a49e905437e);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_OBJECTID_QueryBeforeDisable: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbb5f64aa_f004_4eb5_8e4d_26751966344c);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_OBJECTID_QueryBeforeEnable: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x04cbf7f0_5beb_4de1_bc90_908345c480f6);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_OBJECTID_ShowSchedule: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xedc6f3e3_8441_4109_adf3_6c1ca0b7de47);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SZ_CONTENTTYPE_CDF: ::windows::core::PCWSTR = ::windows::w!("application/x-cdf");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SZ_CONTENTTYPE_CDFA: ::windows::core::PCSTR = ::windows::s!("application/x-cdf");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SZ_CONTENTTYPE_CDFW: ::windows::core::PCWSTR = ::windows::w!("application/x-cdf");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SZ_CONTENTTYPE_HTML: ::windows::core::PCWSTR = ::windows::w!("text/html");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SZ_CONTENTTYPE_HTMLA: ::windows::core::PCSTR = ::windows::s!("text/html");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SZ_CONTENTTYPE_HTMLW: ::windows::core::PCWSTR = ::windows::w!("text/html");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const S_SYNCMGR_CANCELALL: ::windows::core::HRESULT = ::windows::core::HRESULT(262660i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const S_SYNCMGR_CANCELITEM: ::windows::core::HRESULT = ::windows::core::HRESULT(262659i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const S_SYNCMGR_ENUMITEMS: ::windows::core::HRESULT = ::windows::core::HRESULT(262673i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const S_SYNCMGR_ITEMDELETED: ::windows::core::HRESULT = ::windows::core::HRESULT(262672i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const S_SYNCMGR_MISSINGITEMS: ::windows::core::HRESULT = ::windows::core::HRESULT(262657i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const S_SYNCMGR_RETRYSYNC: ::windows::core::HRESULT = ::windows::core::HRESULT(262658i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ScheduledTasks: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd6277990_4c6a_11cf_8d87_00aa0060f5bf);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SearchFolderItemFactory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x14010e02_bbbd_41f0_88e3_eda371216584);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SelectedItemCount_Property_GUID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8fe316d2_0e52_460a_9c1e_48f273d470a3);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SharedBitmap: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4db26476_6787_4046_b836_e8412a9e8a27);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SharingConfigurationManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x49f371e1_8c5c_4d9c_9a3b_54a6827f513c);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const Shell: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x13709620_c279_11ce_a49e_444553540000);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ShellBrowserWindow: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc08afd90_f2a1_11d1_8455_00a0c91f3880);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ShellDesktop: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00021400_0000_0000_c000_000000000046);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ShellDispatchInproc: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0a89a860_d7b1_11ce_8350_444553540000);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ShellFSFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf3364ba0_65b9_11ce_a9ba_00aa004ae837);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ShellFolderItem: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2fe352ea_fd1f_11d2_b1f4_00c04f8eeb3e);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ShellFolderView: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x62112aa1_ebe4_11cf_a5fb_0020afe7292d);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ShellFolderViewOC: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9ba05971_f6a8_11cf_a442_00a0c90a8f39);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ShellImageDataFactory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x66e4e4fb_f385_4dd0_8d74_a2efd1bc6178);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ShellItem: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9ac9fbe1_e0a2_4ad6_b4ee_e212013ea917);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ShellLibrary: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd9b3211d_e57f_4426_aaef_30a806add397);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ShellLink: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00021401_0000_0000_c000_000000000046);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ShellLinkObject: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x11219420_1768_11d1_95be_00609797ea4f);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ShellNameSpace: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x55136805_b2de_11d1_b9f2_00a0c98bc547);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ShellUIHelper: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x64ab4bb7_111e_11d1_8f79_00c04fc2fbe1);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ShellWindows: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9ba05972_f6a8_11cf_a442_00a0c90a8f39);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ShowInputPaneAnimationCoordinator: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1f046abf_3202_4dc1_8cb5_3c67617ce1fa);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SimpleConflictPresenter: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7a0f6ab7_ed84_46b6_b47e_02aa159a152b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SizeCategorizer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x55d7b852_f6d1_42f2_aa75_8728a1b2d264);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SmartcardCredentialProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8fd7e19c_3bf7_489b_a72c_846ab3678c96);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SmartcardPinProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x94596c7e_3744_41ce_893e_bbf09122f76a);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SmartcardReaderSelectionProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1b283861_754f_4022_ad47_a5eaaa618894);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SmartcardWinRTProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1ee7337f_85ac_45e2_a23c_37c753209769);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const StartMenuPin: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa2a9545d_a0c2_42b4_9708_a0b2badd77c8);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const StorageProviderBanners: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7ccdf9f4_e576_455a_8bc7_f6ec68d6f063);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SuspensionDependencyManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6b273fc5_61fd_4918_95a2_c3b5e9d7f581);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SyncMgr: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6295df27_35ee_11d1_8707_00c04fd93327);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SyncMgrClient: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1202db60_1dac_42c5_aed5_1abdd432248e);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SyncMgrControl: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1a1f4206_0688_4e7f_be03_d82ec69df9a5);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SyncMgrFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9c73f5e5_7ae7_4e32_a8e8_8d23b85255bf);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SyncMgrScheduleWizard: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8d8b8e30_c451_421b_8553_d2976afa648c);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SyncResultsFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x71d99464_3b6b_475c_b241_e15883207529);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SyncSetupFolder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2e9e59c0_b437_4981_a647_9c34b9b90891);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TBIF_APPEND: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TBIF_DEFAULT: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TBIF_INTERNETBAR: u32 = 65536u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TBIF_NOTOOLBAR: u32 = 196608u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TBIF_PREPEND: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TBIF_REPLACE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TBIF_STANDARDTOOLBAR: u32 = 131072u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const THBN_CLICKED: u32 = 6144u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TITLEBARNAMELEN: u32 = 40u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TLMENUF_BACK: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TLMENUF_FORE: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TLMENUF_INCLUDECURRENT: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TLOG_BACK: i32 = -1i32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TLOG_CURRENT: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TLOG_FORE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TaskbarList: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x56fdf344_fd6d_11d0_958a_006097c9a090);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ThumbnailStreamCache: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcbe0fed3_4b91_4e90_8354_8a8c84ec6872);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TimeCategorizer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3bb4118f_ddfd_4d30_a348_9fb5d6bf1afe);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TrackShellMenu: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8278f931_2a3e_11d2_838f_00c04fd918d0);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TrayBandSiteService: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf60ad0a0_e5e1_45cb_b51a_e15b9f8b2934);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TrayDeskBand: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe6442437_6c68_4f52_94dd_2cfed267efb9);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_APPLY_DEFAULT: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_APPLY_FORCEAPPLY: u32 = 8u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_APPLY_GUESSFILE: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_APPLY_GUESSSCHEME: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_BROWSER_MODE: u32 = 33554432u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_CONVERT_IF_DOSPATH: u32 = 2097152u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_DONT_ESCAPE_EXTRA_INFO: u32 = 33554432u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_DONT_SIMPLIFY: u32 = 134217728u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_DONT_UNESCAPE: u32 = 131072u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_DONT_UNESCAPE_EXTRA_INFO: u32 = 33554432u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_ESCAPE_ASCII_URI_COMPONENT: u32 = 524288u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_ESCAPE_AS_UTF8: u32 = 262144u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_ESCAPE_PERCENT: u32 = 4096u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_ESCAPE_SEGMENT_ONLY: u32 = 8192u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_ESCAPE_SPACES_ONLY: u32 = 67108864u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_ESCAPE_UNSAFE: u32 = 536870912u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_E_INVALID_SYNTAX: ::windows::core::HRESULT = ::windows::core::HRESULT(-2147217407i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_E_UNREGISTERED_PROTOCOL: ::windows::core::HRESULT = ::windows::core::HRESULT(-2147217406i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_FILE_USE_PATHURL: u32 = 65536u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_INTERNAL_PATH: u32 = 8388608u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_NO_META: u32 = 134217728u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_PARTFLAG_KEEPSCHEME: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_PLUGGABLE_PROTOCOL: u32 = 1073741824u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_UNESCAPE: u32 = 268435456u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_UNESCAPE_AS_UTF8: u32 = 262144u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_UNESCAPE_HIGH_ANSI_ONLY: u32 = 4194304u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_UNESCAPE_INPLACE: u32 = 1048576u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_UNESCAPE_URI_COMPONENT: u32 = 262144u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_WININET_COMPATIBILITY: u32 = 2147483648u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const UserNotification: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0010890e_8789_413c_adbc_48f5b511b3af);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const V1PasswordCredentialProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6f45dc1e_5384_457a_bc13_2cd81b0d28ed);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const V1SmartcardCredentialProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8bf9a910_a8ff_457f_999f_a5ca10b4a885);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const V1WinBioCredentialProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xac3ac249_e820_4343_a65b_377ac634dc09);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VID_Content: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x30c2c434_0889_4c8d_985d_a9f71830b0a9);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VID_Details: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x137e7700_3573_11cf_ae69_08002b2e1262);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VID_LargeIcons: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0057d0e0_3573_11cf_ae69_08002b2e1262);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VID_List: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0e1fa5e0_3573_11cf_ae69_08002b2e1262);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VID_SmallIcons: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x089000c0_3573_11cf_ae69_08002b2e1262);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VID_ThumbStrip: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8eefa624_d1e9_445b_94b7_74fbce2ea11a);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VID_Thumbnails: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8bebb290_52d0_11d0_b7f4_00c04fd706ec);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VID_Tile: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x65f125e5_7be1_4810_ba9d_d271c8432ce3);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VIEW_PRIORITY_CACHEHIT: u32 = 80u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VIEW_PRIORITY_CACHEMISS: u32 = 48u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VIEW_PRIORITY_DESPERATE: u32 = 16u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VIEW_PRIORITY_INHERIT: u32 = 32u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VIEW_PRIORITY_NONE: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VIEW_PRIORITY_RESTRICTED: u32 = 112u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VIEW_PRIORITY_SHELLEXT: u32 = 64u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VIEW_PRIORITY_SHELLEXT_ASBACKUP: u32 = 21u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VIEW_PRIORITY_STALECACHEHIT: u32 = 69u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VIEW_PRIORITY_USEASDEFAULT: u32 = 67u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VOLUME_PREFIX: ::windows::core::PCWSTR = ::windows::w!("\\\\?\\Volume");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VaultProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x503739d0_4c5e_4cfd_b3ba_d881334f0df2);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VirtualDesktopManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xaa509086_5ca9_4c25_8f95_589d3c07b48a);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WC_NETADDRESS: ::windows::core::PCWSTR = ::windows::w!("msctls_netaddress");
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WM_CPL_LAUNCH: u32 = 2024u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WM_CPL_LAUNCHED: u32 = 2025u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WPSTYLE_CENTER: u32 = 0u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WPSTYLE_CROPTOFIT: u32 = 4u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WPSTYLE_KEEPASPECT: u32 = 3u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WPSTYLE_MAX: u32 = 6u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WPSTYLE_SPAN: u32 = 5u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WPSTYLE_STRETCH: u32 = 2u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WPSTYLE_TILE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_E_DATAFILEUNAVAILABLE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2147175932i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_E_EXTRACTIONBLOCKED: ::windows::core::HRESULT = ::windows::core::HRESULT(-2147175930i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_E_EXTRACTIONPENDING: ::windows::core::HRESULT = ::windows::core::HRESULT(-2147175931i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_E_EXTRACTIONTIMEDOUT: ::windows::core::HRESULT = ::windows::core::HRESULT(-2147175935i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_E_FAILEDEXTRACTION: ::windows::core::HRESULT = ::windows::core::HRESULT(-2147175936i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_E_FASTEXTRACTIONNOTSUPPORTED: ::windows::core::HRESULT = ::windows::core::HRESULT(-2147175933i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_E_NOSTORAGEPROVIDERTHUMBNAILHANDLER: ::windows::core::HRESULT = ::windows::core::HRESULT(-2147175929i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_E_SURROGATEUNAVAILABLE: ::windows::core::HRESULT = ::windows::core::HRESULT(-2147175934i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WebBrowser: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8856f961_340a_11d0_a96b_00c04fd705a2);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WebBrowser_V1: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xeab22ac3_30c1_11cf_a7eb_0000c05bae0b);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WebWizardHost: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc827f149_55c1_4d28_935e_57e47caed973);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WinBioCredentialProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbec09223_b018_416d_a0ac_523971b639f5);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const idsAppName: u32 = 1007u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const idsBadOldPW: u32 = 1006u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const idsChangePW: u32 = 1005u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const idsDefKeyword: u32 = 1010u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const idsDifferentPW: u32 = 1004u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const idsHelpFile: u32 = 1009u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const idsIniFile: u32 = 1001u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const idsIsPassword: u32 = 1000u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const idsNoHelpMemory: u32 = 1008u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const idsPassword: u32 = 1003u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const idsScreenSaver: u32 = 1002u32;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ACENUMOPTION(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACEO_NONE: ACENUMOPTION = ACENUMOPTION(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACEO_MOSTRECENTFIRST: ACENUMOPTION = ACENUMOPTION(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACEO_FIRSTUNUSED: ACENUMOPTION = ACENUMOPTION(65536i32);
impl ::core::marker::Copy for ACENUMOPTION {}
impl ::core::clone::Clone for ACENUMOPTION {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ACENUMOPTION {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for ACENUMOPTION {
type Abi = Self;
}
impl ::core::fmt::Debug for ACENUMOPTION {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ACENUMOPTION").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ACTIVATEOPTIONS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AO_NONE: ACTIVATEOPTIONS = ACTIVATEOPTIONS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AO_DESIGNMODE: ACTIVATEOPTIONS = ACTIVATEOPTIONS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AO_NOERRORUI: ACTIVATEOPTIONS = ACTIVATEOPTIONS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AO_NOSPLASHSCREEN: ACTIVATEOPTIONS = ACTIVATEOPTIONS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AO_PRELAUNCH: ACTIVATEOPTIONS = ACTIVATEOPTIONS(33554432i32);
impl ::core::marker::Copy for ACTIVATEOPTIONS {}
impl ::core::clone::Clone for ACTIVATEOPTIONS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ACTIVATEOPTIONS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for ACTIVATEOPTIONS {
type Abi = Self;
}
impl ::core::fmt::Debug for ACTIVATEOPTIONS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ACTIVATEOPTIONS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ADJACENT_DISPLAY_EDGES(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ADE_NONE: ADJACENT_DISPLAY_EDGES = ADJACENT_DISPLAY_EDGES(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ADE_LEFT: ADJACENT_DISPLAY_EDGES = ADJACENT_DISPLAY_EDGES(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ADE_RIGHT: ADJACENT_DISPLAY_EDGES = ADJACENT_DISPLAY_EDGES(2i32);
impl ::core::marker::Copy for ADJACENT_DISPLAY_EDGES {}
impl ::core::clone::Clone for ADJACENT_DISPLAY_EDGES {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ADJACENT_DISPLAY_EDGES {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for ADJACENT_DISPLAY_EDGES {
type Abi = Self;
}
impl ::core::fmt::Debug for ADJACENT_DISPLAY_EDGES {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ADJACENT_DISPLAY_EDGES").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct AHE_TYPE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AHE_DESKTOP: AHE_TYPE = AHE_TYPE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AHE_IMMERSIVE: AHE_TYPE = AHE_TYPE(1i32);
impl ::core::marker::Copy for AHE_TYPE {}
impl ::core::clone::Clone for AHE_TYPE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for AHE_TYPE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for AHE_TYPE {
type Abi = Self;
}
impl ::core::fmt::Debug for AHE_TYPE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("AHE_TYPE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct AHTYPE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AHTYPE_UNDEFINED: AHTYPE = AHTYPE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AHTYPE_USER_APPLICATION: AHTYPE = AHTYPE(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AHTYPE_ANY_APPLICATION: AHTYPE = AHTYPE(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AHTYPE_MACHINEDEFAULT: AHTYPE = AHTYPE(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AHTYPE_PROGID: AHTYPE = AHTYPE(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AHTYPE_APPLICATION: AHTYPE = AHTYPE(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AHTYPE_CLASS_APPLICATION: AHTYPE = AHTYPE(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AHTYPE_ANY_PROGID: AHTYPE = AHTYPE(512i32);
impl ::core::marker::Copy for AHTYPE {}
impl ::core::clone::Clone for AHTYPE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for AHTYPE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for AHTYPE {
type Abi = Self;
}
impl ::core::fmt::Debug for AHTYPE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("AHTYPE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct APPACTIONFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const APPACTION_INSTALL: APPACTIONFLAGS = APPACTIONFLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const APPACTION_UNINSTALL: APPACTIONFLAGS = APPACTIONFLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const APPACTION_MODIFY: APPACTIONFLAGS = APPACTIONFLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const APPACTION_REPAIR: APPACTIONFLAGS = APPACTIONFLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const APPACTION_UPGRADE: APPACTIONFLAGS = APPACTIONFLAGS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const APPACTION_CANGETSIZE: APPACTIONFLAGS = APPACTIONFLAGS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const APPACTION_MODIFYREMOVE: APPACTIONFLAGS = APPACTIONFLAGS(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const APPACTION_ADDLATER: APPACTIONFLAGS = APPACTIONFLAGS(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const APPACTION_UNSCHEDULE: APPACTIONFLAGS = APPACTIONFLAGS(512i32);
impl ::core::marker::Copy for APPACTIONFLAGS {}
impl ::core::clone::Clone for APPACTIONFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for APPACTIONFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for APPACTIONFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for APPACTIONFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("APPACTIONFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct APPDOCLISTTYPE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ADLT_RECENT: APPDOCLISTTYPE = APPDOCLISTTYPE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ADLT_FREQUENT: APPDOCLISTTYPE = APPDOCLISTTYPE(1i32);
impl ::core::marker::Copy for APPDOCLISTTYPE {}
impl ::core::clone::Clone for APPDOCLISTTYPE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for APPDOCLISTTYPE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for APPDOCLISTTYPE {
type Abi = Self;
}
impl ::core::fmt::Debug for APPDOCLISTTYPE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("APPDOCLISTTYPE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct APPINFODATAFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AIM_DISPLAYNAME: APPINFODATAFLAGS = APPINFODATAFLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AIM_VERSION: APPINFODATAFLAGS = APPINFODATAFLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AIM_PUBLISHER: APPINFODATAFLAGS = APPINFODATAFLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AIM_PRODUCTID: APPINFODATAFLAGS = APPINFODATAFLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AIM_REGISTEREDOWNER: APPINFODATAFLAGS = APPINFODATAFLAGS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AIM_REGISTEREDCOMPANY: APPINFODATAFLAGS = APPINFODATAFLAGS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AIM_LANGUAGE: APPINFODATAFLAGS = APPINFODATAFLAGS(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AIM_SUPPORTURL: APPINFODATAFLAGS = APPINFODATAFLAGS(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AIM_SUPPORTTELEPHONE: APPINFODATAFLAGS = APPINFODATAFLAGS(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AIM_HELPLINK: APPINFODATAFLAGS = APPINFODATAFLAGS(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AIM_INSTALLLOCATION: APPINFODATAFLAGS = APPINFODATAFLAGS(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AIM_INSTALLSOURCE: APPINFODATAFLAGS = APPINFODATAFLAGS(2048i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AIM_INSTALLDATE: APPINFODATAFLAGS = APPINFODATAFLAGS(4096i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AIM_CONTACT: APPINFODATAFLAGS = APPINFODATAFLAGS(16384i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AIM_COMMENTS: APPINFODATAFLAGS = APPINFODATAFLAGS(32768i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AIM_IMAGE: APPINFODATAFLAGS = APPINFODATAFLAGS(131072i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AIM_READMEURL: APPINFODATAFLAGS = APPINFODATAFLAGS(262144i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AIM_UPDATEINFOURL: APPINFODATAFLAGS = APPINFODATAFLAGS(524288i32);
impl ::core::marker::Copy for APPINFODATAFLAGS {}
impl ::core::clone::Clone for APPINFODATAFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for APPINFODATAFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for APPINFODATAFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for APPINFODATAFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("APPINFODATAFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct APPLICATION_VIEW_MIN_WIDTH(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AVMW_DEFAULT: APPLICATION_VIEW_MIN_WIDTH = APPLICATION_VIEW_MIN_WIDTH(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AVMW_320: APPLICATION_VIEW_MIN_WIDTH = APPLICATION_VIEW_MIN_WIDTH(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AVMW_500: APPLICATION_VIEW_MIN_WIDTH = APPLICATION_VIEW_MIN_WIDTH(2i32);
impl ::core::marker::Copy for APPLICATION_VIEW_MIN_WIDTH {}
impl ::core::clone::Clone for APPLICATION_VIEW_MIN_WIDTH {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for APPLICATION_VIEW_MIN_WIDTH {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for APPLICATION_VIEW_MIN_WIDTH {
type Abi = Self;
}
impl ::core::fmt::Debug for APPLICATION_VIEW_MIN_WIDTH {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("APPLICATION_VIEW_MIN_WIDTH").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct APPLICATION_VIEW_ORIENTATION(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AVO_LANDSCAPE: APPLICATION_VIEW_ORIENTATION = APPLICATION_VIEW_ORIENTATION(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AVO_PORTRAIT: APPLICATION_VIEW_ORIENTATION = APPLICATION_VIEW_ORIENTATION(1i32);
impl ::core::marker::Copy for APPLICATION_VIEW_ORIENTATION {}
impl ::core::clone::Clone for APPLICATION_VIEW_ORIENTATION {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for APPLICATION_VIEW_ORIENTATION {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for APPLICATION_VIEW_ORIENTATION {
type Abi = Self;
}
impl ::core::fmt::Debug for APPLICATION_VIEW_ORIENTATION {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("APPLICATION_VIEW_ORIENTATION").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct APPLICATION_VIEW_SIZE_PREFERENCE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AVSP_DEFAULT: APPLICATION_VIEW_SIZE_PREFERENCE = APPLICATION_VIEW_SIZE_PREFERENCE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AVSP_USE_LESS: APPLICATION_VIEW_SIZE_PREFERENCE = APPLICATION_VIEW_SIZE_PREFERENCE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AVSP_USE_HALF: APPLICATION_VIEW_SIZE_PREFERENCE = APPLICATION_VIEW_SIZE_PREFERENCE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AVSP_USE_MORE: APPLICATION_VIEW_SIZE_PREFERENCE = APPLICATION_VIEW_SIZE_PREFERENCE(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AVSP_USE_MINIMUM: APPLICATION_VIEW_SIZE_PREFERENCE = APPLICATION_VIEW_SIZE_PREFERENCE(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AVSP_USE_NONE: APPLICATION_VIEW_SIZE_PREFERENCE = APPLICATION_VIEW_SIZE_PREFERENCE(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AVSP_CUSTOM: APPLICATION_VIEW_SIZE_PREFERENCE = APPLICATION_VIEW_SIZE_PREFERENCE(6i32);
impl ::core::marker::Copy for APPLICATION_VIEW_SIZE_PREFERENCE {}
impl ::core::clone::Clone for APPLICATION_VIEW_SIZE_PREFERENCE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for APPLICATION_VIEW_SIZE_PREFERENCE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for APPLICATION_VIEW_SIZE_PREFERENCE {
type Abi = Self;
}
impl ::core::fmt::Debug for APPLICATION_VIEW_SIZE_PREFERENCE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("APPLICATION_VIEW_SIZE_PREFERENCE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct APPLICATION_VIEW_STATE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AVS_FULLSCREEN_LANDSCAPE: APPLICATION_VIEW_STATE = APPLICATION_VIEW_STATE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AVS_FILLED: APPLICATION_VIEW_STATE = APPLICATION_VIEW_STATE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AVS_SNAPPED: APPLICATION_VIEW_STATE = APPLICATION_VIEW_STATE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AVS_FULLSCREEN_PORTRAIT: APPLICATION_VIEW_STATE = APPLICATION_VIEW_STATE(3i32);
impl ::core::marker::Copy for APPLICATION_VIEW_STATE {}
impl ::core::clone::Clone for APPLICATION_VIEW_STATE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for APPLICATION_VIEW_STATE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for APPLICATION_VIEW_STATE {
type Abi = Self;
}
impl ::core::fmt::Debug for APPLICATION_VIEW_STATE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("APPLICATION_VIEW_STATE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ASSOCCLASS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCCLASS_SHELL_KEY: ASSOCCLASS = ASSOCCLASS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCCLASS_PROGID_KEY: ASSOCCLASS = ASSOCCLASS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCCLASS_PROGID_STR: ASSOCCLASS = ASSOCCLASS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCCLASS_CLSID_KEY: ASSOCCLASS = ASSOCCLASS(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCCLASS_CLSID_STR: ASSOCCLASS = ASSOCCLASS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCCLASS_APP_KEY: ASSOCCLASS = ASSOCCLASS(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCCLASS_APP_STR: ASSOCCLASS = ASSOCCLASS(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCCLASS_SYSTEM_STR: ASSOCCLASS = ASSOCCLASS(7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCCLASS_FOLDER: ASSOCCLASS = ASSOCCLASS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCCLASS_STAR: ASSOCCLASS = ASSOCCLASS(9i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCCLASS_FIXED_PROGID_STR: ASSOCCLASS = ASSOCCLASS(10i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCCLASS_PROTOCOL_STR: ASSOCCLASS = ASSOCCLASS(11i32);
impl ::core::marker::Copy for ASSOCCLASS {}
impl ::core::clone::Clone for ASSOCCLASS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ASSOCCLASS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for ASSOCCLASS {
type Abi = Self;
}
impl ::core::fmt::Debug for ASSOCCLASS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ASSOCCLASS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ASSOCDATA(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCDATA_MSIDESCRIPTOR: ASSOCDATA = ASSOCDATA(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCDATA_NOACTIVATEHANDLER: ASSOCDATA = ASSOCDATA(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCDATA_UNUSED1: ASSOCDATA = ASSOCDATA(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCDATA_HASPERUSERASSOC: ASSOCDATA = ASSOCDATA(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCDATA_EDITFLAGS: ASSOCDATA = ASSOCDATA(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCDATA_VALUE: ASSOCDATA = ASSOCDATA(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCDATA_MAX: ASSOCDATA = ASSOCDATA(7i32);
impl ::core::marker::Copy for ASSOCDATA {}
impl ::core::clone::Clone for ASSOCDATA {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ASSOCDATA {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for ASSOCDATA {
type Abi = Self;
}
impl ::core::fmt::Debug for ASSOCDATA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ASSOCDATA").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ASSOCENUM(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCENUM_NONE: ASSOCENUM = ASSOCENUM(0i32);
impl ::core::marker::Copy for ASSOCENUM {}
impl ::core::clone::Clone for ASSOCENUM {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ASSOCENUM {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for ASSOCENUM {
type Abi = Self;
}
impl ::core::fmt::Debug for ASSOCENUM {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ASSOCENUM").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ASSOCF(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCF_NONE: ASSOCF = ASSOCF(0u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCF_INIT_NOREMAPCLSID: ASSOCF = ASSOCF(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCF_INIT_BYEXENAME: ASSOCF = ASSOCF(2u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCF_OPEN_BYEXENAME: ASSOCF = ASSOCF(2u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCF_INIT_DEFAULTTOSTAR: ASSOCF = ASSOCF(4u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCF_INIT_DEFAULTTOFOLDER: ASSOCF = ASSOCF(8u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCF_NOUSERSETTINGS: ASSOCF = ASSOCF(16u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCF_NOTRUNCATE: ASSOCF = ASSOCF(32u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCF_VERIFY: ASSOCF = ASSOCF(64u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCF_REMAPRUNDLL: ASSOCF = ASSOCF(128u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCF_NOFIXUPS: ASSOCF = ASSOCF(256u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCF_IGNOREBASECLASS: ASSOCF = ASSOCF(512u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCF_INIT_IGNOREUNKNOWN: ASSOCF = ASSOCF(1024u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCF_INIT_FIXED_PROGID: ASSOCF = ASSOCF(2048u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCF_IS_PROTOCOL: ASSOCF = ASSOCF(4096u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCF_INIT_FOR_FILE: ASSOCF = ASSOCF(8192u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCF_IS_FULL_URI: ASSOCF = ASSOCF(16384u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCF_PER_MACHINE_ONLY: ASSOCF = ASSOCF(32768u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCF_APP_TO_APP: ASSOCF = ASSOCF(65536u32);
impl ::core::marker::Copy for ASSOCF {}
impl ::core::clone::Clone for ASSOCF {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ASSOCF {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for ASSOCF {
type Abi = Self;
}
impl ::core::fmt::Debug for ASSOCF {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ASSOCF").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for ASSOCF {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for ASSOCF {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for ASSOCF {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for ASSOCF {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for ASSOCF {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ASSOCIATIONLEVEL(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AL_MACHINE: ASSOCIATIONLEVEL = ASSOCIATIONLEVEL(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AL_EFFECTIVE: ASSOCIATIONLEVEL = ASSOCIATIONLEVEL(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AL_USER: ASSOCIATIONLEVEL = ASSOCIATIONLEVEL(2i32);
impl ::core::marker::Copy for ASSOCIATIONLEVEL {}
impl ::core::clone::Clone for ASSOCIATIONLEVEL {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ASSOCIATIONLEVEL {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for ASSOCIATIONLEVEL {
type Abi = Self;
}
impl ::core::fmt::Debug for ASSOCIATIONLEVEL {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ASSOCIATIONLEVEL").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ASSOCIATIONTYPE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AT_FILEEXTENSION: ASSOCIATIONTYPE = ASSOCIATIONTYPE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AT_URLPROTOCOL: ASSOCIATIONTYPE = ASSOCIATIONTYPE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AT_STARTMENUCLIENT: ASSOCIATIONTYPE = ASSOCIATIONTYPE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AT_MIMETYPE: ASSOCIATIONTYPE = ASSOCIATIONTYPE(3i32);
impl ::core::marker::Copy for ASSOCIATIONTYPE {}
impl ::core::clone::Clone for ASSOCIATIONTYPE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ASSOCIATIONTYPE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for ASSOCIATIONTYPE {
type Abi = Self;
}
impl ::core::fmt::Debug for ASSOCIATIONTYPE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ASSOCIATIONTYPE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ASSOCKEY(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCKEY_SHELLEXECCLASS: ASSOCKEY = ASSOCKEY(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCKEY_APP: ASSOCKEY = ASSOCKEY(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCKEY_CLASS: ASSOCKEY = ASSOCKEY(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCKEY_BASECLASS: ASSOCKEY = ASSOCKEY(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCKEY_MAX: ASSOCKEY = ASSOCKEY(5i32);
impl ::core::marker::Copy for ASSOCKEY {}
impl ::core::clone::Clone for ASSOCKEY {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ASSOCKEY {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for ASSOCKEY {
type Abi = Self;
}
impl ::core::fmt::Debug for ASSOCKEY {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ASSOCKEY").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ASSOCSTR(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_COMMAND: ASSOCSTR = ASSOCSTR(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_EXECUTABLE: ASSOCSTR = ASSOCSTR(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_FRIENDLYDOCNAME: ASSOCSTR = ASSOCSTR(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_FRIENDLYAPPNAME: ASSOCSTR = ASSOCSTR(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_NOOPEN: ASSOCSTR = ASSOCSTR(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_SHELLNEWVALUE: ASSOCSTR = ASSOCSTR(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_DDECOMMAND: ASSOCSTR = ASSOCSTR(7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_DDEIFEXEC: ASSOCSTR = ASSOCSTR(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_DDEAPPLICATION: ASSOCSTR = ASSOCSTR(9i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_DDETOPIC: ASSOCSTR = ASSOCSTR(10i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_INFOTIP: ASSOCSTR = ASSOCSTR(11i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_QUICKTIP: ASSOCSTR = ASSOCSTR(12i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_TILEINFO: ASSOCSTR = ASSOCSTR(13i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_CONTENTTYPE: ASSOCSTR = ASSOCSTR(14i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_DEFAULTICON: ASSOCSTR = ASSOCSTR(15i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_SHELLEXTENSION: ASSOCSTR = ASSOCSTR(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_DROPTARGET: ASSOCSTR = ASSOCSTR(17i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_DELEGATEEXECUTE: ASSOCSTR = ASSOCSTR(18i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_SUPPORTED_URI_PROTOCOLS: ASSOCSTR = ASSOCSTR(19i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_PROGID: ASSOCSTR = ASSOCSTR(20i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_APPID: ASSOCSTR = ASSOCSTR(21i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_APPPUBLISHER: ASSOCSTR = ASSOCSTR(22i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_APPICONREFERENCE: ASSOCSTR = ASSOCSTR(23i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOCSTR_MAX: ASSOCSTR = ASSOCSTR(24i32);
impl ::core::marker::Copy for ASSOCSTR {}
impl ::core::clone::Clone for ASSOCSTR {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ASSOCSTR {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for ASSOCSTR {
type Abi = Self;
}
impl ::core::fmt::Debug for ASSOCSTR {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ASSOCSTR").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ASSOC_FILTER(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOC_FILTER_NONE: ASSOC_FILTER = ASSOC_FILTER(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ASSOC_FILTER_RECOMMENDED: ASSOC_FILTER = ASSOC_FILTER(1i32);
impl ::core::marker::Copy for ASSOC_FILTER {}
impl ::core::clone::Clone for ASSOC_FILTER {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ASSOC_FILTER {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for ASSOC_FILTER {
type Abi = Self;
}
impl ::core::fmt::Debug for ASSOC_FILTER {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ASSOC_FILTER").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ATTACHMENT_ACTION(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ATTACHMENT_ACTION_CANCEL: ATTACHMENT_ACTION = ATTACHMENT_ACTION(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ATTACHMENT_ACTION_SAVE: ATTACHMENT_ACTION = ATTACHMENT_ACTION(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ATTACHMENT_ACTION_EXEC: ATTACHMENT_ACTION = ATTACHMENT_ACTION(2i32);
impl ::core::marker::Copy for ATTACHMENT_ACTION {}
impl ::core::clone::Clone for ATTACHMENT_ACTION {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ATTACHMENT_ACTION {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for ATTACHMENT_ACTION {
type Abi = Self;
}
impl ::core::fmt::Debug for ATTACHMENT_ACTION {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ATTACHMENT_ACTION").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ATTACHMENT_PROMPT(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ATTACHMENT_PROMPT_NONE: ATTACHMENT_PROMPT = ATTACHMENT_PROMPT(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ATTACHMENT_PROMPT_SAVE: ATTACHMENT_PROMPT = ATTACHMENT_PROMPT(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ATTACHMENT_PROMPT_EXEC: ATTACHMENT_PROMPT = ATTACHMENT_PROMPT(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ATTACHMENT_PROMPT_EXEC_OR_SAVE: ATTACHMENT_PROMPT = ATTACHMENT_PROMPT(3i32);
impl ::core::marker::Copy for ATTACHMENT_PROMPT {}
impl ::core::clone::Clone for ATTACHMENT_PROMPT {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ATTACHMENT_PROMPT {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for ATTACHMENT_PROMPT {
type Abi = Self;
}
impl ::core::fmt::Debug for ATTACHMENT_PROMPT {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ATTACHMENT_PROMPT").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct AUTOCOMPLETELISTOPTIONS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACLO_NONE: AUTOCOMPLETELISTOPTIONS = AUTOCOMPLETELISTOPTIONS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACLO_CURRENTDIR: AUTOCOMPLETELISTOPTIONS = AUTOCOMPLETELISTOPTIONS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACLO_MYCOMPUTER: AUTOCOMPLETELISTOPTIONS = AUTOCOMPLETELISTOPTIONS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACLO_DESKTOP: AUTOCOMPLETELISTOPTIONS = AUTOCOMPLETELISTOPTIONS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACLO_FAVORITES: AUTOCOMPLETELISTOPTIONS = AUTOCOMPLETELISTOPTIONS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACLO_FILESYSONLY: AUTOCOMPLETELISTOPTIONS = AUTOCOMPLETELISTOPTIONS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACLO_FILESYSDIRS: AUTOCOMPLETELISTOPTIONS = AUTOCOMPLETELISTOPTIONS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACLO_VIRTUALNAMESPACE: AUTOCOMPLETELISTOPTIONS = AUTOCOMPLETELISTOPTIONS(64i32);
impl ::core::marker::Copy for AUTOCOMPLETELISTOPTIONS {}
impl ::core::clone::Clone for AUTOCOMPLETELISTOPTIONS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for AUTOCOMPLETELISTOPTIONS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for AUTOCOMPLETELISTOPTIONS {
type Abi = Self;
}
impl ::core::fmt::Debug for AUTOCOMPLETELISTOPTIONS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("AUTOCOMPLETELISTOPTIONS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct AUTOCOMPLETEOPTIONS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACO_NONE: AUTOCOMPLETEOPTIONS = AUTOCOMPLETEOPTIONS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACO_AUTOSUGGEST: AUTOCOMPLETEOPTIONS = AUTOCOMPLETEOPTIONS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACO_AUTOAPPEND: AUTOCOMPLETEOPTIONS = AUTOCOMPLETEOPTIONS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACO_SEARCH: AUTOCOMPLETEOPTIONS = AUTOCOMPLETEOPTIONS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACO_FILTERPREFIXES: AUTOCOMPLETEOPTIONS = AUTOCOMPLETEOPTIONS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACO_USETAB: AUTOCOMPLETEOPTIONS = AUTOCOMPLETEOPTIONS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACO_UPDOWNKEYDROPSLIST: AUTOCOMPLETEOPTIONS = AUTOCOMPLETEOPTIONS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACO_RTLREADING: AUTOCOMPLETEOPTIONS = AUTOCOMPLETEOPTIONS(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACO_WORD_FILTER: AUTOCOMPLETEOPTIONS = AUTOCOMPLETEOPTIONS(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ACO_NOPREFIXFILTERING: AUTOCOMPLETEOPTIONS = AUTOCOMPLETEOPTIONS(256i32);
impl ::core::marker::Copy for AUTOCOMPLETEOPTIONS {}
impl ::core::clone::Clone for AUTOCOMPLETEOPTIONS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for AUTOCOMPLETEOPTIONS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for AUTOCOMPLETEOPTIONS {
type Abi = Self;
}
impl ::core::fmt::Debug for AUTOCOMPLETEOPTIONS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("AUTOCOMPLETEOPTIONS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct BANDSITECID(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSID_BANDADDED: BANDSITECID = BANDSITECID(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BSID_BANDREMOVED: BANDSITECID = BANDSITECID(1i32);
impl ::core::marker::Copy for BANDSITECID {}
impl ::core::clone::Clone for BANDSITECID {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for BANDSITECID {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for BANDSITECID {
type Abi = Self;
}
impl ::core::fmt::Debug for BANDSITECID {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("BANDSITECID").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct BANNER_NOTIFICATION_EVENT(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BNE_Rendered: BANNER_NOTIFICATION_EVENT = BANNER_NOTIFICATION_EVENT(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BNE_Hovered: BANNER_NOTIFICATION_EVENT = BANNER_NOTIFICATION_EVENT(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BNE_Closed: BANNER_NOTIFICATION_EVENT = BANNER_NOTIFICATION_EVENT(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BNE_Dismissed: BANNER_NOTIFICATION_EVENT = BANNER_NOTIFICATION_EVENT(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BNE_Button1Clicked: BANNER_NOTIFICATION_EVENT = BANNER_NOTIFICATION_EVENT(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BNE_Button2Clicked: BANNER_NOTIFICATION_EVENT = BANNER_NOTIFICATION_EVENT(5i32);
impl ::core::marker::Copy for BANNER_NOTIFICATION_EVENT {}
impl ::core::clone::Clone for BANNER_NOTIFICATION_EVENT {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for BANNER_NOTIFICATION_EVENT {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for BANNER_NOTIFICATION_EVENT {
type Abi = Self;
}
impl ::core::fmt::Debug for BANNER_NOTIFICATION_EVENT {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("BANNER_NOTIFICATION_EVENT").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct BNSTATE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BNS_NORMAL: BNSTATE = BNSTATE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BNS_BEGIN_NAVIGATE: BNSTATE = BNSTATE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BNS_NAVIGATE: BNSTATE = BNSTATE(2i32);
impl ::core::marker::Copy for BNSTATE {}
impl ::core::clone::Clone for BNSTATE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for BNSTATE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for BNSTATE {
type Abi = Self;
}
impl ::core::fmt::Debug for BNSTATE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("BNSTATE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct BrowserNavConstants(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navOpenInNewWindow: BrowserNavConstants = BrowserNavConstants(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navNoHistory: BrowserNavConstants = BrowserNavConstants(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navNoReadFromCache: BrowserNavConstants = BrowserNavConstants(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navNoWriteToCache: BrowserNavConstants = BrowserNavConstants(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navAllowAutosearch: BrowserNavConstants = BrowserNavConstants(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navBrowserBar: BrowserNavConstants = BrowserNavConstants(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navHyperlink: BrowserNavConstants = BrowserNavConstants(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navEnforceRestricted: BrowserNavConstants = BrowserNavConstants(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navNewWindowsManaged: BrowserNavConstants = BrowserNavConstants(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navUntrustedForDownload: BrowserNavConstants = BrowserNavConstants(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navTrustedForActiveX: BrowserNavConstants = BrowserNavConstants(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navOpenInNewTab: BrowserNavConstants = BrowserNavConstants(2048i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navOpenInBackgroundTab: BrowserNavConstants = BrowserNavConstants(4096i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navKeepWordWheelText: BrowserNavConstants = BrowserNavConstants(8192i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navVirtualTab: BrowserNavConstants = BrowserNavConstants(16384i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navBlockRedirectsXDomain: BrowserNavConstants = BrowserNavConstants(32768i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navOpenNewForegroundTab: BrowserNavConstants = BrowserNavConstants(65536i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navTravelLogScreenshot: BrowserNavConstants = BrowserNavConstants(131072i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navDeferUnload: BrowserNavConstants = BrowserNavConstants(262144i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navSpeculative: BrowserNavConstants = BrowserNavConstants(524288i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navSuggestNewWindow: BrowserNavConstants = BrowserNavConstants(1048576i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navSuggestNewTab: BrowserNavConstants = BrowserNavConstants(2097152i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navReserved1: BrowserNavConstants = BrowserNavConstants(4194304i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navHomepageNavigate: BrowserNavConstants = BrowserNavConstants(8388608i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navRefresh: BrowserNavConstants = BrowserNavConstants(16777216i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navHostNavigation: BrowserNavConstants = BrowserNavConstants(33554432i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navReserved2: BrowserNavConstants = BrowserNavConstants(67108864i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navReserved3: BrowserNavConstants = BrowserNavConstants(134217728i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navReserved4: BrowserNavConstants = BrowserNavConstants(268435456i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navReserved5: BrowserNavConstants = BrowserNavConstants(536870912i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navReserved6: BrowserNavConstants = BrowserNavConstants(1073741824i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const navReserved7: BrowserNavConstants = BrowserNavConstants(-2147483648i32);
impl ::core::marker::Copy for BrowserNavConstants {}
impl ::core::clone::Clone for BrowserNavConstants {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for BrowserNavConstants {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for BrowserNavConstants {
type Abi = Self;
}
impl ::core::fmt::Debug for BrowserNavConstants {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("BrowserNavConstants").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct CATEGORYINFO_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATINFO_NORMAL: CATEGORYINFO_FLAGS = CATEGORYINFO_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATINFO_COLLAPSED: CATEGORYINFO_FLAGS = CATEGORYINFO_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATINFO_HIDDEN: CATEGORYINFO_FLAGS = CATEGORYINFO_FLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATINFO_EXPANDED: CATEGORYINFO_FLAGS = CATEGORYINFO_FLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATINFO_NOHEADER: CATEGORYINFO_FLAGS = CATEGORYINFO_FLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATINFO_NOTCOLLAPSIBLE: CATEGORYINFO_FLAGS = CATEGORYINFO_FLAGS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATINFO_NOHEADERCOUNT: CATEGORYINFO_FLAGS = CATEGORYINFO_FLAGS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATINFO_SUBSETTED: CATEGORYINFO_FLAGS = CATEGORYINFO_FLAGS(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATINFO_SEPARATE_IMAGES: CATEGORYINFO_FLAGS = CATEGORYINFO_FLAGS(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATINFO_SHOWEMPTY: CATEGORYINFO_FLAGS = CATEGORYINFO_FLAGS(256i32);
impl ::core::marker::Copy for CATEGORYINFO_FLAGS {}
impl ::core::clone::Clone for CATEGORYINFO_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for CATEGORYINFO_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for CATEGORYINFO_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for CATEGORYINFO_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("CATEGORYINFO_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct CATSORT_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATSORT_DEFAULT: CATSORT_FLAGS = CATSORT_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CATSORT_NAME: CATSORT_FLAGS = CATSORT_FLAGS(1i32);
impl ::core::marker::Copy for CATSORT_FLAGS {}
impl ::core::clone::Clone for CATSORT_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for CATSORT_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for CATSORT_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for CATSORT_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("CATSORT_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct CDBURNINGEXTENSIONRET(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDBE_RET_DEFAULT: CDBURNINGEXTENSIONRET = CDBURNINGEXTENSIONRET(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDBE_RET_DONTRUNOTHEREXTS: CDBURNINGEXTENSIONRET = CDBURNINGEXTENSIONRET(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDBE_RET_STOPWIZARD: CDBURNINGEXTENSIONRET = CDBURNINGEXTENSIONRET(2i32);
impl ::core::marker::Copy for CDBURNINGEXTENSIONRET {}
impl ::core::clone::Clone for CDBURNINGEXTENSIONRET {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for CDBURNINGEXTENSIONRET {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for CDBURNINGEXTENSIONRET {
type Abi = Self;
}
impl ::core::fmt::Debug for CDBURNINGEXTENSIONRET {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("CDBURNINGEXTENSIONRET").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct CDCONTROLSTATEF(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDCS_INACTIVE: CDCONTROLSTATEF = CDCONTROLSTATEF(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDCS_ENABLED: CDCONTROLSTATEF = CDCONTROLSTATEF(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDCS_VISIBLE: CDCONTROLSTATEF = CDCONTROLSTATEF(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDCS_ENABLEDVISIBLE: CDCONTROLSTATEF = CDCONTROLSTATEF(3i32);
impl ::core::marker::Copy for CDCONTROLSTATEF {}
impl ::core::clone::Clone for CDCONTROLSTATEF {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for CDCONTROLSTATEF {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for CDCONTROLSTATEF {
type Abi = Self;
}
impl ::core::fmt::Debug for CDCONTROLSTATEF {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("CDCONTROLSTATEF").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct CM_ENUM_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CM_ENUM_ALL: CM_ENUM_FLAGS = CM_ENUM_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CM_ENUM_VISIBLE: CM_ENUM_FLAGS = CM_ENUM_FLAGS(2i32);
impl ::core::marker::Copy for CM_ENUM_FLAGS {}
impl ::core::clone::Clone for CM_ENUM_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for CM_ENUM_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for CM_ENUM_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for CM_ENUM_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("CM_ENUM_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct CM_MASK(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CM_MASK_WIDTH: CM_MASK = CM_MASK(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CM_MASK_DEFAULTWIDTH: CM_MASK = CM_MASK(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CM_MASK_IDEALWIDTH: CM_MASK = CM_MASK(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CM_MASK_NAME: CM_MASK = CM_MASK(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CM_MASK_STATE: CM_MASK = CM_MASK(16i32);
impl ::core::marker::Copy for CM_MASK {}
impl ::core::clone::Clone for CM_MASK {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for CM_MASK {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for CM_MASK {
type Abi = Self;
}
impl ::core::fmt::Debug for CM_MASK {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("CM_MASK").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct CM_SET_WIDTH_VALUE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CM_WIDTH_USEDEFAULT: CM_SET_WIDTH_VALUE = CM_SET_WIDTH_VALUE(-1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CM_WIDTH_AUTOSIZE: CM_SET_WIDTH_VALUE = CM_SET_WIDTH_VALUE(-2i32);
impl ::core::marker::Copy for CM_SET_WIDTH_VALUE {}
impl ::core::clone::Clone for CM_SET_WIDTH_VALUE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for CM_SET_WIDTH_VALUE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for CM_SET_WIDTH_VALUE {
type Abi = Self;
}
impl ::core::fmt::Debug for CM_SET_WIDTH_VALUE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("CM_SET_WIDTH_VALUE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct CM_STATE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CM_STATE_NONE: CM_STATE = CM_STATE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CM_STATE_VISIBLE: CM_STATE = CM_STATE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CM_STATE_FIXEDWIDTH: CM_STATE = CM_STATE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CM_STATE_NOSORTBYFOLDERNESS: CM_STATE = CM_STATE(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CM_STATE_ALWAYSVISIBLE: CM_STATE = CM_STATE(8i32);
impl ::core::marker::Copy for CM_STATE {}
impl ::core::clone::Clone for CM_STATE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for CM_STATE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for CM_STATE {
type Abi = Self;
}
impl ::core::fmt::Debug for CM_STATE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("CM_STATE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct CPVIEW(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPVIEW_CLASSIC: CPVIEW = CPVIEW(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPVIEW_ALLITEMS: CPVIEW = CPVIEW(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPVIEW_CATEGORY: CPVIEW = CPVIEW(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPVIEW_HOME: CPVIEW = CPVIEW(1i32);
impl ::core::marker::Copy for CPVIEW {}
impl ::core::clone::Clone for CPVIEW {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for CPVIEW {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for CPVIEW {
type Abi = Self;
}
impl ::core::fmt::Debug for CPVIEW {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("CPVIEW").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPAO_NONE: CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS = CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPAO_EMPTY_LOCAL: CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS = CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPAO_EMPTY_CONNECTED: CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS = CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS(2i32);
impl ::core::marker::Copy for CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS {}
impl ::core::clone::Clone for CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS {
type Abi = Self;
}
impl ::core::fmt::Debug for CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPCFO_NONE: CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS = CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPCFO_ENABLE_PASSWORD_REVEAL: CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS = CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPCFO_IS_EMAIL_ADDRESS: CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS = CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPCFO_ENABLE_TOUCH_KEYBOARD_AUTO_INVOKE: CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS = CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPCFO_NUMBERS_ONLY: CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS = CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPCFO_SHOW_ENGLISH_KEYBOARD: CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS = CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS(16i32);
impl ::core::marker::Copy for CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS {}
impl ::core::clone::Clone for CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS {
type Abi = Self;
}
impl ::core::fmt::Debug for CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFIS_NONE: CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE = CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFIS_READONLY: CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE = CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFIS_DISABLED: CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE = CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFIS_FOCUSED: CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE = CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE(3i32);
impl ::core::marker::Copy for CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE {}
impl ::core::clone::Clone for CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE {
type Abi = Self;
}
impl ::core::fmt::Debug for CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct CREDENTIAL_PROVIDER_FIELD_STATE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFS_HIDDEN: CREDENTIAL_PROVIDER_FIELD_STATE = CREDENTIAL_PROVIDER_FIELD_STATE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFS_DISPLAY_IN_SELECTED_TILE: CREDENTIAL_PROVIDER_FIELD_STATE = CREDENTIAL_PROVIDER_FIELD_STATE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFS_DISPLAY_IN_DESELECTED_TILE: CREDENTIAL_PROVIDER_FIELD_STATE = CREDENTIAL_PROVIDER_FIELD_STATE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFS_DISPLAY_IN_BOTH: CREDENTIAL_PROVIDER_FIELD_STATE = CREDENTIAL_PROVIDER_FIELD_STATE(3i32);
impl ::core::marker::Copy for CREDENTIAL_PROVIDER_FIELD_STATE {}
impl ::core::clone::Clone for CREDENTIAL_PROVIDER_FIELD_STATE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for CREDENTIAL_PROVIDER_FIELD_STATE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for CREDENTIAL_PROVIDER_FIELD_STATE {
type Abi = Self;
}
impl ::core::fmt::Debug for CREDENTIAL_PROVIDER_FIELD_STATE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("CREDENTIAL_PROVIDER_FIELD_STATE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct CREDENTIAL_PROVIDER_FIELD_TYPE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFT_INVALID: CREDENTIAL_PROVIDER_FIELD_TYPE = CREDENTIAL_PROVIDER_FIELD_TYPE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFT_LARGE_TEXT: CREDENTIAL_PROVIDER_FIELD_TYPE = CREDENTIAL_PROVIDER_FIELD_TYPE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFT_SMALL_TEXT: CREDENTIAL_PROVIDER_FIELD_TYPE = CREDENTIAL_PROVIDER_FIELD_TYPE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFT_COMMAND_LINK: CREDENTIAL_PROVIDER_FIELD_TYPE = CREDENTIAL_PROVIDER_FIELD_TYPE(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFT_EDIT_TEXT: CREDENTIAL_PROVIDER_FIELD_TYPE = CREDENTIAL_PROVIDER_FIELD_TYPE(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFT_PASSWORD_TEXT: CREDENTIAL_PROVIDER_FIELD_TYPE = CREDENTIAL_PROVIDER_FIELD_TYPE(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFT_TILE_IMAGE: CREDENTIAL_PROVIDER_FIELD_TYPE = CREDENTIAL_PROVIDER_FIELD_TYPE(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFT_CHECKBOX: CREDENTIAL_PROVIDER_FIELD_TYPE = CREDENTIAL_PROVIDER_FIELD_TYPE(7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFT_COMBOBOX: CREDENTIAL_PROVIDER_FIELD_TYPE = CREDENTIAL_PROVIDER_FIELD_TYPE(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPFT_SUBMIT_BUTTON: CREDENTIAL_PROVIDER_FIELD_TYPE = CREDENTIAL_PROVIDER_FIELD_TYPE(9i32);
impl ::core::marker::Copy for CREDENTIAL_PROVIDER_FIELD_TYPE {}
impl ::core::clone::Clone for CREDENTIAL_PROVIDER_FIELD_TYPE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for CREDENTIAL_PROVIDER_FIELD_TYPE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for CREDENTIAL_PROVIDER_FIELD_TYPE {
type Abi = Self;
}
impl ::core::fmt::Debug for CREDENTIAL_PROVIDER_FIELD_TYPE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("CREDENTIAL_PROVIDER_FIELD_TYPE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPGSR_NO_CREDENTIAL_NOT_FINISHED: CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE = CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPGSR_NO_CREDENTIAL_FINISHED: CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE = CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPGSR_RETURN_CREDENTIAL_FINISHED: CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE = CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPGSR_RETURN_NO_CREDENTIAL_FINISHED: CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE = CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE(3i32);
impl ::core::marker::Copy for CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE {}
impl ::core::clone::Clone for CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE {
type Abi = Self;
}
impl ::core::fmt::Debug for CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct CREDENTIAL_PROVIDER_STATUS_ICON(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPSI_NONE: CREDENTIAL_PROVIDER_STATUS_ICON = CREDENTIAL_PROVIDER_STATUS_ICON(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPSI_ERROR: CREDENTIAL_PROVIDER_STATUS_ICON = CREDENTIAL_PROVIDER_STATUS_ICON(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPSI_WARNING: CREDENTIAL_PROVIDER_STATUS_ICON = CREDENTIAL_PROVIDER_STATUS_ICON(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPSI_SUCCESS: CREDENTIAL_PROVIDER_STATUS_ICON = CREDENTIAL_PROVIDER_STATUS_ICON(3i32);
impl ::core::marker::Copy for CREDENTIAL_PROVIDER_STATUS_ICON {}
impl ::core::clone::Clone for CREDENTIAL_PROVIDER_STATUS_ICON {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for CREDENTIAL_PROVIDER_STATUS_ICON {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for CREDENTIAL_PROVIDER_STATUS_ICON {
type Abi = Self;
}
impl ::core::fmt::Debug for CREDENTIAL_PROVIDER_STATUS_ICON {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("CREDENTIAL_PROVIDER_STATUS_ICON").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct CREDENTIAL_PROVIDER_USAGE_SCENARIO(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPUS_INVALID: CREDENTIAL_PROVIDER_USAGE_SCENARIO = CREDENTIAL_PROVIDER_USAGE_SCENARIO(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPUS_LOGON: CREDENTIAL_PROVIDER_USAGE_SCENARIO = CREDENTIAL_PROVIDER_USAGE_SCENARIO(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPUS_UNLOCK_WORKSTATION: CREDENTIAL_PROVIDER_USAGE_SCENARIO = CREDENTIAL_PROVIDER_USAGE_SCENARIO(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPUS_CHANGE_PASSWORD: CREDENTIAL_PROVIDER_USAGE_SCENARIO = CREDENTIAL_PROVIDER_USAGE_SCENARIO(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPUS_CREDUI: CREDENTIAL_PROVIDER_USAGE_SCENARIO = CREDENTIAL_PROVIDER_USAGE_SCENARIO(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CPUS_PLAP: CREDENTIAL_PROVIDER_USAGE_SCENARIO = CREDENTIAL_PROVIDER_USAGE_SCENARIO(5i32);
impl ::core::marker::Copy for CREDENTIAL_PROVIDER_USAGE_SCENARIO {}
impl ::core::clone::Clone for CREDENTIAL_PROVIDER_USAGE_SCENARIO {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for CREDENTIAL_PROVIDER_USAGE_SCENARIO {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for CREDENTIAL_PROVIDER_USAGE_SCENARIO {
type Abi = Self;
}
impl ::core::fmt::Debug for CREDENTIAL_PROVIDER_USAGE_SCENARIO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("CREDENTIAL_PROVIDER_USAGE_SCENARIO").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct CommandStateChangeConstants(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSC_UPDATECOMMANDS: CommandStateChangeConstants = CommandStateChangeConstants(-1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSC_NAVIGATEFORWARD: CommandStateChangeConstants = CommandStateChangeConstants(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CSC_NAVIGATEBACK: CommandStateChangeConstants = CommandStateChangeConstants(2i32);
impl ::core::marker::Copy for CommandStateChangeConstants {}
impl ::core::clone::Clone for CommandStateChangeConstants {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for CommandStateChangeConstants {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for CommandStateChangeConstants {
type Abi = Self;
}
impl ::core::fmt::Debug for CommandStateChangeConstants {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("CommandStateChangeConstants").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct DATAOBJ_GET_ITEM_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DOGIF_DEFAULT: DATAOBJ_GET_ITEM_FLAGS = DATAOBJ_GET_ITEM_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DOGIF_TRAVERSE_LINK: DATAOBJ_GET_ITEM_FLAGS = DATAOBJ_GET_ITEM_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DOGIF_NO_HDROP: DATAOBJ_GET_ITEM_FLAGS = DATAOBJ_GET_ITEM_FLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DOGIF_NO_URL: DATAOBJ_GET_ITEM_FLAGS = DATAOBJ_GET_ITEM_FLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DOGIF_ONLY_IF_ONE: DATAOBJ_GET_ITEM_FLAGS = DATAOBJ_GET_ITEM_FLAGS(8i32);
impl ::core::marker::Copy for DATAOBJ_GET_ITEM_FLAGS {}
impl ::core::clone::Clone for DATAOBJ_GET_ITEM_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for DATAOBJ_GET_ITEM_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for DATAOBJ_GET_ITEM_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for DATAOBJ_GET_ITEM_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DATAOBJ_GET_ITEM_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct DEFAULTSAVEFOLDERTYPE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DSFT_DETECT: DEFAULTSAVEFOLDERTYPE = DEFAULTSAVEFOLDERTYPE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DSFT_PRIVATE: DEFAULTSAVEFOLDERTYPE = DEFAULTSAVEFOLDERTYPE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DSFT_PUBLIC: DEFAULTSAVEFOLDERTYPE = DEFAULTSAVEFOLDERTYPE(3i32);
impl ::core::marker::Copy for DEFAULTSAVEFOLDERTYPE {}
impl ::core::clone::Clone for DEFAULTSAVEFOLDERTYPE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for DEFAULTSAVEFOLDERTYPE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for DEFAULTSAVEFOLDERTYPE {
type Abi = Self;
}
impl ::core::fmt::Debug for DEFAULTSAVEFOLDERTYPE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DEFAULTSAVEFOLDERTYPE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct DEFAULT_FOLDER_MENU_RESTRICTIONS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFMR_DEFAULT: DEFAULT_FOLDER_MENU_RESTRICTIONS = DEFAULT_FOLDER_MENU_RESTRICTIONS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFMR_NO_STATIC_VERBS: DEFAULT_FOLDER_MENU_RESTRICTIONS = DEFAULT_FOLDER_MENU_RESTRICTIONS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFMR_STATIC_VERBS_ONLY: DEFAULT_FOLDER_MENU_RESTRICTIONS = DEFAULT_FOLDER_MENU_RESTRICTIONS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFMR_NO_RESOURCE_VERBS: DEFAULT_FOLDER_MENU_RESTRICTIONS = DEFAULT_FOLDER_MENU_RESTRICTIONS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFMR_OPTIN_HANDLERS_ONLY: DEFAULT_FOLDER_MENU_RESTRICTIONS = DEFAULT_FOLDER_MENU_RESTRICTIONS(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFMR_RESOURCE_AND_FOLDER_VERBS_ONLY: DEFAULT_FOLDER_MENU_RESTRICTIONS = DEFAULT_FOLDER_MENU_RESTRICTIONS(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFMR_USE_SPECIFIED_HANDLERS: DEFAULT_FOLDER_MENU_RESTRICTIONS = DEFAULT_FOLDER_MENU_RESTRICTIONS(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFMR_USE_SPECIFIED_VERBS: DEFAULT_FOLDER_MENU_RESTRICTIONS = DEFAULT_FOLDER_MENU_RESTRICTIONS(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFMR_NO_ASYNC_VERBS: DEFAULT_FOLDER_MENU_RESTRICTIONS = DEFAULT_FOLDER_MENU_RESTRICTIONS(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFMR_NO_NATIVECPU_VERBS: DEFAULT_FOLDER_MENU_RESTRICTIONS = DEFAULT_FOLDER_MENU_RESTRICTIONS(2048i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFMR_NO_NONWOW_VERBS: DEFAULT_FOLDER_MENU_RESTRICTIONS = DEFAULT_FOLDER_MENU_RESTRICTIONS(4096i32);
impl ::core::marker::Copy for DEFAULT_FOLDER_MENU_RESTRICTIONS {}
impl ::core::clone::Clone for DEFAULT_FOLDER_MENU_RESTRICTIONS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for DEFAULT_FOLDER_MENU_RESTRICTIONS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for DEFAULT_FOLDER_MENU_RESTRICTIONS {
type Abi = Self;
}
impl ::core::fmt::Debug for DEFAULT_FOLDER_MENU_RESTRICTIONS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DEFAULT_FOLDER_MENU_RESTRICTIONS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct DEF_SHARE_ID(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DEFSHAREID_USERS: DEF_SHARE_ID = DEF_SHARE_ID(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DEFSHAREID_PUBLIC: DEF_SHARE_ID = DEF_SHARE_ID(2i32);
impl ::core::marker::Copy for DEF_SHARE_ID {}
impl ::core::clone::Clone for DEF_SHARE_ID {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for DEF_SHARE_ID {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for DEF_SHARE_ID {
type Abi = Self;
}
impl ::core::fmt::Debug for DEF_SHARE_ID {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DEF_SHARE_ID").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct DESKBANDCID(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBID_BANDINFOCHANGED: DESKBANDCID = DESKBANDCID(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBID_SHOWONLY: DESKBANDCID = DESKBANDCID(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBID_MAXIMIZEBAND: DESKBANDCID = DESKBANDCID(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBID_PUSHCHEVRON: DESKBANDCID = DESKBANDCID(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBID_DELAYINIT: DESKBANDCID = DESKBANDCID(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBID_FINISHINIT: DESKBANDCID = DESKBANDCID(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBID_SETWINDOWTHEME: DESKBANDCID = DESKBANDCID(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DBID_PERMITAUTOHIDE: DESKBANDCID = DESKBANDCID(7i32);
impl ::core::marker::Copy for DESKBANDCID {}
impl ::core::clone::Clone for DESKBANDCID {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for DESKBANDCID {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for DESKBANDCID {
type Abi = Self;
}
impl ::core::fmt::Debug for DESKBANDCID {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DESKBANDCID").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct DESKTOP_SLIDESHOW_DIRECTION(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DSD_FORWARD: DESKTOP_SLIDESHOW_DIRECTION = DESKTOP_SLIDESHOW_DIRECTION(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DSD_BACKWARD: DESKTOP_SLIDESHOW_DIRECTION = DESKTOP_SLIDESHOW_DIRECTION(1i32);
impl ::core::marker::Copy for DESKTOP_SLIDESHOW_DIRECTION {}
impl ::core::clone::Clone for DESKTOP_SLIDESHOW_DIRECTION {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for DESKTOP_SLIDESHOW_DIRECTION {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for DESKTOP_SLIDESHOW_DIRECTION {
type Abi = Self;
}
impl ::core::fmt::Debug for DESKTOP_SLIDESHOW_DIRECTION {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DESKTOP_SLIDESHOW_DIRECTION").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct DESKTOP_SLIDESHOW_OPTIONS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DSO_SHUFFLEIMAGES: DESKTOP_SLIDESHOW_OPTIONS = DESKTOP_SLIDESHOW_OPTIONS(1i32);
impl ::core::marker::Copy for DESKTOP_SLIDESHOW_OPTIONS {}
impl ::core::clone::Clone for DESKTOP_SLIDESHOW_OPTIONS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for DESKTOP_SLIDESHOW_OPTIONS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for DESKTOP_SLIDESHOW_OPTIONS {
type Abi = Self;
}
impl ::core::fmt::Debug for DESKTOP_SLIDESHOW_OPTIONS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DESKTOP_SLIDESHOW_OPTIONS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct DESKTOP_SLIDESHOW_STATE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DSS_ENABLED: DESKTOP_SLIDESHOW_STATE = DESKTOP_SLIDESHOW_STATE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DSS_SLIDESHOW: DESKTOP_SLIDESHOW_STATE = DESKTOP_SLIDESHOW_STATE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DSS_DISABLED_BY_REMOTE_SESSION: DESKTOP_SLIDESHOW_STATE = DESKTOP_SLIDESHOW_STATE(4i32);
impl ::core::marker::Copy for DESKTOP_SLIDESHOW_STATE {}
impl ::core::clone::Clone for DESKTOP_SLIDESHOW_STATE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for DESKTOP_SLIDESHOW_STATE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for DESKTOP_SLIDESHOW_STATE {
type Abi = Self;
}
impl ::core::fmt::Debug for DESKTOP_SLIDESHOW_STATE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DESKTOP_SLIDESHOW_STATE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct DESKTOP_WALLPAPER_POSITION(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DWPOS_CENTER: DESKTOP_WALLPAPER_POSITION = DESKTOP_WALLPAPER_POSITION(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DWPOS_TILE: DESKTOP_WALLPAPER_POSITION = DESKTOP_WALLPAPER_POSITION(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DWPOS_STRETCH: DESKTOP_WALLPAPER_POSITION = DESKTOP_WALLPAPER_POSITION(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DWPOS_FIT: DESKTOP_WALLPAPER_POSITION = DESKTOP_WALLPAPER_POSITION(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DWPOS_FILL: DESKTOP_WALLPAPER_POSITION = DESKTOP_WALLPAPER_POSITION(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DWPOS_SPAN: DESKTOP_WALLPAPER_POSITION = DESKTOP_WALLPAPER_POSITION(5i32);
impl ::core::marker::Copy for DESKTOP_WALLPAPER_POSITION {}
impl ::core::clone::Clone for DESKTOP_WALLPAPER_POSITION {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for DESKTOP_WALLPAPER_POSITION {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for DESKTOP_WALLPAPER_POSITION {
type Abi = Self;
}
impl ::core::fmt::Debug for DESKTOP_WALLPAPER_POSITION {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DESKTOP_WALLPAPER_POSITION").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct DFM_CMD(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_CMD_DELETE: DFM_CMD = DFM_CMD(-1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_CMD_MOVE: DFM_CMD = DFM_CMD(-2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_CMD_COPY: DFM_CMD = DFM_CMD(-3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_CMD_LINK: DFM_CMD = DFM_CMD(-4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_CMD_PROPERTIES: DFM_CMD = DFM_CMD(-5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_CMD_NEWFOLDER: DFM_CMD = DFM_CMD(-6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_CMD_PASTE: DFM_CMD = DFM_CMD(-7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_CMD_VIEWLIST: DFM_CMD = DFM_CMD(-8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_CMD_VIEWDETAILS: DFM_CMD = DFM_CMD(-9i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_CMD_PASTELINK: DFM_CMD = DFM_CMD(-10i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_CMD_PASTESPECIAL: DFM_CMD = DFM_CMD(-11i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_CMD_MODALPROP: DFM_CMD = DFM_CMD(-12i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_CMD_RENAME: DFM_CMD = DFM_CMD(-13i32);
impl ::core::marker::Copy for DFM_CMD {}
impl ::core::clone::Clone for DFM_CMD {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for DFM_CMD {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for DFM_CMD {
type Abi = Self;
}
impl ::core::fmt::Debug for DFM_CMD {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DFM_CMD").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct DFM_MESSAGE_ID(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_MERGECONTEXTMENU: DFM_MESSAGE_ID = DFM_MESSAGE_ID(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_INVOKECOMMAND: DFM_MESSAGE_ID = DFM_MESSAGE_ID(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_GETHELPTEXT: DFM_MESSAGE_ID = DFM_MESSAGE_ID(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_WM_MEASUREITEM: DFM_MESSAGE_ID = DFM_MESSAGE_ID(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_WM_DRAWITEM: DFM_MESSAGE_ID = DFM_MESSAGE_ID(7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_WM_INITMENUPOPUP: DFM_MESSAGE_ID = DFM_MESSAGE_ID(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_VALIDATECMD: DFM_MESSAGE_ID = DFM_MESSAGE_ID(9i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_MERGECONTEXTMENU_TOP: DFM_MESSAGE_ID = DFM_MESSAGE_ID(10i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_GETHELPTEXTW: DFM_MESSAGE_ID = DFM_MESSAGE_ID(11i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_INVOKECOMMANDEX: DFM_MESSAGE_ID = DFM_MESSAGE_ID(12i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_MAPCOMMANDNAME: DFM_MESSAGE_ID = DFM_MESSAGE_ID(13i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_GETDEFSTATICID: DFM_MESSAGE_ID = DFM_MESSAGE_ID(14i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_GETVERBW: DFM_MESSAGE_ID = DFM_MESSAGE_ID(15i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_GETVERBA: DFM_MESSAGE_ID = DFM_MESSAGE_ID(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_MERGECONTEXTMENU_BOTTOM: DFM_MESSAGE_ID = DFM_MESSAGE_ID(17i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DFM_MODIFYQCMFLAGS: DFM_MESSAGE_ID = DFM_MESSAGE_ID(18i32);
impl ::core::marker::Copy for DFM_MESSAGE_ID {}
impl ::core::clone::Clone for DFM_MESSAGE_ID {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for DFM_MESSAGE_ID {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for DFM_MESSAGE_ID {
type Abi = Self;
}
impl ::core::fmt::Debug for DFM_MESSAGE_ID {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DFM_MESSAGE_ID").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct DISPLAY_DEVICE_TYPE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DEVICE_PRIMARY: DISPLAY_DEVICE_TYPE = DISPLAY_DEVICE_TYPE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DEVICE_IMMERSIVE: DISPLAY_DEVICE_TYPE = DISPLAY_DEVICE_TYPE(1i32);
impl ::core::marker::Copy for DISPLAY_DEVICE_TYPE {}
impl ::core::clone::Clone for DISPLAY_DEVICE_TYPE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for DISPLAY_DEVICE_TYPE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for DISPLAY_DEVICE_TYPE {
type Abi = Self;
}
impl ::core::fmt::Debug for DISPLAY_DEVICE_TYPE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DISPLAY_DEVICE_TYPE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct DROPIMAGETYPE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DROPIMAGE_INVALID: DROPIMAGETYPE = DROPIMAGETYPE(-1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DROPIMAGE_NONE: DROPIMAGETYPE = DROPIMAGETYPE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DROPIMAGE_COPY: DROPIMAGETYPE = DROPIMAGETYPE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DROPIMAGE_MOVE: DROPIMAGETYPE = DROPIMAGETYPE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DROPIMAGE_LINK: DROPIMAGETYPE = DROPIMAGETYPE(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DROPIMAGE_LABEL: DROPIMAGETYPE = DROPIMAGETYPE(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DROPIMAGE_WARNING: DROPIMAGETYPE = DROPIMAGETYPE(7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DROPIMAGE_NOIMAGE: DROPIMAGETYPE = DROPIMAGETYPE(8i32);
impl ::core::marker::Copy for DROPIMAGETYPE {}
impl ::core::clone::Clone for DROPIMAGETYPE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for DROPIMAGETYPE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for DROPIMAGETYPE {
type Abi = Self;
}
impl ::core::fmt::Debug for DROPIMAGETYPE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DROPIMAGETYPE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct DSH_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const DSH_ALLOWDROPDESCRIPTIONTEXT: DSH_FLAGS = DSH_FLAGS(1i32);
impl ::core::marker::Copy for DSH_FLAGS {}
impl ::core::clone::Clone for DSH_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for DSH_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for DSH_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for DSH_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("DSH_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct EC_HOST_UI_MODE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECHUIM_DESKTOP: EC_HOST_UI_MODE = EC_HOST_UI_MODE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECHUIM_IMMERSIVE: EC_HOST_UI_MODE = EC_HOST_UI_MODE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECHUIM_SYSTEM_LAUNCHER: EC_HOST_UI_MODE = EC_HOST_UI_MODE(2i32);
impl ::core::marker::Copy for EC_HOST_UI_MODE {}
impl ::core::clone::Clone for EC_HOST_UI_MODE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for EC_HOST_UI_MODE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for EC_HOST_UI_MODE {
type Abi = Self;
}
impl ::core::fmt::Debug for EC_HOST_UI_MODE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("EC_HOST_UI_MODE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct EDGE_GESTURE_KIND(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EGK_TOUCH: EDGE_GESTURE_KIND = EDGE_GESTURE_KIND(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EGK_KEYBOARD: EDGE_GESTURE_KIND = EDGE_GESTURE_KIND(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EGK_MOUSE: EDGE_GESTURE_KIND = EDGE_GESTURE_KIND(2i32);
impl ::core::marker::Copy for EDGE_GESTURE_KIND {}
impl ::core::clone::Clone for EDGE_GESTURE_KIND {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for EDGE_GESTURE_KIND {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for EDGE_GESTURE_KIND {
type Abi = Self;
}
impl ::core::fmt::Debug for EDGE_GESTURE_KIND {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("EDGE_GESTURE_KIND").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct EXPLORER_BROWSER_FILL_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EBF_NONE: EXPLORER_BROWSER_FILL_FLAGS = EXPLORER_BROWSER_FILL_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EBF_SELECTFROMDATAOBJECT: EXPLORER_BROWSER_FILL_FLAGS = EXPLORER_BROWSER_FILL_FLAGS(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EBF_NODROPTARGET: EXPLORER_BROWSER_FILL_FLAGS = EXPLORER_BROWSER_FILL_FLAGS(512i32);
impl ::core::marker::Copy for EXPLORER_BROWSER_FILL_FLAGS {}
impl ::core::clone::Clone for EXPLORER_BROWSER_FILL_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for EXPLORER_BROWSER_FILL_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for EXPLORER_BROWSER_FILL_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for EXPLORER_BROWSER_FILL_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("EXPLORER_BROWSER_FILL_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct EXPLORER_BROWSER_OPTIONS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EBO_NONE: EXPLORER_BROWSER_OPTIONS = EXPLORER_BROWSER_OPTIONS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EBO_NAVIGATEONCE: EXPLORER_BROWSER_OPTIONS = EXPLORER_BROWSER_OPTIONS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EBO_SHOWFRAMES: EXPLORER_BROWSER_OPTIONS = EXPLORER_BROWSER_OPTIONS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EBO_ALWAYSNAVIGATE: EXPLORER_BROWSER_OPTIONS = EXPLORER_BROWSER_OPTIONS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EBO_NOTRAVELLOG: EXPLORER_BROWSER_OPTIONS = EXPLORER_BROWSER_OPTIONS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EBO_NOWRAPPERWINDOW: EXPLORER_BROWSER_OPTIONS = EXPLORER_BROWSER_OPTIONS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EBO_HTMLSHAREPOINTVIEW: EXPLORER_BROWSER_OPTIONS = EXPLORER_BROWSER_OPTIONS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EBO_NOBORDER: EXPLORER_BROWSER_OPTIONS = EXPLORER_BROWSER_OPTIONS(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EBO_NOPERSISTVIEWSTATE: EXPLORER_BROWSER_OPTIONS = EXPLORER_BROWSER_OPTIONS(128i32);
impl ::core::marker::Copy for EXPLORER_BROWSER_OPTIONS {}
impl ::core::clone::Clone for EXPLORER_BROWSER_OPTIONS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for EXPLORER_BROWSER_OPTIONS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for EXPLORER_BROWSER_OPTIONS {
type Abi = Self;
}
impl ::core::fmt::Debug for EXPLORER_BROWSER_OPTIONS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("EXPLORER_BROWSER_OPTIONS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct FDAP(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FDAP_BOTTOM: FDAP = FDAP(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FDAP_TOP: FDAP = FDAP(1i32);
impl ::core::marker::Copy for FDAP {}
impl ::core::clone::Clone for FDAP {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for FDAP {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for FDAP {
type Abi = Self;
}
impl ::core::fmt::Debug for FDAP {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FDAP").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct FDE_OVERWRITE_RESPONSE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FDEOR_DEFAULT: FDE_OVERWRITE_RESPONSE = FDE_OVERWRITE_RESPONSE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FDEOR_ACCEPT: FDE_OVERWRITE_RESPONSE = FDE_OVERWRITE_RESPONSE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FDEOR_REFUSE: FDE_OVERWRITE_RESPONSE = FDE_OVERWRITE_RESPONSE(2i32);
impl ::core::marker::Copy for FDE_OVERWRITE_RESPONSE {}
impl ::core::clone::Clone for FDE_OVERWRITE_RESPONSE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for FDE_OVERWRITE_RESPONSE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for FDE_OVERWRITE_RESPONSE {
type Abi = Self;
}
impl ::core::fmt::Debug for FDE_OVERWRITE_RESPONSE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FDE_OVERWRITE_RESPONSE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct FDE_SHAREVIOLATION_RESPONSE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FDESVR_DEFAULT: FDE_SHAREVIOLATION_RESPONSE = FDE_SHAREVIOLATION_RESPONSE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FDESVR_ACCEPT: FDE_SHAREVIOLATION_RESPONSE = FDE_SHAREVIOLATION_RESPONSE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FDESVR_REFUSE: FDE_SHAREVIOLATION_RESPONSE = FDE_SHAREVIOLATION_RESPONSE(2i32);
impl ::core::marker::Copy for FDE_SHAREVIOLATION_RESPONSE {}
impl ::core::clone::Clone for FDE_SHAREVIOLATION_RESPONSE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for FDE_SHAREVIOLATION_RESPONSE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for FDE_SHAREVIOLATION_RESPONSE {
type Abi = Self;
}
impl ::core::fmt::Debug for FDE_SHAREVIOLATION_RESPONSE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FDE_SHAREVIOLATION_RESPONSE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct FD_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FD_CLSID: FD_FLAGS = FD_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FD_SIZEPOINT: FD_FLAGS = FD_FLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FD_ATTRIBUTES: FD_FLAGS = FD_FLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FD_CREATETIME: FD_FLAGS = FD_FLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FD_ACCESSTIME: FD_FLAGS = FD_FLAGS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FD_WRITESTIME: FD_FLAGS = FD_FLAGS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FD_FILESIZE: FD_FLAGS = FD_FLAGS(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FD_PROGRESSUI: FD_FLAGS = FD_FLAGS(16384i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FD_LINKUI: FD_FLAGS = FD_FLAGS(32768i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FD_UNICODE: FD_FLAGS = FD_FLAGS(-2147483648i32);
impl ::core::marker::Copy for FD_FLAGS {}
impl ::core::clone::Clone for FD_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for FD_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for FD_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for FD_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FD_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct FFFP_MODE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FFFP_EXACTMATCH: FFFP_MODE = FFFP_MODE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FFFP_NEARESTPARENTMATCH: FFFP_MODE = FFFP_MODE(1i32);
impl ::core::marker::Copy for FFFP_MODE {}
impl ::core::clone::Clone for FFFP_MODE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for FFFP_MODE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for FFFP_MODE {
type Abi = Self;
}
impl ::core::fmt::Debug for FFFP_MODE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FFFP_MODE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct FILEOPENDIALOGOPTIONS(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_OVERWRITEPROMPT: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(2u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_STRICTFILETYPES: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(4u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_NOCHANGEDIR: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(8u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_PICKFOLDERS: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(32u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_FORCEFILESYSTEM: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(64u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_ALLNONSTORAGEITEMS: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(128u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_NOVALIDATE: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(256u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_ALLOWMULTISELECT: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(512u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_PATHMUSTEXIST: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(2048u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_FILEMUSTEXIST: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(4096u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_CREATEPROMPT: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(8192u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_SHAREAWARE: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(16384u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_NOREADONLYRETURN: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(32768u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_NOTESTFILECREATE: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(65536u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_HIDEMRUPLACES: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(131072u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_HIDEPINNEDPLACES: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(262144u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_NODEREFERENCELINKS: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(1048576u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_OKBUTTONNEEDSINTERACTION: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(2097152u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_DONTADDTORECENT: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(33554432u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_FORCESHOWHIDDEN: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(268435456u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_DEFAULTNOMINIMODE: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(536870912u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_FORCEPREVIEWPANEON: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(1073741824u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOS_SUPPORTSTREAMABLEITEMS: FILEOPENDIALOGOPTIONS = FILEOPENDIALOGOPTIONS(2147483648u32);
impl ::core::marker::Copy for FILEOPENDIALOGOPTIONS {}
impl ::core::clone::Clone for FILEOPENDIALOGOPTIONS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for FILEOPENDIALOGOPTIONS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for FILEOPENDIALOGOPTIONS {
type Abi = Self;
}
impl ::core::fmt::Debug for FILEOPENDIALOGOPTIONS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FILEOPENDIALOGOPTIONS").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for FILEOPENDIALOGOPTIONS {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for FILEOPENDIALOGOPTIONS {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for FILEOPENDIALOGOPTIONS {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for FILEOPENDIALOGOPTIONS {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for FILEOPENDIALOGOPTIONS {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct FILETYPEATTRIBUTEFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_None: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_Exclude: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_Show: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_HasExtension: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_NoEdit: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_NoRemove: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_NoNewVerb: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_NoEditVerb: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_NoRemoveVerb: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_NoEditDesc: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_NoEditIcon: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_NoEditDflt: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_NoEditVerbCmd: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(2048i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_NoEditVerbExe: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(4096i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_NoDDE: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(8192i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_NoEditMIME: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(32768i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_OpenIsSafe: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(65536i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_AlwaysUnsafe: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(131072i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_NoRecentDocs: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(1048576i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_SafeForElevation: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(2097152i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FTA_AlwaysUseDirectInvoke: FILETYPEATTRIBUTEFLAGS = FILETYPEATTRIBUTEFLAGS(4194304i32);
impl ::core::marker::Copy for FILETYPEATTRIBUTEFLAGS {}
impl ::core::clone::Clone for FILETYPEATTRIBUTEFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for FILETYPEATTRIBUTEFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for FILETYPEATTRIBUTEFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for FILETYPEATTRIBUTEFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FILETYPEATTRIBUTEFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct FILE_OPERATION_FLAGS2(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOF2_NONE: FILE_OPERATION_FLAGS2 = FILE_OPERATION_FLAGS2(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FOF2_MERGEFOLDERSONCOLLISION: FILE_OPERATION_FLAGS2 = FILE_OPERATION_FLAGS2(1i32);
impl ::core::marker::Copy for FILE_OPERATION_FLAGS2 {}
impl ::core::clone::Clone for FILE_OPERATION_FLAGS2 {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for FILE_OPERATION_FLAGS2 {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for FILE_OPERATION_FLAGS2 {
type Abi = Self;
}
impl ::core::fmt::Debug for FILE_OPERATION_FLAGS2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FILE_OPERATION_FLAGS2").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct FILE_USAGE_TYPE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FUT_PLAYING: FILE_USAGE_TYPE = FILE_USAGE_TYPE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FUT_EDITING: FILE_USAGE_TYPE = FILE_USAGE_TYPE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FUT_GENERIC: FILE_USAGE_TYPE = FILE_USAGE_TYPE(2i32);
impl ::core::marker::Copy for FILE_USAGE_TYPE {}
impl ::core::clone::Clone for FILE_USAGE_TYPE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for FILE_USAGE_TYPE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for FILE_USAGE_TYPE {
type Abi = Self;
}
impl ::core::fmt::Debug for FILE_USAGE_TYPE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FILE_USAGE_TYPE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct FLYOUT_PLACEMENT(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FP_DEFAULT: FLYOUT_PLACEMENT = FLYOUT_PLACEMENT(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FP_ABOVE: FLYOUT_PLACEMENT = FLYOUT_PLACEMENT(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FP_BELOW: FLYOUT_PLACEMENT = FLYOUT_PLACEMENT(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FP_LEFT: FLYOUT_PLACEMENT = FLYOUT_PLACEMENT(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FP_RIGHT: FLYOUT_PLACEMENT = FLYOUT_PLACEMENT(4i32);
impl ::core::marker::Copy for FLYOUT_PLACEMENT {}
impl ::core::clone::Clone for FLYOUT_PLACEMENT {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for FLYOUT_PLACEMENT {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for FLYOUT_PLACEMENT {
type Abi = Self;
}
impl ::core::fmt::Debug for FLYOUT_PLACEMENT {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FLYOUT_PLACEMENT").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct FOLDERFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_NONE: FOLDERFLAGS = FOLDERFLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_AUTOARRANGE: FOLDERFLAGS = FOLDERFLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_ABBREVIATEDNAMES: FOLDERFLAGS = FOLDERFLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_SNAPTOGRID: FOLDERFLAGS = FOLDERFLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_OWNERDATA: FOLDERFLAGS = FOLDERFLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_BESTFITWINDOW: FOLDERFLAGS = FOLDERFLAGS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_DESKTOP: FOLDERFLAGS = FOLDERFLAGS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_SINGLESEL: FOLDERFLAGS = FOLDERFLAGS(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_NOSUBFOLDERS: FOLDERFLAGS = FOLDERFLAGS(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_TRANSPARENT: FOLDERFLAGS = FOLDERFLAGS(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_NOCLIENTEDGE: FOLDERFLAGS = FOLDERFLAGS(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_NOSCROLL: FOLDERFLAGS = FOLDERFLAGS(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_ALIGNLEFT: FOLDERFLAGS = FOLDERFLAGS(2048i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_NOICONS: FOLDERFLAGS = FOLDERFLAGS(4096i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_SHOWSELALWAYS: FOLDERFLAGS = FOLDERFLAGS(8192i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_NOVISIBLE: FOLDERFLAGS = FOLDERFLAGS(16384i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_SINGLECLICKACTIVATE: FOLDERFLAGS = FOLDERFLAGS(32768i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_NOWEBVIEW: FOLDERFLAGS = FOLDERFLAGS(65536i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_HIDEFILENAMES: FOLDERFLAGS = FOLDERFLAGS(131072i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_CHECKSELECT: FOLDERFLAGS = FOLDERFLAGS(262144i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_NOENUMREFRESH: FOLDERFLAGS = FOLDERFLAGS(524288i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_NOGROUPING: FOLDERFLAGS = FOLDERFLAGS(1048576i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_FULLROWSELECT: FOLDERFLAGS = FOLDERFLAGS(2097152i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_NOFILTERS: FOLDERFLAGS = FOLDERFLAGS(4194304i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_NOCOLUMNHEADER: FOLDERFLAGS = FOLDERFLAGS(8388608i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_NOHEADERINALLVIEWS: FOLDERFLAGS = FOLDERFLAGS(16777216i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_EXTENDEDTILES: FOLDERFLAGS = FOLDERFLAGS(33554432i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_TRICHECKSELECT: FOLDERFLAGS = FOLDERFLAGS(67108864i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_AUTOCHECKSELECT: FOLDERFLAGS = FOLDERFLAGS(134217728i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_NOBROWSERVIEWSTATE: FOLDERFLAGS = FOLDERFLAGS(268435456i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_SUBSETGROUPS: FOLDERFLAGS = FOLDERFLAGS(536870912i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_USESEARCHFOLDER: FOLDERFLAGS = FOLDERFLAGS(1073741824i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FWF_ALLOWRTLREADING: FOLDERFLAGS = FOLDERFLAGS(-2147483648i32);
impl ::core::marker::Copy for FOLDERFLAGS {}
impl ::core::clone::Clone for FOLDERFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for FOLDERFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for FOLDERFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for FOLDERFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FOLDERFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct FOLDERLOGICALVIEWMODE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FLVM_UNSPECIFIED: FOLDERLOGICALVIEWMODE = FOLDERLOGICALVIEWMODE(-1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FLVM_FIRST: FOLDERLOGICALVIEWMODE = FOLDERLOGICALVIEWMODE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FLVM_DETAILS: FOLDERLOGICALVIEWMODE = FOLDERLOGICALVIEWMODE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FLVM_TILES: FOLDERLOGICALVIEWMODE = FOLDERLOGICALVIEWMODE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FLVM_ICONS: FOLDERLOGICALVIEWMODE = FOLDERLOGICALVIEWMODE(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FLVM_LIST: FOLDERLOGICALVIEWMODE = FOLDERLOGICALVIEWMODE(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FLVM_CONTENT: FOLDERLOGICALVIEWMODE = FOLDERLOGICALVIEWMODE(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FLVM_LAST: FOLDERLOGICALVIEWMODE = FOLDERLOGICALVIEWMODE(5i32);
impl ::core::marker::Copy for FOLDERLOGICALVIEWMODE {}
impl ::core::clone::Clone for FOLDERLOGICALVIEWMODE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for FOLDERLOGICALVIEWMODE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for FOLDERLOGICALVIEWMODE {
type Abi = Self;
}
impl ::core::fmt::Debug for FOLDERLOGICALVIEWMODE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FOLDERLOGICALVIEWMODE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct FOLDERVIEWMODE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVM_AUTO: FOLDERVIEWMODE = FOLDERVIEWMODE(-1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVM_FIRST: FOLDERVIEWMODE = FOLDERVIEWMODE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVM_ICON: FOLDERVIEWMODE = FOLDERVIEWMODE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVM_SMALLICON: FOLDERVIEWMODE = FOLDERVIEWMODE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVM_LIST: FOLDERVIEWMODE = FOLDERVIEWMODE(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVM_DETAILS: FOLDERVIEWMODE = FOLDERVIEWMODE(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVM_THUMBNAIL: FOLDERVIEWMODE = FOLDERVIEWMODE(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVM_TILE: FOLDERVIEWMODE = FOLDERVIEWMODE(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVM_THUMBSTRIP: FOLDERVIEWMODE = FOLDERVIEWMODE(7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVM_CONTENT: FOLDERVIEWMODE = FOLDERVIEWMODE(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVM_LAST: FOLDERVIEWMODE = FOLDERVIEWMODE(8i32);
impl ::core::marker::Copy for FOLDERVIEWMODE {}
impl ::core::clone::Clone for FOLDERVIEWMODE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for FOLDERVIEWMODE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for FOLDERVIEWMODE {
type Abi = Self;
}
impl ::core::fmt::Debug for FOLDERVIEWMODE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FOLDERVIEWMODE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct FOLDERVIEWOPTIONS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVO_DEFAULT: FOLDERVIEWOPTIONS = FOLDERVIEWOPTIONS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVO_VISTALAYOUT: FOLDERVIEWOPTIONS = FOLDERVIEWOPTIONS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVO_CUSTOMPOSITION: FOLDERVIEWOPTIONS = FOLDERVIEWOPTIONS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVO_CUSTOMORDERING: FOLDERVIEWOPTIONS = FOLDERVIEWOPTIONS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVO_SUPPORTHYPERLINKS: FOLDERVIEWOPTIONS = FOLDERVIEWOPTIONS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVO_NOANIMATIONS: FOLDERVIEWOPTIONS = FOLDERVIEWOPTIONS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVO_NOSCROLLTIPS: FOLDERVIEWOPTIONS = FOLDERVIEWOPTIONS(32i32);
impl ::core::marker::Copy for FOLDERVIEWOPTIONS {}
impl ::core::clone::Clone for FOLDERVIEWOPTIONS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for FOLDERVIEWOPTIONS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for FOLDERVIEWOPTIONS {
type Abi = Self;
}
impl ::core::fmt::Debug for FOLDERVIEWOPTIONS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FOLDERVIEWOPTIONS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct FOLDER_ENUM_MODE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FEM_VIEWRESULT: FOLDER_ENUM_MODE = FOLDER_ENUM_MODE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FEM_NAVIGATION: FOLDER_ENUM_MODE = FOLDER_ENUM_MODE(1i32);
impl ::core::marker::Copy for FOLDER_ENUM_MODE {}
impl ::core::clone::Clone for FOLDER_ENUM_MODE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for FOLDER_ENUM_MODE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for FOLDER_ENUM_MODE {
type Abi = Self;
}
impl ::core::fmt::Debug for FOLDER_ENUM_MODE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FOLDER_ENUM_MODE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct FVTEXTTYPE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const FVST_EMPTYTEXT: FVTEXTTYPE = FVTEXTTYPE(0i32);
impl ::core::marker::Copy for FVTEXTTYPE {}
impl ::core::clone::Clone for FVTEXTTYPE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for FVTEXTTYPE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for FVTEXTTYPE {
type Abi = Self;
}
impl ::core::fmt::Debug for FVTEXTTYPE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("FVTEXTTYPE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct GPFIDL_FLAGS(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GPFIDL_DEFAULT: GPFIDL_FLAGS = GPFIDL_FLAGS(0u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GPFIDL_ALTNAME: GPFIDL_FLAGS = GPFIDL_FLAGS(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GPFIDL_UNCPRINTER: GPFIDL_FLAGS = GPFIDL_FLAGS(2u32);
impl ::core::marker::Copy for GPFIDL_FLAGS {}
impl ::core::clone::Clone for GPFIDL_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for GPFIDL_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for GPFIDL_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for GPFIDL_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("GPFIDL_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct HELP_INFO_TYPE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HELPINFO_WINDOW: HELP_INFO_TYPE = HELP_INFO_TYPE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HELPINFO_MENUITEM: HELP_INFO_TYPE = HELP_INFO_TYPE(2i32);
impl ::core::marker::Copy for HELP_INFO_TYPE {}
impl ::core::clone::Clone for HELP_INFO_TYPE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for HELP_INFO_TYPE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for HELP_INFO_TYPE {
type Abi = Self;
}
impl ::core::fmt::Debug for HELP_INFO_TYPE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("HELP_INFO_TYPE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct HLBWIF_FLAGS(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLBWIF_HASFRAMEWNDINFO: HLBWIF_FLAGS = HLBWIF_FLAGS(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLBWIF_HASDOCWNDINFO: HLBWIF_FLAGS = HLBWIF_FLAGS(2u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLBWIF_FRAMEWNDMAXIMIZED: HLBWIF_FLAGS = HLBWIF_FLAGS(4u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLBWIF_DOCWNDMAXIMIZED: HLBWIF_FLAGS = HLBWIF_FLAGS(8u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLBWIF_HASWEBTOOLBARINFO: HLBWIF_FLAGS = HLBWIF_FLAGS(16u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLBWIF_WEBTOOLBARHIDDEN: HLBWIF_FLAGS = HLBWIF_FLAGS(32u32);
impl ::core::marker::Copy for HLBWIF_FLAGS {}
impl ::core::clone::Clone for HLBWIF_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for HLBWIF_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for HLBWIF_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for HLBWIF_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("HLBWIF_FLAGS").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for HLBWIF_FLAGS {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for HLBWIF_FLAGS {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for HLBWIF_FLAGS {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for HLBWIF_FLAGS {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for HLBWIF_FLAGS {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct HLFNAMEF(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLFNAMEF_DEFAULT: HLFNAMEF = HLFNAMEF(0u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLFNAMEF_TRYCACHE: HLFNAMEF = HLFNAMEF(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLFNAMEF_TRYPRETTYTARGET: HLFNAMEF = HLFNAMEF(2u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLFNAMEF_TRYFULLTARGET: HLFNAMEF = HLFNAMEF(4u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLFNAMEF_TRYWIN95SHORTCUT: HLFNAMEF = HLFNAMEF(8u32);
impl ::core::marker::Copy for HLFNAMEF {}
impl ::core::clone::Clone for HLFNAMEF {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for HLFNAMEF {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for HLFNAMEF {
type Abi = Self;
}
impl ::core::fmt::Debug for HLFNAMEF {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("HLFNAMEF").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for HLFNAMEF {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for HLFNAMEF {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for HLFNAMEF {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for HLFNAMEF {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for HLFNAMEF {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct HLID_INFO(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLID_INVALID: HLID_INFO = HLID_INFO(0u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLID_PREVIOUS: HLID_INFO = HLID_INFO(4294967295u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLID_NEXT: HLID_INFO = HLID_INFO(4294967294u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLID_CURRENT: HLID_INFO = HLID_INFO(4294967293u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLID_STACKBOTTOM: HLID_INFO = HLID_INFO(4294967292u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLID_STACKTOP: HLID_INFO = HLID_INFO(4294967291u32);
impl ::core::marker::Copy for HLID_INFO {}
impl ::core::clone::Clone for HLID_INFO {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for HLID_INFO {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for HLID_INFO {
type Abi = Self;
}
impl ::core::fmt::Debug for HLID_INFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("HLID_INFO").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct HLINKGETREF(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLINKGETREF_DEFAULT: HLINKGETREF = HLINKGETREF(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLINKGETREF_ABSOLUTE: HLINKGETREF = HLINKGETREF(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLINKGETREF_RELATIVE: HLINKGETREF = HLINKGETREF(2i32);
impl ::core::marker::Copy for HLINKGETREF {}
impl ::core::clone::Clone for HLINKGETREF {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for HLINKGETREF {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for HLINKGETREF {
type Abi = Self;
}
impl ::core::fmt::Debug for HLINKGETREF {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("HLINKGETREF").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct HLINKMISC(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLINKMISC_RELATIVE: HLINKMISC = HLINKMISC(1i32);
impl ::core::marker::Copy for HLINKMISC {}
impl ::core::clone::Clone for HLINKMISC {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for HLINKMISC {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for HLINKMISC {
type Abi = Self;
}
impl ::core::fmt::Debug for HLINKMISC {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("HLINKMISC").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct HLINKSETF(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLINKSETF_TARGET: HLINKSETF = HLINKSETF(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLINKSETF_LOCATION: HLINKSETF = HLINKSETF(2i32);
impl ::core::marker::Copy for HLINKSETF {}
impl ::core::clone::Clone for HLINKSETF {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for HLINKSETF {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for HLINKSETF {
type Abi = Self;
}
impl ::core::fmt::Debug for HLINKSETF {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("HLINKSETF").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct HLINKWHICHMK(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLINKWHICHMK_CONTAINER: HLINKWHICHMK = HLINKWHICHMK(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLINKWHICHMK_BASE: HLINKWHICHMK = HLINKWHICHMK(2i32);
impl ::core::marker::Copy for HLINKWHICHMK {}
impl ::core::clone::Clone for HLINKWHICHMK {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for HLINKWHICHMK {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for HLINKWHICHMK {
type Abi = Self;
}
impl ::core::fmt::Debug for HLINKWHICHMK {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("HLINKWHICHMK").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct HLNF(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLNF_INTERNALJUMP: HLNF = HLNF(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLNF_OPENINNEWWINDOW: HLNF = HLNF(2u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLNF_NAVIGATINGBACK: HLNF = HLNF(4u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLNF_NAVIGATINGFORWARD: HLNF = HLNF(8u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLNF_NAVIGATINGTOSTACKITEM: HLNF = HLNF(16u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLNF_CREATENOHISTORY: HLNF = HLNF(32u32);
impl ::core::marker::Copy for HLNF {}
impl ::core::clone::Clone for HLNF {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for HLNF {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for HLNF {
type Abi = Self;
}
impl ::core::fmt::Debug for HLNF {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("HLNF").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for HLNF {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for HLNF {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for HLNF {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for HLNF {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for HLNF {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct HLQF_INFO(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLQF_ISVALID: HLQF_INFO = HLQF_INFO(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLQF_ISCURRENT: HLQF_INFO = HLQF_INFO(2i32);
impl ::core::marker::Copy for HLQF_INFO {}
impl ::core::clone::Clone for HLQF_INFO {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for HLQF_INFO {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for HLQF_INFO {
type Abi = Self;
}
impl ::core::fmt::Debug for HLQF_INFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("HLQF_INFO").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct HLSHORTCUTF(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLSHORTCUTF_DEFAULT: HLSHORTCUTF = HLSHORTCUTF(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLSHORTCUTF_DONTACTUALLYCREATE: HLSHORTCUTF = HLSHORTCUTF(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLSHORTCUTF_USEFILENAMEFROMFRIENDLYNAME: HLSHORTCUTF = HLSHORTCUTF(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLSHORTCUTF_USEUNIQUEFILENAME: HLSHORTCUTF = HLSHORTCUTF(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLSHORTCUTF_MAYUSEEXISTINGSHORTCUT: HLSHORTCUTF = HLSHORTCUTF(8i32);
impl ::core::marker::Copy for HLSHORTCUTF {}
impl ::core::clone::Clone for HLSHORTCUTF {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for HLSHORTCUTF {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for HLSHORTCUTF {
type Abi = Self;
}
impl ::core::fmt::Debug for HLSHORTCUTF {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("HLSHORTCUTF").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct HLSR(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLSR_HOME: HLSR = HLSR(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLSR_SEARCHPAGE: HLSR = HLSR(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLSR_HISTORYFOLDER: HLSR = HLSR(2i32);
impl ::core::marker::Copy for HLSR {}
impl ::core::clone::Clone for HLSR {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for HLSR {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for HLSR {
type Abi = Self;
}
impl ::core::fmt::Debug for HLSR {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("HLSR").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct HLTB_INFO(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLTB_DOCKEDLEFT: HLTB_INFO = HLTB_INFO(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLTB_DOCKEDTOP: HLTB_INFO = HLTB_INFO(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLTB_DOCKEDRIGHT: HLTB_INFO = HLTB_INFO(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLTB_DOCKEDBOTTOM: HLTB_INFO = HLTB_INFO(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLTB_FLOATING: HLTB_INFO = HLTB_INFO(4i32);
impl ::core::marker::Copy for HLTB_INFO {}
impl ::core::clone::Clone for HLTB_INFO {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for HLTB_INFO {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for HLTB_INFO {
type Abi = Self;
}
impl ::core::fmt::Debug for HLTB_INFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("HLTB_INFO").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct HLTRANSLATEF(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLTRANSLATEF_DEFAULT: HLTRANSLATEF = HLTRANSLATEF(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HLTRANSLATEF_DONTAPPLYDEFAULTPREFIX: HLTRANSLATEF = HLTRANSLATEF(1i32);
impl ::core::marker::Copy for HLTRANSLATEF {}
impl ::core::clone::Clone for HLTRANSLATEF {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for HLTRANSLATEF {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for HLTRANSLATEF {
type Abi = Self;
}
impl ::core::fmt::Debug for HLTRANSLATEF {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("HLTRANSLATEF").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct HOMEGROUPSHARINGCHOICES(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HGSC_NONE: HOMEGROUPSHARINGCHOICES = HOMEGROUPSHARINGCHOICES(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HGSC_MUSICLIBRARY: HOMEGROUPSHARINGCHOICES = HOMEGROUPSHARINGCHOICES(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HGSC_PICTURESLIBRARY: HOMEGROUPSHARINGCHOICES = HOMEGROUPSHARINGCHOICES(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HGSC_VIDEOSLIBRARY: HOMEGROUPSHARINGCHOICES = HOMEGROUPSHARINGCHOICES(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HGSC_DOCUMENTSLIBRARY: HOMEGROUPSHARINGCHOICES = HOMEGROUPSHARINGCHOICES(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const HGSC_PRINTERS: HOMEGROUPSHARINGCHOICES = HOMEGROUPSHARINGCHOICES(16i32);
impl ::core::marker::Copy for HOMEGROUPSHARINGCHOICES {}
impl ::core::clone::Clone for HOMEGROUPSHARINGCHOICES {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for HOMEGROUPSHARINGCHOICES {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for HOMEGROUPSHARINGCHOICES {
type Abi = Self;
}
impl ::core::fmt::Debug for HOMEGROUPSHARINGCHOICES {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("HOMEGROUPSHARINGCHOICES").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct IEPDNFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IEPDN_BINDINGUI: IEPDNFLAGS = IEPDNFLAGS(1i32);
impl ::core::marker::Copy for IEPDNFLAGS {}
impl ::core::clone::Clone for IEPDNFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for IEPDNFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for IEPDNFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for IEPDNFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IEPDNFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct IESHORTCUTFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IESHORTCUT_NEWBROWSER: IESHORTCUTFLAGS = IESHORTCUTFLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IESHORTCUT_OPENNEWTAB: IESHORTCUTFLAGS = IESHORTCUTFLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IESHORTCUT_FORCENAVIGATE: IESHORTCUTFLAGS = IESHORTCUTFLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IESHORTCUT_BACKGROUNDTAB: IESHORTCUTFLAGS = IESHORTCUTFLAGS(8i32);
impl ::core::marker::Copy for IESHORTCUTFLAGS {}
impl ::core::clone::Clone for IESHORTCUTFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for IESHORTCUTFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for IESHORTCUTFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for IESHORTCUTFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IESHORTCUTFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct IURL_INVOKECOMMAND_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IURL_INVOKECOMMAND_FL_ALLOW_UI: IURL_INVOKECOMMAND_FLAGS = IURL_INVOKECOMMAND_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IURL_INVOKECOMMAND_FL_USE_DEFAULT_VERB: IURL_INVOKECOMMAND_FLAGS = IURL_INVOKECOMMAND_FLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IURL_INVOKECOMMAND_FL_DDEWAIT: IURL_INVOKECOMMAND_FLAGS = IURL_INVOKECOMMAND_FLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IURL_INVOKECOMMAND_FL_ASYNCOK: IURL_INVOKECOMMAND_FLAGS = IURL_INVOKECOMMAND_FLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IURL_INVOKECOMMAND_FL_LOG_USAGE: IURL_INVOKECOMMAND_FLAGS = IURL_INVOKECOMMAND_FLAGS(16i32);
impl ::core::marker::Copy for IURL_INVOKECOMMAND_FLAGS {}
impl ::core::clone::Clone for IURL_INVOKECOMMAND_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for IURL_INVOKECOMMAND_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for IURL_INVOKECOMMAND_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for IURL_INVOKECOMMAND_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IURL_INVOKECOMMAND_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct IURL_SETURL_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IURL_SETURL_FL_GUESS_PROTOCOL: IURL_SETURL_FLAGS = IURL_SETURL_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const IURL_SETURL_FL_USE_DEFAULT_PROTOCOL: IURL_SETURL_FLAGS = IURL_SETURL_FLAGS(2i32);
impl ::core::marker::Copy for IURL_SETURL_FLAGS {}
impl ::core::clone::Clone for IURL_SETURL_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for IURL_SETURL_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for IURL_SETURL_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for IURL_SETURL_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("IURL_SETURL_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct KF_CATEGORY(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_CATEGORY_VIRTUAL: KF_CATEGORY = KF_CATEGORY(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_CATEGORY_FIXED: KF_CATEGORY = KF_CATEGORY(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_CATEGORY_COMMON: KF_CATEGORY = KF_CATEGORY(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_CATEGORY_PERUSER: KF_CATEGORY = KF_CATEGORY(4i32);
impl ::core::marker::Copy for KF_CATEGORY {}
impl ::core::clone::Clone for KF_CATEGORY {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for KF_CATEGORY {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for KF_CATEGORY {
type Abi = Self;
}
impl ::core::fmt::Debug for KF_CATEGORY {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("KF_CATEGORY").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct KNOWNDESTCATEGORY(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KDC_FREQUENT: KNOWNDESTCATEGORY = KNOWNDESTCATEGORY(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KDC_RECENT: KNOWNDESTCATEGORY = KNOWNDESTCATEGORY(2i32);
impl ::core::marker::Copy for KNOWNDESTCATEGORY {}
impl ::core::clone::Clone for KNOWNDESTCATEGORY {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for KNOWNDESTCATEGORY {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for KNOWNDESTCATEGORY {
type Abi = Self;
}
impl ::core::fmt::Debug for KNOWNDESTCATEGORY {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("KNOWNDESTCATEGORY").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct KNOWN_FOLDER_FLAG(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_FLAG_DEFAULT: KNOWN_FOLDER_FLAG = KNOWN_FOLDER_FLAG(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_FLAG_FORCE_APP_DATA_REDIRECTION: KNOWN_FOLDER_FLAG = KNOWN_FOLDER_FLAG(524288i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_FLAG_RETURN_FILTER_REDIRECTION_TARGET: KNOWN_FOLDER_FLAG = KNOWN_FOLDER_FLAG(262144i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_FLAG_FORCE_PACKAGE_REDIRECTION: KNOWN_FOLDER_FLAG = KNOWN_FOLDER_FLAG(131072i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_FLAG_NO_PACKAGE_REDIRECTION: KNOWN_FOLDER_FLAG = KNOWN_FOLDER_FLAG(65536i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_FLAG_FORCE_APPCONTAINER_REDIRECTION: KNOWN_FOLDER_FLAG = KNOWN_FOLDER_FLAG(131072i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_FLAG_NO_APPCONTAINER_REDIRECTION: KNOWN_FOLDER_FLAG = KNOWN_FOLDER_FLAG(65536i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_FLAG_CREATE: KNOWN_FOLDER_FLAG = KNOWN_FOLDER_FLAG(32768i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_FLAG_DONT_VERIFY: KNOWN_FOLDER_FLAG = KNOWN_FOLDER_FLAG(16384i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_FLAG_DONT_UNEXPAND: KNOWN_FOLDER_FLAG = KNOWN_FOLDER_FLAG(8192i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_FLAG_NO_ALIAS: KNOWN_FOLDER_FLAG = KNOWN_FOLDER_FLAG(4096i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_FLAG_INIT: KNOWN_FOLDER_FLAG = KNOWN_FOLDER_FLAG(2048i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_FLAG_DEFAULT_PATH: KNOWN_FOLDER_FLAG = KNOWN_FOLDER_FLAG(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_FLAG_NOT_PARENT_RELATIVE: KNOWN_FOLDER_FLAG = KNOWN_FOLDER_FLAG(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_FLAG_SIMPLE_IDLIST: KNOWN_FOLDER_FLAG = KNOWN_FOLDER_FLAG(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_FLAG_ALIAS_ONLY: KNOWN_FOLDER_FLAG = KNOWN_FOLDER_FLAG(-2147483648i32);
impl ::core::marker::Copy for KNOWN_FOLDER_FLAG {}
impl ::core::clone::Clone for KNOWN_FOLDER_FLAG {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for KNOWN_FOLDER_FLAG {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for KNOWN_FOLDER_FLAG {
type Abi = Self;
}
impl ::core::fmt::Debug for KNOWN_FOLDER_FLAG {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("KNOWN_FOLDER_FLAG").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct LIBRARYFOLDERFILTER(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const LFF_FORCEFILESYSTEM: LIBRARYFOLDERFILTER = LIBRARYFOLDERFILTER(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const LFF_STORAGEITEMS: LIBRARYFOLDERFILTER = LIBRARYFOLDERFILTER(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const LFF_ALLITEMS: LIBRARYFOLDERFILTER = LIBRARYFOLDERFILTER(3i32);
impl ::core::marker::Copy for LIBRARYFOLDERFILTER {}
impl ::core::clone::Clone for LIBRARYFOLDERFILTER {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for LIBRARYFOLDERFILTER {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for LIBRARYFOLDERFILTER {
type Abi = Self;
}
impl ::core::fmt::Debug for LIBRARYFOLDERFILTER {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("LIBRARYFOLDERFILTER").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct LIBRARYMANAGEDIALOGOPTIONS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const LMD_DEFAULT: LIBRARYMANAGEDIALOGOPTIONS = LIBRARYMANAGEDIALOGOPTIONS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const LMD_ALLOWUNINDEXABLENETWORKLOCATIONS: LIBRARYMANAGEDIALOGOPTIONS = LIBRARYMANAGEDIALOGOPTIONS(1i32);
impl ::core::marker::Copy for LIBRARYMANAGEDIALOGOPTIONS {}
impl ::core::clone::Clone for LIBRARYMANAGEDIALOGOPTIONS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for LIBRARYMANAGEDIALOGOPTIONS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for LIBRARYMANAGEDIALOGOPTIONS {
type Abi = Self;
}
impl ::core::fmt::Debug for LIBRARYMANAGEDIALOGOPTIONS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("LIBRARYMANAGEDIALOGOPTIONS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct LIBRARYOPTIONFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const LOF_DEFAULT: LIBRARYOPTIONFLAGS = LIBRARYOPTIONFLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const LOF_PINNEDTONAVPANE: LIBRARYOPTIONFLAGS = LIBRARYOPTIONFLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const LOF_MASK_ALL: LIBRARYOPTIONFLAGS = LIBRARYOPTIONFLAGS(1i32);
impl ::core::marker::Copy for LIBRARYOPTIONFLAGS {}
impl ::core::clone::Clone for LIBRARYOPTIONFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for LIBRARYOPTIONFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for LIBRARYOPTIONFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for LIBRARYOPTIONFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("LIBRARYOPTIONFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct LIBRARYSAVEFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const LSF_FAILIFTHERE: LIBRARYSAVEFLAGS = LIBRARYSAVEFLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const LSF_OVERRIDEEXISTING: LIBRARYSAVEFLAGS = LIBRARYSAVEFLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const LSF_MAKEUNIQUENAME: LIBRARYSAVEFLAGS = LIBRARYSAVEFLAGS(2i32);
impl ::core::marker::Copy for LIBRARYSAVEFLAGS {}
impl ::core::clone::Clone for LIBRARYSAVEFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for LIBRARYSAVEFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for LIBRARYSAVEFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for LIBRARYSAVEFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("LIBRARYSAVEFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct MENUBANDHANDLERCID(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MBHANDCID_PIDLSELECT: MENUBANDHANDLERCID = MENUBANDHANDLERCID(0i32);
impl ::core::marker::Copy for MENUBANDHANDLERCID {}
impl ::core::clone::Clone for MENUBANDHANDLERCID {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for MENUBANDHANDLERCID {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for MENUBANDHANDLERCID {
type Abi = Self;
}
impl ::core::fmt::Debug for MENUBANDHANDLERCID {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("MENUBANDHANDLERCID").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct MENUPOPUPPOPUPFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPPF_SETFOCUS: MENUPOPUPPOPUPFLAGS = MENUPOPUPPOPUPFLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPPF_INITIALSELECT: MENUPOPUPPOPUPFLAGS = MENUPOPUPPOPUPFLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPPF_NOANIMATE: MENUPOPUPPOPUPFLAGS = MENUPOPUPPOPUPFLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPPF_KEYBOARD: MENUPOPUPPOPUPFLAGS = MENUPOPUPPOPUPFLAGS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPPF_REPOSITION: MENUPOPUPPOPUPFLAGS = MENUPOPUPPOPUPFLAGS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPPF_FORCEZORDER: MENUPOPUPPOPUPFLAGS = MENUPOPUPPOPUPFLAGS(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPPF_FINALSELECT: MENUPOPUPPOPUPFLAGS = MENUPOPUPPOPUPFLAGS(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPPF_TOP: MENUPOPUPPOPUPFLAGS = MENUPOPUPPOPUPFLAGS(536870912i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPPF_LEFT: MENUPOPUPPOPUPFLAGS = MENUPOPUPPOPUPFLAGS(1073741824i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPPF_RIGHT: MENUPOPUPPOPUPFLAGS = MENUPOPUPPOPUPFLAGS(1610612736i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPPF_BOTTOM: MENUPOPUPPOPUPFLAGS = MENUPOPUPPOPUPFLAGS(-2147483648i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPPF_POS_MASK: MENUPOPUPPOPUPFLAGS = MENUPOPUPPOPUPFLAGS(-536870912i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPPF_ALIGN_LEFT: MENUPOPUPPOPUPFLAGS = MENUPOPUPPOPUPFLAGS(33554432i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPPF_ALIGN_RIGHT: MENUPOPUPPOPUPFLAGS = MENUPOPUPPOPUPFLAGS(67108864i32);
impl ::core::marker::Copy for MENUPOPUPPOPUPFLAGS {}
impl ::core::clone::Clone for MENUPOPUPPOPUPFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for MENUPOPUPPOPUPFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for MENUPOPUPPOPUPFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for MENUPOPUPPOPUPFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("MENUPOPUPPOPUPFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct MENUPOPUPSELECT(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPOS_EXECUTE: MENUPOPUPSELECT = MENUPOPUPSELECT(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPOS_FULLCANCEL: MENUPOPUPSELECT = MENUPOPUPSELECT(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPOS_CANCELLEVEL: MENUPOPUPSELECT = MENUPOPUPSELECT(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPOS_SELECTLEFT: MENUPOPUPSELECT = MENUPOPUPSELECT(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPOS_SELECTRIGHT: MENUPOPUPSELECT = MENUPOPUPSELECT(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MPOS_CHILDTRACKING: MENUPOPUPSELECT = MENUPOPUPSELECT(5i32);
impl ::core::marker::Copy for MENUPOPUPSELECT {}
impl ::core::clone::Clone for MENUPOPUPSELECT {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for MENUPOPUPSELECT {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for MENUPOPUPSELECT {
type Abi = Self;
}
impl ::core::fmt::Debug for MENUPOPUPSELECT {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("MENUPOPUPSELECT").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct MERGE_UPDATE_STATUS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MUS_COMPLETE: MERGE_UPDATE_STATUS = MERGE_UPDATE_STATUS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MUS_USERINPUTNEEDED: MERGE_UPDATE_STATUS = MERGE_UPDATE_STATUS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MUS_FAILED: MERGE_UPDATE_STATUS = MERGE_UPDATE_STATUS(2i32);
impl ::core::marker::Copy for MERGE_UPDATE_STATUS {}
impl ::core::clone::Clone for MERGE_UPDATE_STATUS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for MERGE_UPDATE_STATUS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for MERGE_UPDATE_STATUS {
type Abi = Self;
}
impl ::core::fmt::Debug for MERGE_UPDATE_STATUS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("MERGE_UPDATE_STATUS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct MIMEASSOCIATIONDIALOG_IN_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MIMEASSOCDLG_FL_REGISTER_ASSOC: MIMEASSOCIATIONDIALOG_IN_FLAGS = MIMEASSOCIATIONDIALOG_IN_FLAGS(1i32);
impl ::core::marker::Copy for MIMEASSOCIATIONDIALOG_IN_FLAGS {}
impl ::core::clone::Clone for MIMEASSOCIATIONDIALOG_IN_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for MIMEASSOCIATIONDIALOG_IN_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for MIMEASSOCIATIONDIALOG_IN_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for MIMEASSOCIATIONDIALOG_IN_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("MIMEASSOCIATIONDIALOG_IN_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct MM_FLAGS(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MM_ADDSEPARATOR: MM_FLAGS = MM_FLAGS(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MM_SUBMENUSHAVEIDS: MM_FLAGS = MM_FLAGS(2u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MM_DONTREMOVESEPS: MM_FLAGS = MM_FLAGS(4u32);
impl ::core::marker::Copy for MM_FLAGS {}
impl ::core::clone::Clone for MM_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for MM_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for MM_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for MM_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("MM_FLAGS").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for MM_FLAGS {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for MM_FLAGS {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for MM_FLAGS {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for MM_FLAGS {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for MM_FLAGS {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct MONITOR_APP_VISIBILITY(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MAV_UNKNOWN: MONITOR_APP_VISIBILITY = MONITOR_APP_VISIBILITY(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MAV_NO_APP_VISIBLE: MONITOR_APP_VISIBILITY = MONITOR_APP_VISIBILITY(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const MAV_APP_VISIBLE: MONITOR_APP_VISIBILITY = MONITOR_APP_VISIBILITY(2i32);
impl ::core::marker::Copy for MONITOR_APP_VISIBILITY {}
impl ::core::clone::Clone for MONITOR_APP_VISIBILITY {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for MONITOR_APP_VISIBILITY {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for MONITOR_APP_VISIBILITY {
type Abi = Self;
}
impl ::core::fmt::Debug for MONITOR_APP_VISIBILITY {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("MONITOR_APP_VISIBILITY").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct NAMESPACEWALKFLAG(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSWF_DEFAULT: NAMESPACEWALKFLAG = NAMESPACEWALKFLAG(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSWF_NONE_IMPLIES_ALL: NAMESPACEWALKFLAG = NAMESPACEWALKFLAG(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSWF_ONE_IMPLIES_ALL: NAMESPACEWALKFLAG = NAMESPACEWALKFLAG(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSWF_DONT_TRAVERSE_LINKS: NAMESPACEWALKFLAG = NAMESPACEWALKFLAG(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSWF_DONT_ACCUMULATE_RESULT: NAMESPACEWALKFLAG = NAMESPACEWALKFLAG(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSWF_TRAVERSE_STREAM_JUNCTIONS: NAMESPACEWALKFLAG = NAMESPACEWALKFLAG(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSWF_FILESYSTEM_ONLY: NAMESPACEWALKFLAG = NAMESPACEWALKFLAG(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSWF_SHOW_PROGRESS: NAMESPACEWALKFLAG = NAMESPACEWALKFLAG(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSWF_FLAG_VIEWORDER: NAMESPACEWALKFLAG = NAMESPACEWALKFLAG(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSWF_IGNORE_AUTOPLAY_HIDA: NAMESPACEWALKFLAG = NAMESPACEWALKFLAG(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSWF_ASYNC: NAMESPACEWALKFLAG = NAMESPACEWALKFLAG(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSWF_DONT_RESOLVE_LINKS: NAMESPACEWALKFLAG = NAMESPACEWALKFLAG(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSWF_ACCUMULATE_FOLDERS: NAMESPACEWALKFLAG = NAMESPACEWALKFLAG(2048i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSWF_DONT_SORT: NAMESPACEWALKFLAG = NAMESPACEWALKFLAG(4096i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSWF_USE_TRANSFER_MEDIUM: NAMESPACEWALKFLAG = NAMESPACEWALKFLAG(8192i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSWF_DONT_TRAVERSE_STREAM_JUNCTIONS: NAMESPACEWALKFLAG = NAMESPACEWALKFLAG(16384i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSWF_ANY_IMPLIES_ALL: NAMESPACEWALKFLAG = NAMESPACEWALKFLAG(32768i32);
impl ::core::marker::Copy for NAMESPACEWALKFLAG {}
impl ::core::clone::Clone for NAMESPACEWALKFLAG {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for NAMESPACEWALKFLAG {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for NAMESPACEWALKFLAG {
type Abi = Self;
}
impl ::core::fmt::Debug for NAMESPACEWALKFLAG {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("NAMESPACEWALKFLAG").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct NATIVE_DISPLAY_ORIENTATION(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NDO_LANDSCAPE: NATIVE_DISPLAY_ORIENTATION = NATIVE_DISPLAY_ORIENTATION(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NDO_PORTRAIT: NATIVE_DISPLAY_ORIENTATION = NATIVE_DISPLAY_ORIENTATION(1i32);
impl ::core::marker::Copy for NATIVE_DISPLAY_ORIENTATION {}
impl ::core::clone::Clone for NATIVE_DISPLAY_ORIENTATION {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for NATIVE_DISPLAY_ORIENTATION {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for NATIVE_DISPLAY_ORIENTATION {
type Abi = Self;
}
impl ::core::fmt::Debug for NATIVE_DISPLAY_ORIENTATION {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("NATIVE_DISPLAY_ORIENTATION").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct NOTIFY_ICON_DATA_FLAGS(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIF_MESSAGE: NOTIFY_ICON_DATA_FLAGS = NOTIFY_ICON_DATA_FLAGS(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIF_ICON: NOTIFY_ICON_DATA_FLAGS = NOTIFY_ICON_DATA_FLAGS(2u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIF_TIP: NOTIFY_ICON_DATA_FLAGS = NOTIFY_ICON_DATA_FLAGS(4u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIF_STATE: NOTIFY_ICON_DATA_FLAGS = NOTIFY_ICON_DATA_FLAGS(8u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIF_INFO: NOTIFY_ICON_DATA_FLAGS = NOTIFY_ICON_DATA_FLAGS(16u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIF_GUID: NOTIFY_ICON_DATA_FLAGS = NOTIFY_ICON_DATA_FLAGS(32u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIF_REALTIME: NOTIFY_ICON_DATA_FLAGS = NOTIFY_ICON_DATA_FLAGS(64u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIF_SHOWTIP: NOTIFY_ICON_DATA_FLAGS = NOTIFY_ICON_DATA_FLAGS(128u32);
impl ::core::marker::Copy for NOTIFY_ICON_DATA_FLAGS {}
impl ::core::clone::Clone for NOTIFY_ICON_DATA_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for NOTIFY_ICON_DATA_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for NOTIFY_ICON_DATA_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for NOTIFY_ICON_DATA_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("NOTIFY_ICON_DATA_FLAGS").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for NOTIFY_ICON_DATA_FLAGS {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for NOTIFY_ICON_DATA_FLAGS {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for NOTIFY_ICON_DATA_FLAGS {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for NOTIFY_ICON_DATA_FLAGS {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for NOTIFY_ICON_DATA_FLAGS {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct NOTIFY_ICON_INFOTIP_FLAGS(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIIF_NONE: NOTIFY_ICON_INFOTIP_FLAGS = NOTIFY_ICON_INFOTIP_FLAGS(0u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIIF_INFO: NOTIFY_ICON_INFOTIP_FLAGS = NOTIFY_ICON_INFOTIP_FLAGS(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIIF_WARNING: NOTIFY_ICON_INFOTIP_FLAGS = NOTIFY_ICON_INFOTIP_FLAGS(2u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIIF_ERROR: NOTIFY_ICON_INFOTIP_FLAGS = NOTIFY_ICON_INFOTIP_FLAGS(3u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIIF_USER: NOTIFY_ICON_INFOTIP_FLAGS = NOTIFY_ICON_INFOTIP_FLAGS(4u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIIF_ICON_MASK: NOTIFY_ICON_INFOTIP_FLAGS = NOTIFY_ICON_INFOTIP_FLAGS(15u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIIF_NOSOUND: NOTIFY_ICON_INFOTIP_FLAGS = NOTIFY_ICON_INFOTIP_FLAGS(16u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIIF_LARGE_ICON: NOTIFY_ICON_INFOTIP_FLAGS = NOTIFY_ICON_INFOTIP_FLAGS(32u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIIF_RESPECT_QUIET_TIME: NOTIFY_ICON_INFOTIP_FLAGS = NOTIFY_ICON_INFOTIP_FLAGS(128u32);
impl ::core::marker::Copy for NOTIFY_ICON_INFOTIP_FLAGS {}
impl ::core::clone::Clone for NOTIFY_ICON_INFOTIP_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for NOTIFY_ICON_INFOTIP_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for NOTIFY_ICON_INFOTIP_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for NOTIFY_ICON_INFOTIP_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("NOTIFY_ICON_INFOTIP_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct NOTIFY_ICON_MESSAGE(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIM_ADD: NOTIFY_ICON_MESSAGE = NOTIFY_ICON_MESSAGE(0u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIM_MODIFY: NOTIFY_ICON_MESSAGE = NOTIFY_ICON_MESSAGE(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIM_DELETE: NOTIFY_ICON_MESSAGE = NOTIFY_ICON_MESSAGE(2u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIM_SETFOCUS: NOTIFY_ICON_MESSAGE = NOTIFY_ICON_MESSAGE(3u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIM_SETVERSION: NOTIFY_ICON_MESSAGE = NOTIFY_ICON_MESSAGE(4u32);
impl ::core::marker::Copy for NOTIFY_ICON_MESSAGE {}
impl ::core::clone::Clone for NOTIFY_ICON_MESSAGE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for NOTIFY_ICON_MESSAGE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for NOTIFY_ICON_MESSAGE {
type Abi = Self;
}
impl ::core::fmt::Debug for NOTIFY_ICON_MESSAGE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("NOTIFY_ICON_MESSAGE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct NOTIFY_ICON_STATE(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIS_HIDDEN: NOTIFY_ICON_STATE = NOTIFY_ICON_STATE(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NIS_SHAREDICON: NOTIFY_ICON_STATE = NOTIFY_ICON_STATE(2u32);
impl ::core::marker::Copy for NOTIFY_ICON_STATE {}
impl ::core::clone::Clone for NOTIFY_ICON_STATE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for NOTIFY_ICON_STATE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for NOTIFY_ICON_STATE {
type Abi = Self;
}
impl ::core::fmt::Debug for NOTIFY_ICON_STATE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("NOTIFY_ICON_STATE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct NSTCFOLDERCAPABILITIES(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCFC_NONE: NSTCFOLDERCAPABILITIES = NSTCFOLDERCAPABILITIES(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCFC_PINNEDITEMFILTERING: NSTCFOLDERCAPABILITIES = NSTCFOLDERCAPABILITIES(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCFC_DELAY_REGISTER_NOTIFY: NSTCFOLDERCAPABILITIES = NSTCFOLDERCAPABILITIES(2i32);
impl ::core::marker::Copy for NSTCFOLDERCAPABILITIES {}
impl ::core::clone::Clone for NSTCFOLDERCAPABILITIES {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for NSTCFOLDERCAPABILITIES {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for NSTCFOLDERCAPABILITIES {
type Abi = Self;
}
impl ::core::fmt::Debug for NSTCFOLDERCAPABILITIES {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("NSTCFOLDERCAPABILITIES").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct NSTCGNI(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCGNI_NEXT: NSTCGNI = NSTCGNI(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCGNI_NEXTVISIBLE: NSTCGNI = NSTCGNI(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCGNI_PREV: NSTCGNI = NSTCGNI(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCGNI_PREVVISIBLE: NSTCGNI = NSTCGNI(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCGNI_PARENT: NSTCGNI = NSTCGNI(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCGNI_CHILD: NSTCGNI = NSTCGNI(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCGNI_FIRSTVISIBLE: NSTCGNI = NSTCGNI(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCGNI_LASTVISIBLE: NSTCGNI = NSTCGNI(7i32);
impl ::core::marker::Copy for NSTCGNI {}
impl ::core::clone::Clone for NSTCGNI {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for NSTCGNI {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for NSTCGNI {
type Abi = Self;
}
impl ::core::fmt::Debug for NSTCGNI {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("NSTCGNI").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct NSTCSTYLE2(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS2_DEFAULT: NSTCSTYLE2 = NSTCSTYLE2(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS2_INTERRUPTNOTIFICATIONS: NSTCSTYLE2 = NSTCSTYLE2(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS2_SHOWNULLSPACEMENU: NSTCSTYLE2 = NSTCSTYLE2(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS2_DISPLAYPADDING: NSTCSTYLE2 = NSTCSTYLE2(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS2_DISPLAYPINNEDONLY: NSTCSTYLE2 = NSTCSTYLE2(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NTSCS2_NOSINGLETONAUTOEXPAND: NSTCSTYLE2 = NSTCSTYLE2(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NTSCS2_NEVERINSERTNONENUMERATED: NSTCSTYLE2 = NSTCSTYLE2(32i32);
impl ::core::marker::Copy for NSTCSTYLE2 {}
impl ::core::clone::Clone for NSTCSTYLE2 {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for NSTCSTYLE2 {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for NSTCSTYLE2 {
type Abi = Self;
}
impl ::core::fmt::Debug for NSTCSTYLE2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("NSTCSTYLE2").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct NWMF(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NWMF_UNLOADING: NWMF = NWMF(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NWMF_USERINITED: NWMF = NWMF(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NWMF_FIRST: NWMF = NWMF(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NWMF_OVERRIDEKEY: NWMF = NWMF(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NWMF_SHOWHELP: NWMF = NWMF(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NWMF_HTMLDIALOG: NWMF = NWMF(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NWMF_FROMDIALOGCHILD: NWMF = NWMF(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NWMF_USERREQUESTED: NWMF = NWMF(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NWMF_USERALLOWED: NWMF = NWMF(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NWMF_FORCEWINDOW: NWMF = NWMF(65536i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NWMF_FORCETAB: NWMF = NWMF(131072i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NWMF_SUGGESTWINDOW: NWMF = NWMF(262144i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NWMF_SUGGESTTAB: NWMF = NWMF(524288i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NWMF_INACTIVETAB: NWMF = NWMF(1048576i32);
impl ::core::marker::Copy for NWMF {}
impl ::core::clone::Clone for NWMF {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for NWMF {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for NWMF {
type Abi = Self;
}
impl ::core::fmt::Debug for NWMF {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("NWMF").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct NewProcessCauseConstants(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ProtectedModeRedirect: NewProcessCauseConstants = NewProcessCauseConstants(1i32);
impl ::core::marker::Copy for NewProcessCauseConstants {}
impl ::core::clone::Clone for NewProcessCauseConstants {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for NewProcessCauseConstants {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for NewProcessCauseConstants {
type Abi = Self;
}
impl ::core::fmt::Debug for NewProcessCauseConstants {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("NewProcessCauseConstants").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct OPEN_AS_INFO_FLAGS(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OAIF_ALLOW_REGISTRATION: OPEN_AS_INFO_FLAGS = OPEN_AS_INFO_FLAGS(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OAIF_REGISTER_EXT: OPEN_AS_INFO_FLAGS = OPEN_AS_INFO_FLAGS(2u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OAIF_EXEC: OPEN_AS_INFO_FLAGS = OPEN_AS_INFO_FLAGS(4u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OAIF_FORCE_REGISTRATION: OPEN_AS_INFO_FLAGS = OPEN_AS_INFO_FLAGS(8u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OAIF_HIDE_REGISTRATION: OPEN_AS_INFO_FLAGS = OPEN_AS_INFO_FLAGS(32u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OAIF_URL_PROTOCOL: OPEN_AS_INFO_FLAGS = OPEN_AS_INFO_FLAGS(64u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OAIF_FILE_IS_URI: OPEN_AS_INFO_FLAGS = OPEN_AS_INFO_FLAGS(128u32);
impl ::core::marker::Copy for OPEN_AS_INFO_FLAGS {}
impl ::core::clone::Clone for OPEN_AS_INFO_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for OPEN_AS_INFO_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for OPEN_AS_INFO_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for OPEN_AS_INFO_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("OPEN_AS_INFO_FLAGS").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for OPEN_AS_INFO_FLAGS {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for OPEN_AS_INFO_FLAGS {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for OPEN_AS_INFO_FLAGS {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for OPEN_AS_INFO_FLAGS {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for OPEN_AS_INFO_FLAGS {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct OS(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_WINDOWS: OS = OS(0u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_NT: OS = OS(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_WIN95ORGREATER: OS = OS(2u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_NT4ORGREATER: OS = OS(3u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_WIN98ORGREATER: OS = OS(5u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_WIN98_GOLD: OS = OS(6u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_WIN2000ORGREATER: OS = OS(7u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_WIN2000PRO: OS = OS(8u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_WIN2000SERVER: OS = OS(9u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_WIN2000ADVSERVER: OS = OS(10u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_WIN2000DATACENTER: OS = OS(11u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_WIN2000TERMINAL: OS = OS(12u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_EMBEDDED: OS = OS(13u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_TERMINALCLIENT: OS = OS(14u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_TERMINALREMOTEADMIN: OS = OS(15u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_WIN95_GOLD: OS = OS(16u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_MEORGREATER: OS = OS(17u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_XPORGREATER: OS = OS(18u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_HOME: OS = OS(19u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_PROFESSIONAL: OS = OS(20u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_DATACENTER: OS = OS(21u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_ADVSERVER: OS = OS(22u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_SERVER: OS = OS(23u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_TERMINALSERVER: OS = OS(24u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_PERSONALTERMINALSERVER: OS = OS(25u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_FASTUSERSWITCHING: OS = OS(26u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_WELCOMELOGONUI: OS = OS(27u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_DOMAINMEMBER: OS = OS(28u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_ANYSERVER: OS = OS(29u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_WOW6432: OS = OS(30u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_WEBSERVER: OS = OS(31u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_SMALLBUSINESSSERVER: OS = OS(32u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_TABLETPC: OS = OS(33u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_SERVERADMINUI: OS = OS(34u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_MEDIACENTER: OS = OS(35u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OS_APPLIANCE: OS = OS(36u32);
impl ::core::marker::Copy for OS {}
impl ::core::clone::Clone for OS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for OS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for OS {
type Abi = Self;
}
impl ::core::fmt::Debug for OS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("OS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct OfflineFolderStatus(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OFS_INACTIVE: OfflineFolderStatus = OfflineFolderStatus(-1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OFS_ONLINE: OfflineFolderStatus = OfflineFolderStatus(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OFS_OFFLINE: OfflineFolderStatus = OfflineFolderStatus(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OFS_SERVERBACK: OfflineFolderStatus = OfflineFolderStatus(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OFS_DIRTYCACHE: OfflineFolderStatus = OfflineFolderStatus(3i32);
impl ::core::marker::Copy for OfflineFolderStatus {}
impl ::core::clone::Clone for OfflineFolderStatus {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for OfflineFolderStatus {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for OfflineFolderStatus {
type Abi = Self;
}
impl ::core::fmt::Debug for OfflineFolderStatus {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("OfflineFolderStatus").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct PACKAGE_EXECUTION_STATE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PES_UNKNOWN: PACKAGE_EXECUTION_STATE = PACKAGE_EXECUTION_STATE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PES_RUNNING: PACKAGE_EXECUTION_STATE = PACKAGE_EXECUTION_STATE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PES_SUSPENDING: PACKAGE_EXECUTION_STATE = PACKAGE_EXECUTION_STATE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PES_SUSPENDED: PACKAGE_EXECUTION_STATE = PACKAGE_EXECUTION_STATE(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PES_TERMINATED: PACKAGE_EXECUTION_STATE = PACKAGE_EXECUTION_STATE(4i32);
impl ::core::marker::Copy for PACKAGE_EXECUTION_STATE {}
impl ::core::clone::Clone for PACKAGE_EXECUTION_STATE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for PACKAGE_EXECUTION_STATE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for PACKAGE_EXECUTION_STATE {
type Abi = Self;
}
impl ::core::fmt::Debug for PACKAGE_EXECUTION_STATE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("PACKAGE_EXECUTION_STATE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct PATHCCH_OPTIONS(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PATHCCH_NONE: PATHCCH_OPTIONS = PATHCCH_OPTIONS(0u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PATHCCH_ALLOW_LONG_PATHS: PATHCCH_OPTIONS = PATHCCH_OPTIONS(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PATHCCH_FORCE_ENABLE_LONG_NAME_PROCESS: PATHCCH_OPTIONS = PATHCCH_OPTIONS(2u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PATHCCH_FORCE_DISABLE_LONG_NAME_PROCESS: PATHCCH_OPTIONS = PATHCCH_OPTIONS(4u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PATHCCH_DO_NOT_NORMALIZE_SEGMENTS: PATHCCH_OPTIONS = PATHCCH_OPTIONS(8u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PATHCCH_ENSURE_IS_EXTENDED_LENGTH_PATH: PATHCCH_OPTIONS = PATHCCH_OPTIONS(16u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PATHCCH_ENSURE_TRAILING_SLASH: PATHCCH_OPTIONS = PATHCCH_OPTIONS(32u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PATHCCH_CANONICALIZE_SLASHES: PATHCCH_OPTIONS = PATHCCH_OPTIONS(64u32);
impl ::core::marker::Copy for PATHCCH_OPTIONS {}
impl ::core::clone::Clone for PATHCCH_OPTIONS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for PATHCCH_OPTIONS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for PATHCCH_OPTIONS {
type Abi = Self;
}
impl ::core::fmt::Debug for PATHCCH_OPTIONS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("PATHCCH_OPTIONS").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for PATHCCH_OPTIONS {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for PATHCCH_OPTIONS {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for PATHCCH_OPTIONS {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for PATHCCH_OPTIONS {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for PATHCCH_OPTIONS {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct PCS_RET(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PCS_FATAL: PCS_RET = PCS_RET(2147483648u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PCS_REPLACEDCHAR: PCS_RET = PCS_RET(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PCS_REMOVEDCHAR: PCS_RET = PCS_RET(2u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PCS_TRUNCATED: PCS_RET = PCS_RET(4u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PCS_PATHTOOLONG: PCS_RET = PCS_RET(8u32);
impl ::core::marker::Copy for PCS_RET {}
impl ::core::clone::Clone for PCS_RET {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for PCS_RET {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for PCS_RET {
type Abi = Self;
}
impl ::core::fmt::Debug for PCS_RET {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("PCS_RET").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for PCS_RET {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for PCS_RET {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for PCS_RET {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for PCS_RET {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for PCS_RET {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct PIDISF_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDISF_RECENTLYCHANGED: PIDISF_FLAGS = PIDISF_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDISF_CACHEDSTICKY: PIDISF_FLAGS = PIDISF_FLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDISF_CACHEIMAGES: PIDISF_FLAGS = PIDISF_FLAGS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDISF_FOLLOWALLLINKS: PIDISF_FLAGS = PIDISF_FLAGS(32i32);
impl ::core::marker::Copy for PIDISF_FLAGS {}
impl ::core::clone::Clone for PIDISF_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for PIDISF_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for PIDISF_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for PIDISF_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("PIDISF_FLAGS").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for PIDISF_FLAGS {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for PIDISF_FLAGS {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for PIDISF_FLAGS {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for PIDISF_FLAGS {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for PIDISF_FLAGS {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct PIDISM_OPTIONS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDISM_GLOBAL: PIDISM_OPTIONS = PIDISM_OPTIONS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDISM_WATCH: PIDISM_OPTIONS = PIDISM_OPTIONS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDISM_DONTWATCH: PIDISM_OPTIONS = PIDISM_OPTIONS(2i32);
impl ::core::marker::Copy for PIDISM_OPTIONS {}
impl ::core::clone::Clone for PIDISM_OPTIONS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for PIDISM_OPTIONS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for PIDISM_OPTIONS {
type Abi = Self;
}
impl ::core::fmt::Debug for PIDISM_OPTIONS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("PIDISM_OPTIONS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct PIDISR_INFO(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDISR_UP_TO_DATE: PIDISR_INFO = PIDISR_INFO(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDISR_NEEDS_ADD: PIDISR_INFO = PIDISR_INFO(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDISR_NEEDS_UPDATE: PIDISR_INFO = PIDISR_INFO(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PIDISR_NEEDS_DELETE: PIDISR_INFO = PIDISR_INFO(3i32);
impl ::core::marker::Copy for PIDISR_INFO {}
impl ::core::clone::Clone for PIDISR_INFO {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for PIDISR_INFO {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for PIDISR_INFO {
type Abi = Self;
}
impl ::core::fmt::Debug for PIDISR_INFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("PIDISR_INFO").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct PID_INTSITE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_WHATSNEW: PID_INTSITE = PID_INTSITE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_AUTHOR: PID_INTSITE = PID_INTSITE(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_LASTVISIT: PID_INTSITE = PID_INTSITE(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_LASTMOD: PID_INTSITE = PID_INTSITE(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_VISITCOUNT: PID_INTSITE = PID_INTSITE(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_DESCRIPTION: PID_INTSITE = PID_INTSITE(7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_COMMENT: PID_INTSITE = PID_INTSITE(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_FLAGS: PID_INTSITE = PID_INTSITE(9i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_CONTENTLEN: PID_INTSITE = PID_INTSITE(10i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_CONTENTCODE: PID_INTSITE = PID_INTSITE(11i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_RECURSE: PID_INTSITE = PID_INTSITE(12i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_WATCH: PID_INTSITE = PID_INTSITE(13i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_SUBSCRIPTION: PID_INTSITE = PID_INTSITE(14i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_URL: PID_INTSITE = PID_INTSITE(15i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_TITLE: PID_INTSITE = PID_INTSITE(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_CODEPAGE: PID_INTSITE = PID_INTSITE(18i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_TRACKING: PID_INTSITE = PID_INTSITE(19i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_ICONINDEX: PID_INTSITE = PID_INTSITE(20i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_ICONFILE: PID_INTSITE = PID_INTSITE(21i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_INTSITE_ROAMED: PID_INTSITE = PID_INTSITE(34i32);
impl ::core::marker::Copy for PID_INTSITE {}
impl ::core::clone::Clone for PID_INTSITE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for PID_INTSITE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for PID_INTSITE {
type Abi = Self;
}
impl ::core::fmt::Debug for PID_INTSITE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("PID_INTSITE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct PID_IS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_IS_URL: PID_IS = PID_IS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_IS_NAME: PID_IS = PID_IS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_IS_WORKINGDIR: PID_IS = PID_IS(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_IS_HOTKEY: PID_IS = PID_IS(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_IS_SHOWCMD: PID_IS = PID_IS(7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_IS_ICONINDEX: PID_IS = PID_IS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_IS_ICONFILE: PID_IS = PID_IS(9i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_IS_WHATSNEW: PID_IS = PID_IS(10i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_IS_AUTHOR: PID_IS = PID_IS(11i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_IS_DESCRIPTION: PID_IS = PID_IS(12i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_IS_COMMENT: PID_IS = PID_IS(13i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PID_IS_ROAMED: PID_IS = PID_IS(15i32);
impl ::core::marker::Copy for PID_IS {}
impl ::core::clone::Clone for PID_IS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for PID_IS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for PID_IS {
type Abi = Self;
}
impl ::core::fmt::Debug for PID_IS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("PID_IS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct PRF_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PRF_VERIFYEXISTS: PRF_FLAGS = PRF_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PRF_TRYPROGRAMEXTENSIONS: PRF_FLAGS = PRF_FLAGS(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PRF_FIRSTDIRDEF: PRF_FLAGS = PRF_FLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PRF_DONTFINDLNK: PRF_FLAGS = PRF_FLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PRF_REQUIREABSOLUTE: PRF_FLAGS = PRF_FLAGS(16i32);
impl ::core::marker::Copy for PRF_FLAGS {}
impl ::core::clone::Clone for PRF_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for PRF_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for PRF_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for PRF_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("PRF_FLAGS").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for PRF_FLAGS {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for PRF_FLAGS {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for PRF_FLAGS {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for PRF_FLAGS {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for PRF_FLAGS {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct PUBAPPINFOFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PAI_SOURCE: PUBAPPINFOFLAGS = PUBAPPINFOFLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PAI_ASSIGNEDTIME: PUBAPPINFOFLAGS = PUBAPPINFOFLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PAI_PUBLISHEDTIME: PUBAPPINFOFLAGS = PUBAPPINFOFLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PAI_SCHEDULEDTIME: PUBAPPINFOFLAGS = PUBAPPINFOFLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PAI_EXPIRETIME: PUBAPPINFOFLAGS = PUBAPPINFOFLAGS(16i32);
impl ::core::marker::Copy for PUBAPPINFOFLAGS {}
impl ::core::clone::Clone for PUBAPPINFOFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for PUBAPPINFOFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for PUBAPPINFOFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for PUBAPPINFOFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("PUBAPPINFOFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct QITIPF_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const QITIPF_DEFAULT: QITIPF_FLAGS = QITIPF_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const QITIPF_USENAME: QITIPF_FLAGS = QITIPF_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const QITIPF_LINKNOTARGET: QITIPF_FLAGS = QITIPF_FLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const QITIPF_LINKUSETARGET: QITIPF_FLAGS = QITIPF_FLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const QITIPF_USESLOWTIP: QITIPF_FLAGS = QITIPF_FLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const QITIPF_SINGLELINE: QITIPF_FLAGS = QITIPF_FLAGS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const QIF_CACHED: QITIPF_FLAGS = QITIPF_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const QIF_DONTEXPANDFOLDER: QITIPF_FLAGS = QITIPF_FLAGS(2i32);
impl ::core::marker::Copy for QITIPF_FLAGS {}
impl ::core::clone::Clone for QITIPF_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for QITIPF_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for QITIPF_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for QITIPF_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("QITIPF_FLAGS").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for QITIPF_FLAGS {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for QITIPF_FLAGS {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for QITIPF_FLAGS {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for QITIPF_FLAGS {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for QITIPF_FLAGS {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct QUERY_USER_NOTIFICATION_STATE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const QUNS_NOT_PRESENT: QUERY_USER_NOTIFICATION_STATE = QUERY_USER_NOTIFICATION_STATE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const QUNS_BUSY: QUERY_USER_NOTIFICATION_STATE = QUERY_USER_NOTIFICATION_STATE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const QUNS_RUNNING_D3D_FULL_SCREEN: QUERY_USER_NOTIFICATION_STATE = QUERY_USER_NOTIFICATION_STATE(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const QUNS_PRESENTATION_MODE: QUERY_USER_NOTIFICATION_STATE = QUERY_USER_NOTIFICATION_STATE(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const QUNS_ACCEPTS_NOTIFICATIONS: QUERY_USER_NOTIFICATION_STATE = QUERY_USER_NOTIFICATION_STATE(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const QUNS_QUIET_TIME: QUERY_USER_NOTIFICATION_STATE = QUERY_USER_NOTIFICATION_STATE(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const QUNS_APP: QUERY_USER_NOTIFICATION_STATE = QUERY_USER_NOTIFICATION_STATE(7i32);
impl ::core::marker::Copy for QUERY_USER_NOTIFICATION_STATE {}
impl ::core::clone::Clone for QUERY_USER_NOTIFICATION_STATE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for QUERY_USER_NOTIFICATION_STATE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for QUERY_USER_NOTIFICATION_STATE {
type Abi = Self;
}
impl ::core::fmt::Debug for QUERY_USER_NOTIFICATION_STATE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("QUERY_USER_NOTIFICATION_STATE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct RESTRICTIONS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NONE: RESTRICTIONS = RESTRICTIONS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NORUN: RESTRICTIONS = RESTRICTIONS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOCLOSE: RESTRICTIONS = RESTRICTIONS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSAVESET: RESTRICTIONS = RESTRICTIONS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOFILEMENU: RESTRICTIONS = RESTRICTIONS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSETFOLDERS: RESTRICTIONS = RESTRICTIONS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSETTASKBAR: RESTRICTIONS = RESTRICTIONS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NODESKTOP: RESTRICTIONS = RESTRICTIONS(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOFIND: RESTRICTIONS = RESTRICTIONS(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NODRIVES: RESTRICTIONS = RESTRICTIONS(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NODRIVEAUTORUN: RESTRICTIONS = RESTRICTIONS(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NODRIVETYPEAUTORUN: RESTRICTIONS = RESTRICTIONS(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NONETHOOD: RESTRICTIONS = RESTRICTIONS(2048i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_STARTBANNER: RESTRICTIONS = RESTRICTIONS(4096i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_RESTRICTRUN: RESTRICTIONS = RESTRICTIONS(8192i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOPRINTERTABS: RESTRICTIONS = RESTRICTIONS(16384i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOPRINTERDELETE: RESTRICTIONS = RESTRICTIONS(32768i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOPRINTERADD: RESTRICTIONS = RESTRICTIONS(65536i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSTARTMENUSUBFOLDERS: RESTRICTIONS = RESTRICTIONS(131072i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_MYDOCSONNET: RESTRICTIONS = RESTRICTIONS(262144i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOEXITTODOS: RESTRICTIONS = RESTRICTIONS(524288i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_ENFORCESHELLEXTSECURITY: RESTRICTIONS = RESTRICTIONS(1048576i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_LINKRESOLVEIGNORELINKINFO: RESTRICTIONS = RESTRICTIONS(2097152i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOCOMMONGROUPS: RESTRICTIONS = RESTRICTIONS(4194304i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_SEPARATEDESKTOPPROCESS: RESTRICTIONS = RESTRICTIONS(8388608i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOWEB: RESTRICTIONS = RESTRICTIONS(16777216i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOTRAYCONTEXTMENU: RESTRICTIONS = RESTRICTIONS(33554432i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOVIEWCONTEXTMENU: RESTRICTIONS = RESTRICTIONS(67108864i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NONETCONNECTDISCONNECT: RESTRICTIONS = RESTRICTIONS(134217728i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_STARTMENULOGOFF: RESTRICTIONS = RESTRICTIONS(268435456i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSETTINGSASSIST: RESTRICTIONS = RESTRICTIONS(536870912i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOINTERNETICON: RESTRICTIONS = RESTRICTIONS(1073741825i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NORECENTDOCSHISTORY: RESTRICTIONS = RESTRICTIONS(1073741826i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NORECENTDOCSMENU: RESTRICTIONS = RESTRICTIONS(1073741827i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOACTIVEDESKTOP: RESTRICTIONS = RESTRICTIONS(1073741828i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOACTIVEDESKTOPCHANGES: RESTRICTIONS = RESTRICTIONS(1073741829i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOFAVORITESMENU: RESTRICTIONS = RESTRICTIONS(1073741830i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_CLEARRECENTDOCSONEXIT: RESTRICTIONS = RESTRICTIONS(1073741831i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_CLASSICSHELL: RESTRICTIONS = RESTRICTIONS(1073741832i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOCUSTOMIZEWEBVIEW: RESTRICTIONS = RESTRICTIONS(1073741833i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOHTMLWALLPAPER: RESTRICTIONS = RESTRICTIONS(1073741840i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOCHANGINGWALLPAPER: RESTRICTIONS = RESTRICTIONS(1073741841i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NODESKCOMP: RESTRICTIONS = RESTRICTIONS(1073741842i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOADDDESKCOMP: RESTRICTIONS = RESTRICTIONS(1073741843i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NODELDESKCOMP: RESTRICTIONS = RESTRICTIONS(1073741844i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOCLOSEDESKCOMP: RESTRICTIONS = RESTRICTIONS(1073741845i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOCLOSE_DRAGDROPBAND: RESTRICTIONS = RESTRICTIONS(1073741846i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOMOVINGBAND: RESTRICTIONS = RESTRICTIONS(1073741847i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOEDITDESKCOMP: RESTRICTIONS = RESTRICTIONS(1073741848i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NORESOLVESEARCH: RESTRICTIONS = RESTRICTIONS(1073741849i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NORESOLVETRACK: RESTRICTIONS = RESTRICTIONS(1073741850i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_FORCECOPYACLWITHFILE: RESTRICTIONS = RESTRICTIONS(1073741851i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOFORGETSOFTWAREUPDATE: RESTRICTIONS = RESTRICTIONS(1073741853i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSETACTIVEDESKTOP: RESTRICTIONS = RESTRICTIONS(1073741854i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOUPDATEWINDOWS: RESTRICTIONS = RESTRICTIONS(1073741855i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOCHANGESTARMENU: RESTRICTIONS = RESTRICTIONS(1073741856i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOFOLDEROPTIONS: RESTRICTIONS = RESTRICTIONS(1073741857i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_HASFINDCOMPUTERS: RESTRICTIONS = RESTRICTIONS(1073741858i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_INTELLIMENUS: RESTRICTIONS = RESTRICTIONS(1073741859i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_RUNDLGMEMCHECKBOX: RESTRICTIONS = RESTRICTIONS(1073741860i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_ARP_ShowPostSetup: RESTRICTIONS = RESTRICTIONS(1073741861i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOCSC: RESTRICTIONS = RESTRICTIONS(1073741862i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOCONTROLPANEL: RESTRICTIONS = RESTRICTIONS(1073741863i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_ENUMWORKGROUP: RESTRICTIONS = RESTRICTIONS(1073741864i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_ARP_NOARP: RESTRICTIONS = RESTRICTIONS(1073741865i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_ARP_NOREMOVEPAGE: RESTRICTIONS = RESTRICTIONS(1073741866i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_ARP_NOADDPAGE: RESTRICTIONS = RESTRICTIONS(1073741867i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_ARP_NOWINSETUPPAGE: RESTRICTIONS = RESTRICTIONS(1073741868i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_GREYMSIADS: RESTRICTIONS = RESTRICTIONS(1073741869i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOCHANGEMAPPEDDRIVELABEL: RESTRICTIONS = RESTRICTIONS(1073741870i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOCHANGEMAPPEDDRIVECOMMENT: RESTRICTIONS = RESTRICTIONS(1073741871i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_MaxRecentDocs: RESTRICTIONS = RESTRICTIONS(1073741872i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NONETWORKCONNECTIONS: RESTRICTIONS = RESTRICTIONS(1073741873i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_FORCESTARTMENULOGOFF: RESTRICTIONS = RESTRICTIONS(1073741874i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOWEBVIEW: RESTRICTIONS = RESTRICTIONS(1073741875i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOCUSTOMIZETHISFOLDER: RESTRICTIONS = RESTRICTIONS(1073741876i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOENCRYPTION: RESTRICTIONS = RESTRICTIONS(1073741877i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_DONTSHOWSUPERHIDDEN: RESTRICTIONS = RESTRICTIONS(1073741879i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSHELLSEARCHBUTTON: RESTRICTIONS = RESTRICTIONS(1073741880i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOHARDWARETAB: RESTRICTIONS = RESTRICTIONS(1073741881i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NORUNASINSTALLPROMPT: RESTRICTIONS = RESTRICTIONS(1073741882i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_PROMPTRUNASINSTALLNETPATH: RESTRICTIONS = RESTRICTIONS(1073741883i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOMANAGEMYCOMPUTERVERB: RESTRICTIONS = RESTRICTIONS(1073741884i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_DISALLOWRUN: RESTRICTIONS = RESTRICTIONS(1073741886i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOWELCOMESCREEN: RESTRICTIONS = RESTRICTIONS(1073741887i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_RESTRICTCPL: RESTRICTIONS = RESTRICTIONS(1073741888i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_DISALLOWCPL: RESTRICTIONS = RESTRICTIONS(1073741889i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSMBALLOONTIP: RESTRICTIONS = RESTRICTIONS(1073741890i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSMHELP: RESTRICTIONS = RESTRICTIONS(1073741891i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOWINKEYS: RESTRICTIONS = RESTRICTIONS(1073741892i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOENCRYPTONMOVE: RESTRICTIONS = RESTRICTIONS(1073741893i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOLOCALMACHINERUN: RESTRICTIONS = RESTRICTIONS(1073741894i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOCURRENTUSERRUN: RESTRICTIONS = RESTRICTIONS(1073741895i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOLOCALMACHINERUNONCE: RESTRICTIONS = RESTRICTIONS(1073741896i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOCURRENTUSERRUNONCE: RESTRICTIONS = RESTRICTIONS(1073741897i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_FORCEACTIVEDESKTOPON: RESTRICTIONS = RESTRICTIONS(1073741898i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOVIEWONDRIVE: RESTRICTIONS = RESTRICTIONS(1073741900i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NONETCRAWL: RESTRICTIONS = RESTRICTIONS(1073741901i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSHAREDDOCUMENTS: RESTRICTIONS = RESTRICTIONS(1073741902i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSMMYDOCS: RESTRICTIONS = RESTRICTIONS(1073741903i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSMMYPICS: RESTRICTIONS = RESTRICTIONS(1073741904i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_ALLOWBITBUCKDRIVES: RESTRICTIONS = RESTRICTIONS(1073741905i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NONLEGACYSHELLMODE: RESTRICTIONS = RESTRICTIONS(1073741906i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOCONTROLPANELBARRICADE: RESTRICTIONS = RESTRICTIONS(1073741907i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSTARTPAGE: RESTRICTIONS = RESTRICTIONS(1073741908i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOAUTOTRAYNOTIFY: RESTRICTIONS = RESTRICTIONS(1073741909i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOTASKGROUPING: RESTRICTIONS = RESTRICTIONS(1073741910i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOCDBURNING: RESTRICTIONS = RESTRICTIONS(1073741911i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_MYCOMPNOPROP: RESTRICTIONS = RESTRICTIONS(1073741912i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_MYDOCSNOPROP: RESTRICTIONS = RESTRICTIONS(1073741913i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSTARTPANEL: RESTRICTIONS = RESTRICTIONS(1073741914i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NODISPLAYAPPEARANCEPAGE: RESTRICTIONS = RESTRICTIONS(1073741915i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOTHEMESTAB: RESTRICTIONS = RESTRICTIONS(1073741916i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOVISUALSTYLECHOICE: RESTRICTIONS = RESTRICTIONS(1073741917i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSIZECHOICE: RESTRICTIONS = RESTRICTIONS(1073741918i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOCOLORCHOICE: RESTRICTIONS = RESTRICTIONS(1073741919i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_SETVISUALSTYLE: RESTRICTIONS = RESTRICTIONS(1073741920i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_STARTRUNNOHOMEPATH: RESTRICTIONS = RESTRICTIONS(1073741921i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOUSERNAMEINSTARTPANEL: RESTRICTIONS = RESTRICTIONS(1073741922i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOMYCOMPUTERICON: RESTRICTIONS = RESTRICTIONS(1073741923i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSMNETWORKPLACES: RESTRICTIONS = RESTRICTIONS(1073741924i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSMPINNEDLIST: RESTRICTIONS = RESTRICTIONS(1073741925i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSMMYMUSIC: RESTRICTIONS = RESTRICTIONS(1073741926i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSMEJECTPC: RESTRICTIONS = RESTRICTIONS(1073741927i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSMMOREPROGRAMS: RESTRICTIONS = RESTRICTIONS(1073741928i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSMMFUPROGRAMS: RESTRICTIONS = RESTRICTIONS(1073741929i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOTRAYITEMSDISPLAY: RESTRICTIONS = RESTRICTIONS(1073741930i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOTOOLBARSONTASKBAR: RESTRICTIONS = RESTRICTIONS(1073741931i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSMCONFIGUREPROGRAMS: RESTRICTIONS = RESTRICTIONS(1073741935i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_HIDECLOCK: RESTRICTIONS = RESTRICTIONS(1073741936i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOLOWDISKSPACECHECKS: RESTRICTIONS = RESTRICTIONS(1073741937i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOENTIRENETWORK: RESTRICTIONS = RESTRICTIONS(1073741938i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NODESKTOPCLEANUP: RESTRICTIONS = RESTRICTIONS(1073741939i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_BITBUCKNUKEONDELETE: RESTRICTIONS = RESTRICTIONS(1073741940i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_BITBUCKCONFIRMDELETE: RESTRICTIONS = RESTRICTIONS(1073741941i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_BITBUCKNOPROP: RESTRICTIONS = RESTRICTIONS(1073741942i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NODISPBACKGROUND: RESTRICTIONS = RESTRICTIONS(1073741943i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NODISPSCREENSAVEPG: RESTRICTIONS = RESTRICTIONS(1073741944i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NODISPSETTINGSPG: RESTRICTIONS = RESTRICTIONS(1073741945i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NODISPSCREENSAVEPREVIEW: RESTRICTIONS = RESTRICTIONS(1073741946i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NODISPLAYCPL: RESTRICTIONS = RESTRICTIONS(1073741947i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_HIDERUNASVERB: RESTRICTIONS = RESTRICTIONS(1073741948i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOTHUMBNAILCACHE: RESTRICTIONS = RESTRICTIONS(1073741949i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSTRCMPLOGICAL: RESTRICTIONS = RESTRICTIONS(1073741950i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOPUBLISHWIZARD: RESTRICTIONS = RESTRICTIONS(1073741951i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOONLINEPRINTSWIZARD: RESTRICTIONS = RESTRICTIONS(1073741952i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOWEBSERVICES: RESTRICTIONS = RESTRICTIONS(1073741953i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_ALLOWUNHASHEDWEBVIEW: RESTRICTIONS = RESTRICTIONS(1073741954i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_ALLOWLEGACYWEBVIEW: RESTRICTIONS = RESTRICTIONS(1073741955i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_REVERTWEBVIEWSECURITY: RESTRICTIONS = RESTRICTIONS(1073741956i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_INHERITCONSOLEHANDLES: RESTRICTIONS = RESTRICTIONS(1073741958i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOREMOTERECURSIVEEVENTS: RESTRICTIONS = RESTRICTIONS(1073741961i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOREMOTECHANGENOTIFY: RESTRICTIONS = RESTRICTIONS(1073741969i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOENUMENTIRENETWORK: RESTRICTIONS = RESTRICTIONS(1073741971i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOINTERNETOPENWITH: RESTRICTIONS = RESTRICTIONS(1073741973i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_DONTRETRYBADNETNAME: RESTRICTIONS = RESTRICTIONS(1073741979i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_ALLOWFILECLSIDJUNCTIONS: RESTRICTIONS = RESTRICTIONS(1073741980i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOUPNPINSTALL: RESTRICTIONS = RESTRICTIONS(1073741981i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_ARP_DONTGROUPPATCHES: RESTRICTIONS = RESTRICTIONS(1073741996i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_ARP_NOCHOOSEPROGRAMSPAGE: RESTRICTIONS = RESTRICTIONS(1073741997i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NODISCONNECT: RESTRICTIONS = RESTRICTIONS(1090519041i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOSECURITY: RESTRICTIONS = RESTRICTIONS(1090519042i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_NOFILEASSOCIATE: RESTRICTIONS = RESTRICTIONS(1090519043i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REST_ALLOWCOMMENTTOGGLE: RESTRICTIONS = RESTRICTIONS(1090519044i32);
impl ::core::marker::Copy for RESTRICTIONS {}
impl ::core::clone::Clone for RESTRICTIONS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for RESTRICTIONS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for RESTRICTIONS {
type Abi = Self;
}
impl ::core::fmt::Debug for RESTRICTIONS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("RESTRICTIONS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct RefreshConstants(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REFRESH_NORMAL: RefreshConstants = RefreshConstants(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REFRESH_IFEXPIRED: RefreshConstants = RefreshConstants(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const REFRESH_COMPLETELY: RefreshConstants = RefreshConstants(3i32);
impl ::core::marker::Copy for RefreshConstants {}
impl ::core::clone::Clone for RefreshConstants {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for RefreshConstants {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for RefreshConstants {
type Abi = Self;
}
impl ::core::fmt::Debug for RefreshConstants {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("RefreshConstants").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SCALE_CHANGE_FLAGS(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SCF_VALUE_NONE: SCALE_CHANGE_FLAGS = SCALE_CHANGE_FLAGS(0u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SCF_SCALE: SCALE_CHANGE_FLAGS = SCALE_CHANGE_FLAGS(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SCF_PHYSICAL: SCALE_CHANGE_FLAGS = SCALE_CHANGE_FLAGS(2u32);
impl ::core::marker::Copy for SCALE_CHANGE_FLAGS {}
impl ::core::clone::Clone for SCALE_CHANGE_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SCALE_CHANGE_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SCALE_CHANGE_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SCALE_CHANGE_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SCALE_CHANGE_FLAGS").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for SCALE_CHANGE_FLAGS {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for SCALE_CHANGE_FLAGS {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for SCALE_CHANGE_FLAGS {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for SCALE_CHANGE_FLAGS {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for SCALE_CHANGE_FLAGS {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SCNRT_STATUS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SCNRT_ENABLE: SCNRT_STATUS = SCNRT_STATUS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SCNRT_DISABLE: SCNRT_STATUS = SCNRT_STATUS(1i32);
impl ::core::marker::Copy for SCNRT_STATUS {}
impl ::core::clone::Clone for SCNRT_STATUS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SCNRT_STATUS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SCNRT_STATUS {
type Abi = Self;
}
impl ::core::fmt::Debug for SCNRT_STATUS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SCNRT_STATUS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SECURELOCKCODE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SECURELOCK_NOCHANGE: SECURELOCKCODE = SECURELOCKCODE(-1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SECURELOCK_SET_UNSECURE: SECURELOCKCODE = SECURELOCKCODE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SECURELOCK_SET_MIXED: SECURELOCKCODE = SECURELOCKCODE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SECURELOCK_SET_SECUREUNKNOWNBIT: SECURELOCKCODE = SECURELOCKCODE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SECURELOCK_SET_SECURE40BIT: SECURELOCKCODE = SECURELOCKCODE(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SECURELOCK_SET_SECURE56BIT: SECURELOCKCODE = SECURELOCKCODE(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SECURELOCK_SET_FORTEZZA: SECURELOCKCODE = SECURELOCKCODE(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SECURELOCK_SET_SECURE128BIT: SECURELOCKCODE = SECURELOCKCODE(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SECURELOCK_FIRSTSUGGEST: SECURELOCKCODE = SECURELOCKCODE(7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SECURELOCK_SUGGEST_UNSECURE: SECURELOCKCODE = SECURELOCKCODE(7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SECURELOCK_SUGGEST_MIXED: SECURELOCKCODE = SECURELOCKCODE(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SECURELOCK_SUGGEST_SECUREUNKNOWNBIT: SECURELOCKCODE = SECURELOCKCODE(9i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SECURELOCK_SUGGEST_SECURE40BIT: SECURELOCKCODE = SECURELOCKCODE(10i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SECURELOCK_SUGGEST_SECURE56BIT: SECURELOCKCODE = SECURELOCKCODE(11i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SECURELOCK_SUGGEST_FORTEZZA: SECURELOCKCODE = SECURELOCKCODE(12i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SECURELOCK_SUGGEST_SECURE128BIT: SECURELOCKCODE = SECURELOCKCODE(13i32);
impl ::core::marker::Copy for SECURELOCKCODE {}
impl ::core::clone::Clone for SECURELOCKCODE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SECURELOCKCODE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SECURELOCKCODE {
type Abi = Self;
}
impl ::core::fmt::Debug for SECURELOCKCODE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SECURELOCKCODE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SFBS_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFBS_FLAGS_ROUND_TO_NEAREST_DISPLAYED_DIGIT: SFBS_FLAGS = SFBS_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFBS_FLAGS_TRUNCATE_UNDISPLAYED_DECIMAL_DIGITS: SFBS_FLAGS = SFBS_FLAGS(2i32);
impl ::core::marker::Copy for SFBS_FLAGS {}
impl ::core::clone::Clone for SFBS_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SFBS_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SFBS_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SFBS_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SFBS_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SFVM_MESSAGE_ID(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_MERGEMENU: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_INVOKECOMMAND: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_GETHELPTEXT: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_GETTOOLTIPTEXT: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_GETBUTTONINFO: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_GETBUTTONS: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_INITMENUPOPUP: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_FSNOTIFY: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(14i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_WINDOWCREATED: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(15i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_GETDETAILSOF: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(23i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_COLUMNCLICK: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(24i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_QUERYFSNOTIFY: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(25i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_DEFITEMCOUNT: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(26i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_DEFVIEWMODE: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(27i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_UNMERGEMENU: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(28i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_UPDATESTATUSBAR: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(31i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_BACKGROUNDENUM: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_DIDDRAGDROP: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(36i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_SETISFV: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(39i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_THISIDLIST: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(41i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_ADDPROPERTYPAGES: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(47i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_BACKGROUNDENUMDONE: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(48i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_GETNOTIFY: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(49i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_GETSORTDEFAULTS: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(53i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_SIZE: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(57i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_GETZONE: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(58i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_GETPANE: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(59i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_GETHELPTOPIC: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(63i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVM_GETANIMATION: SFVM_MESSAGE_ID = SFVM_MESSAGE_ID(68i32);
impl ::core::marker::Copy for SFVM_MESSAGE_ID {}
impl ::core::clone::Clone for SFVM_MESSAGE_ID {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SFVM_MESSAGE_ID {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SFVM_MESSAGE_ID {
type Abi = Self;
}
impl ::core::fmt::Debug for SFVM_MESSAGE_ID {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SFVM_MESSAGE_ID").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SFVS_SELECT(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVS_SELECT_NONE: SFVS_SELECT = SFVS_SELECT(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVS_SELECT_ALLITEMS: SFVS_SELECT = SFVS_SELECT(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVS_SELECT_INVERT: SFVS_SELECT = SFVS_SELECT(2i32);
impl ::core::marker::Copy for SFVS_SELECT {}
impl ::core::clone::Clone for SFVS_SELECT {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SFVS_SELECT {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SFVS_SELECT {
type Abi = Self;
}
impl ::core::fmt::Debug for SFVS_SELECT {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SFVS_SELECT").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHARD(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHARD_PIDL: SHARD = SHARD(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHARD_PATHA: SHARD = SHARD(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHARD_PATHW: SHARD = SHARD(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHARD_APPIDINFO: SHARD = SHARD(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHARD_APPIDINFOIDLIST: SHARD = SHARD(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHARD_LINK: SHARD = SHARD(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHARD_APPIDINFOLINK: SHARD = SHARD(7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHARD_SHELLITEM: SHARD = SHARD(8i32);
impl ::core::marker::Copy for SHARD {}
impl ::core::clone::Clone for SHARD {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHARD {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHARD {
type Abi = Self;
}
impl ::core::fmt::Debug for SHARD {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHARD").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHARE_ROLE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHARE_ROLE_INVALID: SHARE_ROLE = SHARE_ROLE(-1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHARE_ROLE_READER: SHARE_ROLE = SHARE_ROLE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHARE_ROLE_CONTRIBUTOR: SHARE_ROLE = SHARE_ROLE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHARE_ROLE_CO_OWNER: SHARE_ROLE = SHARE_ROLE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHARE_ROLE_OWNER: SHARE_ROLE = SHARE_ROLE(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHARE_ROLE_CUSTOM: SHARE_ROLE = SHARE_ROLE(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHARE_ROLE_MIXED: SHARE_ROLE = SHARE_ROLE(5i32);
impl ::core::marker::Copy for SHARE_ROLE {}
impl ::core::clone::Clone for SHARE_ROLE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHARE_ROLE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHARE_ROLE {
type Abi = Self;
}
impl ::core::fmt::Debug for SHARE_ROLE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHARE_ROLE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHCNE_ID(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_RENAMEITEM: SHCNE_ID = SHCNE_ID(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_CREATE: SHCNE_ID = SHCNE_ID(2u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_DELETE: SHCNE_ID = SHCNE_ID(4u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_MKDIR: SHCNE_ID = SHCNE_ID(8u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_RMDIR: SHCNE_ID = SHCNE_ID(16u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_MEDIAINSERTED: SHCNE_ID = SHCNE_ID(32u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_MEDIAREMOVED: SHCNE_ID = SHCNE_ID(64u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_DRIVEREMOVED: SHCNE_ID = SHCNE_ID(128u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_DRIVEADD: SHCNE_ID = SHCNE_ID(256u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_NETSHARE: SHCNE_ID = SHCNE_ID(512u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_NETUNSHARE: SHCNE_ID = SHCNE_ID(1024u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_ATTRIBUTES: SHCNE_ID = SHCNE_ID(2048u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_UPDATEDIR: SHCNE_ID = SHCNE_ID(4096u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_UPDATEITEM: SHCNE_ID = SHCNE_ID(8192u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_SERVERDISCONNECT: SHCNE_ID = SHCNE_ID(16384u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_UPDATEIMAGE: SHCNE_ID = SHCNE_ID(32768u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_DRIVEADDGUI: SHCNE_ID = SHCNE_ID(65536u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_RENAMEFOLDER: SHCNE_ID = SHCNE_ID(131072u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_FREESPACE: SHCNE_ID = SHCNE_ID(262144u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_EXTENDED_EVENT: SHCNE_ID = SHCNE_ID(67108864u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_ASSOCCHANGED: SHCNE_ID = SHCNE_ID(134217728u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_DISKEVENTS: SHCNE_ID = SHCNE_ID(145439u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_GLOBALEVENTS: SHCNE_ID = SHCNE_ID(201687520u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_ALLEVENTS: SHCNE_ID = SHCNE_ID(2147483647u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNE_INTERRUPT: SHCNE_ID = SHCNE_ID(2147483648u32);
impl ::core::marker::Copy for SHCNE_ID {}
impl ::core::clone::Clone for SHCNE_ID {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHCNE_ID {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHCNE_ID {
type Abi = Self;
}
impl ::core::fmt::Debug for SHCNE_ID {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHCNE_ID").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for SHCNE_ID {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for SHCNE_ID {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for SHCNE_ID {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for SHCNE_ID {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for SHCNE_ID {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHCNF_FLAGS(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNF_IDLIST: SHCNF_FLAGS = SHCNF_FLAGS(0u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNF_PATHA: SHCNF_FLAGS = SHCNF_FLAGS(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNF_PRINTERA: SHCNF_FLAGS = SHCNF_FLAGS(2u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNF_DWORD: SHCNF_FLAGS = SHCNF_FLAGS(3u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNF_PATHW: SHCNF_FLAGS = SHCNF_FLAGS(5u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNF_PRINTERW: SHCNF_FLAGS = SHCNF_FLAGS(6u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNF_TYPE: SHCNF_FLAGS = SHCNF_FLAGS(255u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNF_FLUSH: SHCNF_FLAGS = SHCNF_FLAGS(4096u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNF_FLUSHNOWAIT: SHCNF_FLAGS = SHCNF_FLAGS(12288u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNF_NOTIFYRECURSIVE: SHCNF_FLAGS = SHCNF_FLAGS(65536u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNF_PATH: SHCNF_FLAGS = SHCNF_FLAGS(5u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNF_PRINTER: SHCNF_FLAGS = SHCNF_FLAGS(6u32);
impl ::core::marker::Copy for SHCNF_FLAGS {}
impl ::core::clone::Clone for SHCNF_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHCNF_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHCNF_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SHCNF_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHCNF_FLAGS").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for SHCNF_FLAGS {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for SHCNF_FLAGS {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for SHCNF_FLAGS {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for SHCNF_FLAGS {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for SHCNF_FLAGS {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHCNRF_SOURCE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNRF_InterruptLevel: SHCNRF_SOURCE = SHCNRF_SOURCE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNRF_ShellLevel: SHCNRF_SOURCE = SHCNRF_SOURCE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNRF_RecursiveInterrupt: SHCNRF_SOURCE = SHCNRF_SOURCE(4096i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCNRF_NewDelivery: SHCNRF_SOURCE = SHCNRF_SOURCE(32768i32);
impl ::core::marker::Copy for SHCNRF_SOURCE {}
impl ::core::clone::Clone for SHCNRF_SOURCE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHCNRF_SOURCE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHCNRF_SOURCE {
type Abi = Self;
}
impl ::core::fmt::Debug for SHCNRF_SOURCE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHCNRF_SOURCE").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for SHCNRF_SOURCE {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for SHCNRF_SOURCE {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for SHCNRF_SOURCE {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for SHCNRF_SOURCE {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for SHCNRF_SOURCE {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHDID_ID(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_ROOT_REGITEM: SHDID_ID = SHDID_ID(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_FS_FILE: SHDID_ID = SHDID_ID(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_FS_DIRECTORY: SHDID_ID = SHDID_ID(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_FS_OTHER: SHDID_ID = SHDID_ID(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_COMPUTER_DRIVE35: SHDID_ID = SHDID_ID(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_COMPUTER_DRIVE525: SHDID_ID = SHDID_ID(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_COMPUTER_REMOVABLE: SHDID_ID = SHDID_ID(7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_COMPUTER_FIXED: SHDID_ID = SHDID_ID(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_COMPUTER_NETDRIVE: SHDID_ID = SHDID_ID(9i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_COMPUTER_CDROM: SHDID_ID = SHDID_ID(10i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_COMPUTER_RAMDISK: SHDID_ID = SHDID_ID(11i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_COMPUTER_OTHER: SHDID_ID = SHDID_ID(12i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_NET_DOMAIN: SHDID_ID = SHDID_ID(13i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_NET_SERVER: SHDID_ID = SHDID_ID(14i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_NET_SHARE: SHDID_ID = SHDID_ID(15i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_NET_RESTOFNET: SHDID_ID = SHDID_ID(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_NET_OTHER: SHDID_ID = SHDID_ID(17i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_COMPUTER_IMAGING: SHDID_ID = SHDID_ID(18i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_COMPUTER_AUDIO: SHDID_ID = SHDID_ID(19i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_COMPUTER_SHAREDDOCS: SHDID_ID = SHDID_ID(20i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_MOBILE_DEVICE: SHDID_ID = SHDID_ID(21i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHDID_REMOTE_DESKTOP_DRIVE: SHDID_ID = SHDID_ID(22i32);
impl ::core::marker::Copy for SHDID_ID {}
impl ::core::clone::Clone for SHDID_ID {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHDID_ID {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHDID_ID {
type Abi = Self;
}
impl ::core::fmt::Debug for SHDID_ID {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHDID_ID").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHELLBROWSERSHOWCONTROL(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSC_HIDE: SHELLBROWSERSHOWCONTROL = SHELLBROWSERSHOWCONTROL(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSC_SHOW: SHELLBROWSERSHOWCONTROL = SHELLBROWSERSHOWCONTROL(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSC_TOGGLE: SHELLBROWSERSHOWCONTROL = SHELLBROWSERSHOWCONTROL(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SBSC_QUERY: SHELLBROWSERSHOWCONTROL = SHELLBROWSERSHOWCONTROL(3i32);
impl ::core::marker::Copy for SHELLBROWSERSHOWCONTROL {}
impl ::core::clone::Clone for SHELLBROWSERSHOWCONTROL {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHELLBROWSERSHOWCONTROL {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHELLBROWSERSHOWCONTROL {
type Abi = Self;
}
impl ::core::fmt::Debug for SHELLBROWSERSHOWCONTROL {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHELLBROWSERSHOWCONTROL").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHELL_AUTOCOMPLETE_FLAGS(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHACF_DEFAULT: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(0u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHACF_FILESYSTEM: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHACF_URLALL: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(6u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHACF_URLHISTORY: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(2u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHACF_URLMRU: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(4u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHACF_USETAB: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(8u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHACF_FILESYS_ONLY: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(16u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHACF_FILESYS_DIRS: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(32u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHACF_VIRTUAL_NAMESPACE: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(64u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHACF_AUTOSUGGEST_FORCE_ON: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(268435456u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHACF_AUTOSUGGEST_FORCE_OFF: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(536870912u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHACF_AUTOAPPEND_FORCE_ON: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(1073741824u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHACF_AUTOAPPEND_FORCE_OFF: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(2147483648u32);
impl ::core::marker::Copy for SHELL_AUTOCOMPLETE_FLAGS {}
impl ::core::clone::Clone for SHELL_AUTOCOMPLETE_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHELL_AUTOCOMPLETE_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHELL_AUTOCOMPLETE_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SHELL_AUTOCOMPLETE_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHELL_AUTOCOMPLETE_FLAGS").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for SHELL_AUTOCOMPLETE_FLAGS {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for SHELL_AUTOCOMPLETE_FLAGS {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for SHELL_AUTOCOMPLETE_FLAGS {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for SHELL_AUTOCOMPLETE_FLAGS {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for SHELL_AUTOCOMPLETE_FLAGS {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHELL_LINK_DATA_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_DEFAULT: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_HAS_ID_LIST: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_HAS_LINK_INFO: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_HAS_NAME: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_HAS_RELPATH: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_HAS_WORKINGDIR: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_HAS_ARGS: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_HAS_ICONLOCATION: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_UNICODE: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_FORCE_NO_LINKINFO: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_HAS_EXP_SZ: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_RUN_IN_SEPARATE: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_HAS_DARWINID: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(4096i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_RUNAS_USER: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(8192i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_HAS_EXP_ICON_SZ: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(16384i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_NO_PIDL_ALIAS: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(32768i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_FORCE_UNCNAME: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(65536i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_RUN_WITH_SHIMLAYER: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(131072i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_FORCE_NO_LINKTRACK: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(262144i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_ENABLE_TARGET_METADATA: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(524288i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_DISABLE_LINK_PATH_TRACKING: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(1048576i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_DISABLE_KNOWNFOLDER_RELATIVE_TRACKING: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(2097152i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_NO_KF_ALIAS: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(4194304i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_ALLOW_LINK_TO_LINK: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(8388608i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_UNALIAS_ON_SAVE: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(16777216i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_PREFER_ENVIRONMENT_PATH: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(33554432i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_KEEP_LOCAL_IDLIST_FOR_UNC_TARGET: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(67108864i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_PERSIST_VOLUME_ID_RELATIVE: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(134217728i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_VALID: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(268433407i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLDF_RESERVED: SHELL_LINK_DATA_FLAGS = SHELL_LINK_DATA_FLAGS(-2147483648i32);
impl ::core::marker::Copy for SHELL_LINK_DATA_FLAGS {}
impl ::core::clone::Clone for SHELL_LINK_DATA_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHELL_LINK_DATA_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHELL_LINK_DATA_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SHELL_LINK_DATA_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHELL_LINK_DATA_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHELL_UI_COMPONENT(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHELL_UI_COMPONENT_TASKBARS: SHELL_UI_COMPONENT = SHELL_UI_COMPONENT(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHELL_UI_COMPONENT_NOTIFICATIONAREA: SHELL_UI_COMPONENT = SHELL_UI_COMPONENT(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHELL_UI_COMPONENT_DESKBAND: SHELL_UI_COMPONENT = SHELL_UI_COMPONENT(2i32);
impl ::core::marker::Copy for SHELL_UI_COMPONENT {}
impl ::core::clone::Clone for SHELL_UI_COMPONENT {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHELL_UI_COMPONENT {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHELL_UI_COMPONENT {
type Abi = Self;
}
impl ::core::fmt::Debug for SHELL_UI_COMPONENT {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHELL_UI_COMPONENT").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHFMT_ID(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHFMT_ID_DEFAULT: SHFMT_ID = SHFMT_ID(65535u32);
impl ::core::marker::Copy for SHFMT_ID {}
impl ::core::clone::Clone for SHFMT_ID {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHFMT_ID {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHFMT_ID {
type Abi = Self;
}
impl ::core::fmt::Debug for SHFMT_ID {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHFMT_ID").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHFMT_OPT(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHFMT_OPT_NONE: SHFMT_OPT = SHFMT_OPT(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHFMT_OPT_FULL: SHFMT_OPT = SHFMT_OPT(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHFMT_OPT_SYSONLY: SHFMT_OPT = SHFMT_OPT(2i32);
impl ::core::marker::Copy for SHFMT_OPT {}
impl ::core::clone::Clone for SHFMT_OPT {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHFMT_OPT {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHFMT_OPT {
type Abi = Self;
}
impl ::core::fmt::Debug for SHFMT_OPT {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHFMT_OPT").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for SHFMT_OPT {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for SHFMT_OPT {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for SHFMT_OPT {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for SHFMT_OPT {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for SHFMT_OPT {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHFMT_RET(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHFMT_ERROR: SHFMT_RET = SHFMT_RET(4294967295u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHFMT_CANCEL: SHFMT_RET = SHFMT_RET(4294967294u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHFMT_NOFORMAT: SHFMT_RET = SHFMT_RET(4294967293u32);
impl ::core::marker::Copy for SHFMT_RET {}
impl ::core::clone::Clone for SHFMT_RET {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHFMT_RET {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHFMT_RET {
type Abi = Self;
}
impl ::core::fmt::Debug for SHFMT_RET {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHFMT_RET").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHGDFIL_FORMAT(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGDFIL_FINDDATA: SHGDFIL_FORMAT = SHGDFIL_FORMAT(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGDFIL_NETRESOURCE: SHGDFIL_FORMAT = SHGDFIL_FORMAT(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGDFIL_DESCRIPTIONID: SHGDFIL_FORMAT = SHGDFIL_FORMAT(3i32);
impl ::core::marker::Copy for SHGDFIL_FORMAT {}
impl ::core::clone::Clone for SHGDFIL_FORMAT {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHGDFIL_FORMAT {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHGDFIL_FORMAT {
type Abi = Self;
}
impl ::core::fmt::Debug for SHGDFIL_FORMAT {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHGDFIL_FORMAT").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHGDNF(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGDN_NORMAL: SHGDNF = SHGDNF(0u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGDN_INFOLDER: SHGDNF = SHGDNF(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGDN_FOREDITING: SHGDNF = SHGDNF(4096u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGDN_FORADDRESSBAR: SHGDNF = SHGDNF(16384u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGDN_FORPARSING: SHGDNF = SHGDNF(32768u32);
impl ::core::marker::Copy for SHGDNF {}
impl ::core::clone::Clone for SHGDNF {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHGDNF {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHGDNF {
type Abi = Self;
}
impl ::core::fmt::Debug for SHGDNF {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHGDNF").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHGFI_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFI_ADDOVERLAYS: SHGFI_FLAGS = SHGFI_FLAGS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFI_ATTR_SPECIFIED: SHGFI_FLAGS = SHGFI_FLAGS(131072i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFI_ATTRIBUTES: SHGFI_FLAGS = SHGFI_FLAGS(2048i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFI_DISPLAYNAME: SHGFI_FLAGS = SHGFI_FLAGS(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFI_EXETYPE: SHGFI_FLAGS = SHGFI_FLAGS(8192i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFI_ICON: SHGFI_FLAGS = SHGFI_FLAGS(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFI_ICONLOCATION: SHGFI_FLAGS = SHGFI_FLAGS(4096i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFI_LARGEICON: SHGFI_FLAGS = SHGFI_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFI_LINKOVERLAY: SHGFI_FLAGS = SHGFI_FLAGS(32768i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFI_OPENICON: SHGFI_FLAGS = SHGFI_FLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFI_OVERLAYINDEX: SHGFI_FLAGS = SHGFI_FLAGS(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFI_PIDL: SHGFI_FLAGS = SHGFI_FLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFI_SELECTED: SHGFI_FLAGS = SHGFI_FLAGS(65536i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFI_SHELLICONSIZE: SHGFI_FLAGS = SHGFI_FLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFI_SMALLICON: SHGFI_FLAGS = SHGFI_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFI_SYSICONINDEX: SHGFI_FLAGS = SHGFI_FLAGS(16384i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFI_TYPENAME: SHGFI_FLAGS = SHGFI_FLAGS(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFI_USEFILEATTRIBUTES: SHGFI_FLAGS = SHGFI_FLAGS(16i32);
impl ::core::marker::Copy for SHGFI_FLAGS {}
impl ::core::clone::Clone for SHGFI_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHGFI_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHGFI_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SHGFI_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHGFI_FLAGS").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for SHGFI_FLAGS {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for SHGFI_FLAGS {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for SHGFI_FLAGS {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for SHGFI_FLAGS {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for SHGFI_FLAGS {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHGFP_TYPE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFP_TYPE_CURRENT: SHGFP_TYPE = SHGFP_TYPE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGFP_TYPE_DEFAULT: SHGFP_TYPE = SHGFP_TYPE(1i32);
impl ::core::marker::Copy for SHGFP_TYPE {}
impl ::core::clone::Clone for SHGFP_TYPE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHGFP_TYPE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHGFP_TYPE {
type Abi = Self;
}
impl ::core::fmt::Debug for SHGFP_TYPE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHGFP_TYPE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHGLOBALCOUNTER(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_SEARCHMANAGER: SHGLOBALCOUNTER = SHGLOBALCOUNTER(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_SEARCHOPTIONS: SHGLOBALCOUNTER = SHGLOBALCOUNTER(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_FOLDERSETTINGSCHANGE: SHGLOBALCOUNTER = SHGLOBALCOUNTER(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RATINGS: SHGLOBALCOUNTER = SHGLOBALCOUNTER(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_APPROVEDSITES: SHGLOBALCOUNTER = SHGLOBALCOUNTER(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RESTRICTIONS: SHGLOBALCOUNTER = SHGLOBALCOUNTER(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_SHELLSETTINGSCHANGED: SHGLOBALCOUNTER = SHGLOBALCOUNTER(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_SYSTEMPIDLCHANGE: SHGLOBALCOUNTER = SHGLOBALCOUNTER(7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_OVERLAYMANAGER: SHGLOBALCOUNTER = SHGLOBALCOUNTER(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_QUERYASSOCIATIONS: SHGLOBALCOUNTER = SHGLOBALCOUNTER(9i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_IESESSIONS: SHGLOBALCOUNTER = SHGLOBALCOUNTER(10i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_IEONLY_SESSIONS: SHGLOBALCOUNTER = SHGLOBALCOUNTER(11i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_APPLICATION_DESTINATIONS: SHGLOBALCOUNTER = SHGLOBALCOUNTER(12i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const __UNUSED_RECYCLE_WAS_GLOBALCOUNTER_CSCSYNCINPROGRESS: SHGLOBALCOUNTER = SHGLOBALCOUNTER(13i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_BITBUCKETNUMDELETERS: SHGLOBALCOUNTER = SHGLOBALCOUNTER(14i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_SHARES: SHGLOBALCOUNTER = SHGLOBALCOUNTER(15i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_A: SHGLOBALCOUNTER = SHGLOBALCOUNTER(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_B: SHGLOBALCOUNTER = SHGLOBALCOUNTER(17i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_C: SHGLOBALCOUNTER = SHGLOBALCOUNTER(18i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_D: SHGLOBALCOUNTER = SHGLOBALCOUNTER(19i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_E: SHGLOBALCOUNTER = SHGLOBALCOUNTER(20i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_F: SHGLOBALCOUNTER = SHGLOBALCOUNTER(21i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_G: SHGLOBALCOUNTER = SHGLOBALCOUNTER(22i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_H: SHGLOBALCOUNTER = SHGLOBALCOUNTER(23i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_I: SHGLOBALCOUNTER = SHGLOBALCOUNTER(24i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_J: SHGLOBALCOUNTER = SHGLOBALCOUNTER(25i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_K: SHGLOBALCOUNTER = SHGLOBALCOUNTER(26i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_L: SHGLOBALCOUNTER = SHGLOBALCOUNTER(27i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_M: SHGLOBALCOUNTER = SHGLOBALCOUNTER(28i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_N: SHGLOBALCOUNTER = SHGLOBALCOUNTER(29i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_O: SHGLOBALCOUNTER = SHGLOBALCOUNTER(30i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_P: SHGLOBALCOUNTER = SHGLOBALCOUNTER(31i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_Q: SHGLOBALCOUNTER = SHGLOBALCOUNTER(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_R: SHGLOBALCOUNTER = SHGLOBALCOUNTER(33i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_S: SHGLOBALCOUNTER = SHGLOBALCOUNTER(34i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_T: SHGLOBALCOUNTER = SHGLOBALCOUNTER(35i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_U: SHGLOBALCOUNTER = SHGLOBALCOUNTER(36i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_V: SHGLOBALCOUNTER = SHGLOBALCOUNTER(37i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_W: SHGLOBALCOUNTER = SHGLOBALCOUNTER(38i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_X: SHGLOBALCOUNTER = SHGLOBALCOUNTER(39i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_Y: SHGLOBALCOUNTER = SHGLOBALCOUNTER(40i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_Z: SHGLOBALCOUNTER = SHGLOBALCOUNTER(41i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const __UNUSED_RECYCLE_WAS_GLOBALCOUNTER_RECYCLEDIRTYCOUNT_SERVERDRIVE: SHGLOBALCOUNTER = SHGLOBALCOUNTER(42i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const __UNUSED_RECYCLE_WAS_GLOBALCOUNTER_RECYCLEGLOBALDIRTYCOUNT: SHGLOBALCOUNTER = SHGLOBALCOUNTER(43i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEBINENUM: SHGLOBALCOUNTER = SHGLOBALCOUNTER(44i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RECYCLEBINCORRUPTED: SHGLOBALCOUNTER = SHGLOBALCOUNTER(45i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_RATINGS_STATECOUNTER: SHGLOBALCOUNTER = SHGLOBALCOUNTER(46i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_PRIVATE_PROFILE_CACHE: SHGLOBALCOUNTER = SHGLOBALCOUNTER(47i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_INTERNETTOOLBAR_LAYOUT: SHGLOBALCOUNTER = SHGLOBALCOUNTER(48i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_FOLDERDEFINITION_CACHE: SHGLOBALCOUNTER = SHGLOBALCOUNTER(49i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_COMMONPLACES_LIST_CACHE: SHGLOBALCOUNTER = SHGLOBALCOUNTER(50i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_PRIVATE_PROFILE_CACHE_MACHINEWIDE: SHGLOBALCOUNTER = SHGLOBALCOUNTER(51i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_ASSOCCHANGED: SHGLOBALCOUNTER = SHGLOBALCOUNTER(52i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_APP_ITEMS_STATE_STORE_CACHE: SHGLOBALCOUNTER = SHGLOBALCOUNTER(53i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_SETTINGSYNC_ENABLED: SHGLOBALCOUNTER = SHGLOBALCOUNTER(54i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_APPSFOLDER_FILETYPEASSOCIATION_COUNTER: SHGLOBALCOUNTER = SHGLOBALCOUNTER(55i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_USERINFOCHANGED: SHGLOBALCOUNTER = SHGLOBALCOUNTER(56i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_SYNC_ENGINE_INFORMATION_CACHE_MACHINEWIDE: SHGLOBALCOUNTER = SHGLOBALCOUNTER(57i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_BANNERS_DATAMODEL_CACHE_MACHINEWIDE: SHGLOBALCOUNTER = SHGLOBALCOUNTER(58i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const GLOBALCOUNTER_MAXIMUMVALUE: SHGLOBALCOUNTER = SHGLOBALCOUNTER(59i32);
impl ::core::marker::Copy for SHGLOBALCOUNTER {}
impl ::core::clone::Clone for SHGLOBALCOUNTER {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHGLOBALCOUNTER {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHGLOBALCOUNTER {
type Abi = Self;
}
impl ::core::fmt::Debug for SHGLOBALCOUNTER {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHGLOBALCOUNTER").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHGSI_FLAGS(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGSI_ICONLOCATION: SHGSI_FLAGS = SHGSI_FLAGS(0u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGSI_ICON: SHGSI_FLAGS = SHGSI_FLAGS(256u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGSI_SYSICONINDEX: SHGSI_FLAGS = SHGSI_FLAGS(16384u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGSI_LINKOVERLAY: SHGSI_FLAGS = SHGSI_FLAGS(32768u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGSI_SELECTED: SHGSI_FLAGS = SHGSI_FLAGS(65536u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGSI_LARGEICON: SHGSI_FLAGS = SHGSI_FLAGS(0u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGSI_SMALLICON: SHGSI_FLAGS = SHGSI_FLAGS(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHGSI_SHELLICONSIZE: SHGSI_FLAGS = SHGSI_FLAGS(4u32);
impl ::core::marker::Copy for SHGSI_FLAGS {}
impl ::core::clone::Clone for SHGSI_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHGSI_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHGSI_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SHGSI_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHGSI_FLAGS").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for SHGSI_FLAGS {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for SHGSI_FLAGS {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for SHGSI_FLAGS {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for SHGSI_FLAGS {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for SHGSI_FLAGS {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHOP_TYPE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHOP_PRINTERNAME: SHOP_TYPE = SHOP_TYPE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHOP_FILEPATH: SHOP_TYPE = SHOP_TYPE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHOP_VOLUMEGUID: SHOP_TYPE = SHOP_TYPE(4i32);
impl ::core::marker::Copy for SHOP_TYPE {}
impl ::core::clone::Clone for SHOP_TYPE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHOP_TYPE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHOP_TYPE {
type Abi = Self;
}
impl ::core::fmt::Debug for SHOP_TYPE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHOP_TYPE").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for SHOP_TYPE {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for SHOP_TYPE {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for SHOP_TYPE {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for SHOP_TYPE {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for SHOP_TYPE {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHREGDEL_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHREGDEL_DEFAULT: SHREGDEL_FLAGS = SHREGDEL_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHREGDEL_HKCU: SHREGDEL_FLAGS = SHREGDEL_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHREGDEL_HKLM: SHREGDEL_FLAGS = SHREGDEL_FLAGS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHREGDEL_BOTH: SHREGDEL_FLAGS = SHREGDEL_FLAGS(17i32);
impl ::core::marker::Copy for SHREGDEL_FLAGS {}
impl ::core::clone::Clone for SHREGDEL_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHREGDEL_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHREGDEL_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SHREGDEL_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHREGDEL_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHREGENUM_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHREGENUM_DEFAULT: SHREGENUM_FLAGS = SHREGENUM_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHREGENUM_HKCU: SHREGENUM_FLAGS = SHREGENUM_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHREGENUM_HKLM: SHREGENUM_FLAGS = SHREGENUM_FLAGS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHREGENUM_BOTH: SHREGENUM_FLAGS = SHREGENUM_FLAGS(17i32);
impl ::core::marker::Copy for SHREGENUM_FLAGS {}
impl ::core::clone::Clone for SHREGENUM_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHREGENUM_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHREGENUM_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SHREGENUM_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHREGENUM_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SHSTOCKICONID(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DOCNOASSOC: SHSTOCKICONID = SHSTOCKICONID(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DOCASSOC: SHSTOCKICONID = SHSTOCKICONID(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_APPLICATION: SHSTOCKICONID = SHSTOCKICONID(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_FOLDER: SHSTOCKICONID = SHSTOCKICONID(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_FOLDEROPEN: SHSTOCKICONID = SHSTOCKICONID(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DRIVE525: SHSTOCKICONID = SHSTOCKICONID(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DRIVE35: SHSTOCKICONID = SHSTOCKICONID(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DRIVEREMOVE: SHSTOCKICONID = SHSTOCKICONID(7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DRIVEFIXED: SHSTOCKICONID = SHSTOCKICONID(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DRIVENET: SHSTOCKICONID = SHSTOCKICONID(9i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DRIVENETDISABLED: SHSTOCKICONID = SHSTOCKICONID(10i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DRIVECD: SHSTOCKICONID = SHSTOCKICONID(11i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DRIVERAM: SHSTOCKICONID = SHSTOCKICONID(12i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_WORLD: SHSTOCKICONID = SHSTOCKICONID(13i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_SERVER: SHSTOCKICONID = SHSTOCKICONID(15i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_PRINTER: SHSTOCKICONID = SHSTOCKICONID(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MYNETWORK: SHSTOCKICONID = SHSTOCKICONID(17i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_FIND: SHSTOCKICONID = SHSTOCKICONID(22i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_HELP: SHSTOCKICONID = SHSTOCKICONID(23i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_SHARE: SHSTOCKICONID = SHSTOCKICONID(28i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_LINK: SHSTOCKICONID = SHSTOCKICONID(29i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_SLOWFILE: SHSTOCKICONID = SHSTOCKICONID(30i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_RECYCLER: SHSTOCKICONID = SHSTOCKICONID(31i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_RECYCLERFULL: SHSTOCKICONID = SHSTOCKICONID(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIACDAUDIO: SHSTOCKICONID = SHSTOCKICONID(40i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_LOCK: SHSTOCKICONID = SHSTOCKICONID(47i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_AUTOLIST: SHSTOCKICONID = SHSTOCKICONID(49i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_PRINTERNET: SHSTOCKICONID = SHSTOCKICONID(50i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_SERVERSHARE: SHSTOCKICONID = SHSTOCKICONID(51i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_PRINTERFAX: SHSTOCKICONID = SHSTOCKICONID(52i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_PRINTERFAXNET: SHSTOCKICONID = SHSTOCKICONID(53i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_PRINTERFILE: SHSTOCKICONID = SHSTOCKICONID(54i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_STACK: SHSTOCKICONID = SHSTOCKICONID(55i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIASVCD: SHSTOCKICONID = SHSTOCKICONID(56i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_STUFFEDFOLDER: SHSTOCKICONID = SHSTOCKICONID(57i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DRIVEUNKNOWN: SHSTOCKICONID = SHSTOCKICONID(58i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DRIVEDVD: SHSTOCKICONID = SHSTOCKICONID(59i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIADVD: SHSTOCKICONID = SHSTOCKICONID(60i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIADVDRAM: SHSTOCKICONID = SHSTOCKICONID(61i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIADVDRW: SHSTOCKICONID = SHSTOCKICONID(62i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIADVDR: SHSTOCKICONID = SHSTOCKICONID(63i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIADVDROM: SHSTOCKICONID = SHSTOCKICONID(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIACDAUDIOPLUS: SHSTOCKICONID = SHSTOCKICONID(65i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIACDRW: SHSTOCKICONID = SHSTOCKICONID(66i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIACDR: SHSTOCKICONID = SHSTOCKICONID(67i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIACDBURN: SHSTOCKICONID = SHSTOCKICONID(68i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIABLANKCD: SHSTOCKICONID = SHSTOCKICONID(69i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIACDROM: SHSTOCKICONID = SHSTOCKICONID(70i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_AUDIOFILES: SHSTOCKICONID = SHSTOCKICONID(71i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_IMAGEFILES: SHSTOCKICONID = SHSTOCKICONID(72i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_VIDEOFILES: SHSTOCKICONID = SHSTOCKICONID(73i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MIXEDFILES: SHSTOCKICONID = SHSTOCKICONID(74i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_FOLDERBACK: SHSTOCKICONID = SHSTOCKICONID(75i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_FOLDERFRONT: SHSTOCKICONID = SHSTOCKICONID(76i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_SHIELD: SHSTOCKICONID = SHSTOCKICONID(77i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_WARNING: SHSTOCKICONID = SHSTOCKICONID(78i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_INFO: SHSTOCKICONID = SHSTOCKICONID(79i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_ERROR: SHSTOCKICONID = SHSTOCKICONID(80i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_KEY: SHSTOCKICONID = SHSTOCKICONID(81i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_SOFTWARE: SHSTOCKICONID = SHSTOCKICONID(82i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_RENAME: SHSTOCKICONID = SHSTOCKICONID(83i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DELETE: SHSTOCKICONID = SHSTOCKICONID(84i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIAAUDIODVD: SHSTOCKICONID = SHSTOCKICONID(85i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIAMOVIEDVD: SHSTOCKICONID = SHSTOCKICONID(86i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIAENHANCEDCD: SHSTOCKICONID = SHSTOCKICONID(87i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIAENHANCEDDVD: SHSTOCKICONID = SHSTOCKICONID(88i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIAHDDVD: SHSTOCKICONID = SHSTOCKICONID(89i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIABLURAY: SHSTOCKICONID = SHSTOCKICONID(90i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIAVCD: SHSTOCKICONID = SHSTOCKICONID(91i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIADVDPLUSR: SHSTOCKICONID = SHSTOCKICONID(92i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIADVDPLUSRW: SHSTOCKICONID = SHSTOCKICONID(93i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DESKTOPPC: SHSTOCKICONID = SHSTOCKICONID(94i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MOBILEPC: SHSTOCKICONID = SHSTOCKICONID(95i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_USERS: SHSTOCKICONID = SHSTOCKICONID(96i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIASMARTMEDIA: SHSTOCKICONID = SHSTOCKICONID(97i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIACOMPACTFLASH: SHSTOCKICONID = SHSTOCKICONID(98i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DEVICECELLPHONE: SHSTOCKICONID = SHSTOCKICONID(99i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DEVICECAMERA: SHSTOCKICONID = SHSTOCKICONID(100i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DEVICEVIDEOCAMERA: SHSTOCKICONID = SHSTOCKICONID(101i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DEVICEAUDIOPLAYER: SHSTOCKICONID = SHSTOCKICONID(102i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_NETWORKCONNECT: SHSTOCKICONID = SHSTOCKICONID(103i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_INTERNET: SHSTOCKICONID = SHSTOCKICONID(104i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_ZIPFILE: SHSTOCKICONID = SHSTOCKICONID(105i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_SETTINGS: SHSTOCKICONID = SHSTOCKICONID(106i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DRIVEHDDVD: SHSTOCKICONID = SHSTOCKICONID(132i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_DRIVEBD: SHSTOCKICONID = SHSTOCKICONID(133i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIAHDDVDROM: SHSTOCKICONID = SHSTOCKICONID(134i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIAHDDVDR: SHSTOCKICONID = SHSTOCKICONID(135i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIAHDDVDRAM: SHSTOCKICONID = SHSTOCKICONID(136i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIABDROM: SHSTOCKICONID = SHSTOCKICONID(137i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIABDR: SHSTOCKICONID = SHSTOCKICONID(138i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MEDIABDRE: SHSTOCKICONID = SHSTOCKICONID(139i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_CLUSTEREDDRIVE: SHSTOCKICONID = SHSTOCKICONID(140i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIID_MAX_ICONS: SHSTOCKICONID = SHSTOCKICONID(181i32);
impl ::core::marker::Copy for SHSTOCKICONID {}
impl ::core::clone::Clone for SHSTOCKICONID {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SHSTOCKICONID {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SHSTOCKICONID {
type Abi = Self;
}
impl ::core::fmt::Debug for SHSTOCKICONID {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SHSTOCKICONID").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SIATTRIBFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIATTRIBFLAGS_AND: SIATTRIBFLAGS = SIATTRIBFLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIATTRIBFLAGS_OR: SIATTRIBFLAGS = SIATTRIBFLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIATTRIBFLAGS_APPCOMPAT: SIATTRIBFLAGS = SIATTRIBFLAGS(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIATTRIBFLAGS_MASK: SIATTRIBFLAGS = SIATTRIBFLAGS(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIATTRIBFLAGS_ALLITEMS: SIATTRIBFLAGS = SIATTRIBFLAGS(16384i32);
impl ::core::marker::Copy for SIATTRIBFLAGS {}
impl ::core::clone::Clone for SIATTRIBFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SIATTRIBFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SIATTRIBFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SIATTRIBFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SIATTRIBFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SIGDN(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIGDN_NORMALDISPLAY: SIGDN = SIGDN(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIGDN_PARENTRELATIVEPARSING: SIGDN = SIGDN(-2147385343i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIGDN_DESKTOPABSOLUTEPARSING: SIGDN = SIGDN(-2147319808i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIGDN_PARENTRELATIVEEDITING: SIGDN = SIGDN(-2147282943i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIGDN_DESKTOPABSOLUTEEDITING: SIGDN = SIGDN(-2147172352i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIGDN_FILESYSPATH: SIGDN = SIGDN(-2147123200i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIGDN_URL: SIGDN = SIGDN(-2147057664i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIGDN_PARENTRELATIVEFORADDRESSBAR: SIGDN = SIGDN(-2146975743i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIGDN_PARENTRELATIVE: SIGDN = SIGDN(-2146959359i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIGDN_PARENTRELATIVEFORUI: SIGDN = SIGDN(-2146877439i32);
impl ::core::marker::Copy for SIGDN {}
impl ::core::clone::Clone for SIGDN {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SIGDN {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SIGDN {
type Abi = Self;
}
impl ::core::fmt::Debug for SIGDN {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SIGDN").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SIIGBF(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIIGBF_RESIZETOFIT: SIIGBF = SIIGBF(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIIGBF_BIGGERSIZEOK: SIIGBF = SIIGBF(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIIGBF_MEMORYONLY: SIIGBF = SIIGBF(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIIGBF_ICONONLY: SIIGBF = SIIGBF(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIIGBF_THUMBNAILONLY: SIIGBF = SIIGBF(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIIGBF_INCACHEONLY: SIIGBF = SIIGBF(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIIGBF_CROPTOSQUARE: SIIGBF = SIIGBF(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIIGBF_WIDETHUMBNAILS: SIIGBF = SIIGBF(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIIGBF_ICONBACKGROUND: SIIGBF = SIIGBF(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SIIGBF_SCALEUP: SIIGBF = SIIGBF(256i32);
impl ::core::marker::Copy for SIIGBF {}
impl ::core::clone::Clone for SIIGBF {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SIIGBF {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SIIGBF {
type Abi = Self;
}
impl ::core::fmt::Debug for SIIGBF {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SIIGBF").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for SIIGBF {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for SIIGBF {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for SIIGBF {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for SIIGBF {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for SIIGBF {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SLGP_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLGP_SHORTPATH: SLGP_FLAGS = SLGP_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLGP_UNCPRIORITY: SLGP_FLAGS = SLGP_FLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLGP_RAWPATH: SLGP_FLAGS = SLGP_FLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLGP_RELATIVEPRIORITY: SLGP_FLAGS = SLGP_FLAGS(8i32);
impl ::core::marker::Copy for SLGP_FLAGS {}
impl ::core::clone::Clone for SLGP_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SLGP_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SLGP_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SLGP_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SLGP_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SLR_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLR_NONE: SLR_FLAGS = SLR_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLR_NO_UI: SLR_FLAGS = SLR_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLR_ANY_MATCH: SLR_FLAGS = SLR_FLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLR_UPDATE: SLR_FLAGS = SLR_FLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLR_NOUPDATE: SLR_FLAGS = SLR_FLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLR_NOSEARCH: SLR_FLAGS = SLR_FLAGS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLR_NOTRACK: SLR_FLAGS = SLR_FLAGS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLR_NOLINKINFO: SLR_FLAGS = SLR_FLAGS(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLR_INVOKE_MSI: SLR_FLAGS = SLR_FLAGS(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLR_NO_UI_WITH_MSG_PUMP: SLR_FLAGS = SLR_FLAGS(257i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLR_OFFER_DELETE_WITHOUT_FILE: SLR_FLAGS = SLR_FLAGS(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLR_KNOWNFOLDER: SLR_FLAGS = SLR_FLAGS(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLR_MACHINE_IN_LOCAL_TARGET: SLR_FLAGS = SLR_FLAGS(2048i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLR_UPDATE_MACHINE_AND_SID: SLR_FLAGS = SLR_FLAGS(4096i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SLR_NO_OBJECT_ID: SLR_FLAGS = SLR_FLAGS(8192i32);
impl ::core::marker::Copy for SLR_FLAGS {}
impl ::core::clone::Clone for SLR_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SLR_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SLR_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SLR_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SLR_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SMINFOFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMIF_ICON: SMINFOFLAGS = SMINFOFLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMIF_ACCELERATOR: SMINFOFLAGS = SMINFOFLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMIF_DROPTARGET: SMINFOFLAGS = SMINFOFLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMIF_SUBMENU: SMINFOFLAGS = SMINFOFLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMIF_CHECKED: SMINFOFLAGS = SMINFOFLAGS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMIF_DROPCASCADE: SMINFOFLAGS = SMINFOFLAGS(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMIF_HIDDEN: SMINFOFLAGS = SMINFOFLAGS(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMIF_DISABLED: SMINFOFLAGS = SMINFOFLAGS(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMIF_TRACKPOPUP: SMINFOFLAGS = SMINFOFLAGS(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMIF_DEMOTED: SMINFOFLAGS = SMINFOFLAGS(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMIF_ALTSTATE: SMINFOFLAGS = SMINFOFLAGS(2048i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMIF_DRAGNDROP: SMINFOFLAGS = SMINFOFLAGS(4096i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMIF_NEW: SMINFOFLAGS = SMINFOFLAGS(8192i32);
impl ::core::marker::Copy for SMINFOFLAGS {}
impl ::core::clone::Clone for SMINFOFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SMINFOFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SMINFOFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SMINFOFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SMINFOFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SMINFOMASK(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMIM_TYPE: SMINFOMASK = SMINFOMASK(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMIM_FLAGS: SMINFOMASK = SMINFOMASK(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMIM_ICON: SMINFOMASK = SMINFOMASK(4i32);
impl ::core::marker::Copy for SMINFOMASK {}
impl ::core::clone::Clone for SMINFOMASK {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SMINFOMASK {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SMINFOMASK {
type Abi = Self;
}
impl ::core::fmt::Debug for SMINFOMASK {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SMINFOMASK").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SMINFOTYPE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMIT_SEPARATOR: SMINFOTYPE = SMINFOTYPE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SMIT_STRING: SMINFOTYPE = SMINFOTYPE(2i32);
impl ::core::marker::Copy for SMINFOTYPE {}
impl ::core::clone::Clone for SMINFOTYPE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SMINFOTYPE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SMINFOTYPE {
type Abi = Self;
}
impl ::core::fmt::Debug for SMINFOTYPE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SMINFOTYPE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SORTDIRECTION(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SORT_DESCENDING: SORTDIRECTION = SORTDIRECTION(-1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SORT_ASCENDING: SORTDIRECTION = SORTDIRECTION(1i32);
impl ::core::marker::Copy for SORTDIRECTION {}
impl ::core::clone::Clone for SORTDIRECTION {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SORTDIRECTION {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SORTDIRECTION {
type Abi = Self;
}
impl ::core::fmt::Debug for SORTDIRECTION {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SORTDIRECTION").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SORT_ORDER_TYPE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SOT_DEFAULT: SORT_ORDER_TYPE = SORT_ORDER_TYPE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SOT_IGNORE_FOLDERNESS: SORT_ORDER_TYPE = SORT_ORDER_TYPE(1i32);
impl ::core::marker::Copy for SORT_ORDER_TYPE {}
impl ::core::clone::Clone for SORT_ORDER_TYPE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SORT_ORDER_TYPE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SORT_ORDER_TYPE {
type Abi = Self;
}
impl ::core::fmt::Debug for SORT_ORDER_TYPE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SORT_ORDER_TYPE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SPACTION(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPACTION_NONE: SPACTION = SPACTION(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPACTION_MOVING: SPACTION = SPACTION(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPACTION_COPYING: SPACTION = SPACTION(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPACTION_RECYCLING: SPACTION = SPACTION(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPACTION_APPLYINGATTRIBS: SPACTION = SPACTION(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPACTION_DOWNLOADING: SPACTION = SPACTION(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPACTION_SEARCHING_INTERNET: SPACTION = SPACTION(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPACTION_CALCULATING: SPACTION = SPACTION(7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPACTION_UPLOADING: SPACTION = SPACTION(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPACTION_SEARCHING_FILES: SPACTION = SPACTION(9i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPACTION_DELETING: SPACTION = SPACTION(10i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPACTION_RENAMING: SPACTION = SPACTION(11i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPACTION_FORMATTING: SPACTION = SPACTION(12i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPACTION_COPY_MOVING: SPACTION = SPACTION(13i32);
impl ::core::marker::Copy for SPACTION {}
impl ::core::clone::Clone for SPACTION {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SPACTION {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SPACTION {
type Abi = Self;
}
impl ::core::fmt::Debug for SPACTION {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SPACTION").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SPTEXT(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPTEXT_ACTIONDESCRIPTION: SPTEXT = SPTEXT(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPTEXT_ACTIONDETAIL: SPTEXT = SPTEXT(2i32);
impl ::core::marker::Copy for SPTEXT {}
impl ::core::clone::Clone for SPTEXT {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SPTEXT {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SPTEXT {
type Abi = Self;
}
impl ::core::fmt::Debug for SPTEXT {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SPTEXT").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SSF_MASK(pub u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_SHOWALLOBJECTS: SSF_MASK = SSF_MASK(1u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_SHOWEXTENSIONS: SSF_MASK = SSF_MASK(2u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_HIDDENFILEEXTS: SSF_MASK = SSF_MASK(4u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_SERVERADMINUI: SSF_MASK = SSF_MASK(4u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_SHOWCOMPCOLOR: SSF_MASK = SSF_MASK(8u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_SORTCOLUMNS: SSF_MASK = SSF_MASK(16u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_SHOWSYSFILES: SSF_MASK = SSF_MASK(32u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_DOUBLECLICKINWEBVIEW: SSF_MASK = SSF_MASK(128u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_SHOWATTRIBCOL: SSF_MASK = SSF_MASK(256u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_DESKTOPHTML: SSF_MASK = SSF_MASK(512u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_WIN95CLASSIC: SSF_MASK = SSF_MASK(1024u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_DONTPRETTYPATH: SSF_MASK = SSF_MASK(2048u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_SHOWINFOTIP: SSF_MASK = SSF_MASK(8192u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_MAPNETDRVBUTTON: SSF_MASK = SSF_MASK(4096u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_NOCONFIRMRECYCLE: SSF_MASK = SSF_MASK(32768u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_HIDEICONS: SSF_MASK = SSF_MASK(16384u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_FILTER: SSF_MASK = SSF_MASK(65536u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_WEBVIEW: SSF_MASK = SSF_MASK(131072u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_SHOWSUPERHIDDEN: SSF_MASK = SSF_MASK(262144u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_SEPPROCESS: SSF_MASK = SSF_MASK(524288u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_NONETCRAWLING: SSF_MASK = SSF_MASK(1048576u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_STARTPANELON: SSF_MASK = SSF_MASK(2097152u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_SHOWSTARTPAGE: SSF_MASK = SSF_MASK(4194304u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_AUTOCHECKSELECT: SSF_MASK = SSF_MASK(8388608u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_ICONSONLY: SSF_MASK = SSF_MASK(16777216u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_SHOWTYPEOVERLAY: SSF_MASK = SSF_MASK(33554432u32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SSF_SHOWSTATUSBAR: SSF_MASK = SSF_MASK(67108864u32);
impl ::core::marker::Copy for SSF_MASK {}
impl ::core::clone::Clone for SSF_MASK {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SSF_MASK {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SSF_MASK {
type Abi = Self;
}
impl ::core::fmt::Debug for SSF_MASK {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SSF_MASK").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for SSF_MASK {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for SSF_MASK {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for SSF_MASK {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for SSF_MASK {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for SSF_MASK {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct STGOP(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STGOP_MOVE: STGOP = STGOP(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STGOP_COPY: STGOP = STGOP(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STGOP_SYNC: STGOP = STGOP(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STGOP_REMOVE: STGOP = STGOP(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STGOP_RENAME: STGOP = STGOP(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STGOP_APPLYPROPERTIES: STGOP = STGOP(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STGOP_NEW: STGOP = STGOP(10i32);
impl ::core::marker::Copy for STGOP {}
impl ::core::clone::Clone for STGOP {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for STGOP {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for STGOP {
type Abi = Self;
}
impl ::core::fmt::Debug for STGOP {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("STGOP").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct STORAGE_PROVIDER_FILE_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPFF_NONE: STORAGE_PROVIDER_FILE_FLAGS = STORAGE_PROVIDER_FILE_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPFF_DOWNLOAD_BY_DEFAULT: STORAGE_PROVIDER_FILE_FLAGS = STORAGE_PROVIDER_FILE_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPFF_CREATED_ON_THIS_DEVICE: STORAGE_PROVIDER_FILE_FLAGS = STORAGE_PROVIDER_FILE_FLAGS(2i32);
impl ::core::marker::Copy for STORAGE_PROVIDER_FILE_FLAGS {}
impl ::core::clone::Clone for STORAGE_PROVIDER_FILE_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for STORAGE_PROVIDER_FILE_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for STORAGE_PROVIDER_FILE_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for STORAGE_PROVIDER_FILE_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("STORAGE_PROVIDER_FILE_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct STPFLAG(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STPF_NONE: STPFLAG = STPFLAG(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STPF_USEAPPTHUMBNAILALWAYS: STPFLAG = STPFLAG(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STPF_USEAPPTHUMBNAILWHENACTIVE: STPFLAG = STPFLAG(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STPF_USEAPPPEEKALWAYS: STPFLAG = STPFLAG(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const STPF_USEAPPPEEKWHENACTIVE: STPFLAG = STPFLAG(8i32);
impl ::core::marker::Copy for STPFLAG {}
impl ::core::clone::Clone for STPFLAG {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for STPFLAG {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for STPFLAG {
type Abi = Self;
}
impl ::core::fmt::Debug for STPFLAG {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("STPFLAG").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SVUIA_STATUS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVUIA_DEACTIVATE: SVUIA_STATUS = SVUIA_STATUS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVUIA_ACTIVATE_NOFOCUS: SVUIA_STATUS = SVUIA_STATUS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVUIA_ACTIVATE_FOCUS: SVUIA_STATUS = SVUIA_STATUS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVUIA_INPLACEACTIVATE: SVUIA_STATUS = SVUIA_STATUS(3i32);
impl ::core::marker::Copy for SVUIA_STATUS {}
impl ::core::clone::Clone for SVUIA_STATUS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SVUIA_STATUS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SVUIA_STATUS {
type Abi = Self;
}
impl ::core::fmt::Debug for SVUIA_STATUS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SVUIA_STATUS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGRERRORFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRERRORFLAG_ENABLEJUMPTEXT: SYNCMGRERRORFLAGS = SYNCMGRERRORFLAGS(1i32);
impl ::core::marker::Copy for SYNCMGRERRORFLAGS {}
impl ::core::clone::Clone for SYNCMGRERRORFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGRERRORFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGRERRORFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGRERRORFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGRERRORFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGRFLAG(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRFLAG_CONNECT: SYNCMGRFLAG = SYNCMGRFLAG(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRFLAG_PENDINGDISCONNECT: SYNCMGRFLAG = SYNCMGRFLAG(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRFLAG_MANUAL: SYNCMGRFLAG = SYNCMGRFLAG(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRFLAG_IDLE: SYNCMGRFLAG = SYNCMGRFLAG(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRFLAG_INVOKE: SYNCMGRFLAG = SYNCMGRFLAG(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRFLAG_SCHEDULED: SYNCMGRFLAG = SYNCMGRFLAG(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRFLAG_EVENTMASK: SYNCMGRFLAG = SYNCMGRFLAG(255i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRFLAG_SETTINGS: SYNCMGRFLAG = SYNCMGRFLAG(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRFLAG_MAYBOTHERUSER: SYNCMGRFLAG = SYNCMGRFLAG(512i32);
impl ::core::marker::Copy for SYNCMGRFLAG {}
impl ::core::clone::Clone for SYNCMGRFLAG {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGRFLAG {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGRFLAG {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGRFLAG {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGRFLAG").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGRHANDLERFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRHANDLER_HASPROPERTIES: SYNCMGRHANDLERFLAGS = SYNCMGRHANDLERFLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRHANDLER_MAYESTABLISHCONNECTION: SYNCMGRHANDLERFLAGS = SYNCMGRHANDLERFLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRHANDLER_ALWAYSLISTHANDLER: SYNCMGRHANDLERFLAGS = SYNCMGRHANDLERFLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRHANDLER_HIDDEN: SYNCMGRHANDLERFLAGS = SYNCMGRHANDLERFLAGS(8i32);
impl ::core::marker::Copy for SYNCMGRHANDLERFLAGS {}
impl ::core::clone::Clone for SYNCMGRHANDLERFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGRHANDLERFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGRHANDLERFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGRHANDLERFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGRHANDLERFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGRINVOKEFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRINVOKE_STARTSYNC: SYNCMGRINVOKEFLAGS = SYNCMGRINVOKEFLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRINVOKE_MINIMIZED: SYNCMGRINVOKEFLAGS = SYNCMGRINVOKEFLAGS(4i32);
impl ::core::marker::Copy for SYNCMGRINVOKEFLAGS {}
impl ::core::clone::Clone for SYNCMGRINVOKEFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGRINVOKEFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGRINVOKEFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGRINVOKEFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGRINVOKEFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGRITEMFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRITEM_HASPROPERTIES: SYNCMGRITEMFLAGS = SYNCMGRITEMFLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRITEM_TEMPORARY: SYNCMGRITEMFLAGS = SYNCMGRITEMFLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRITEM_ROAMINGUSER: SYNCMGRITEMFLAGS = SYNCMGRITEMFLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRITEM_LASTUPDATETIME: SYNCMGRITEMFLAGS = SYNCMGRITEMFLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRITEM_MAYDELETEITEM: SYNCMGRITEMFLAGS = SYNCMGRITEMFLAGS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRITEM_HIDDEN: SYNCMGRITEMFLAGS = SYNCMGRITEMFLAGS(32i32);
impl ::core::marker::Copy for SYNCMGRITEMFLAGS {}
impl ::core::clone::Clone for SYNCMGRITEMFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGRITEMFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGRITEMFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGRITEMFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGRITEMFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGRITEMSTATE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRITEMSTATE_UNCHECKED: SYNCMGRITEMSTATE = SYNCMGRITEMSTATE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRITEMSTATE_CHECKED: SYNCMGRITEMSTATE = SYNCMGRITEMSTATE(1i32);
impl ::core::marker::Copy for SYNCMGRITEMSTATE {}
impl ::core::clone::Clone for SYNCMGRITEMSTATE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGRITEMSTATE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGRITEMSTATE {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGRITEMSTATE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGRITEMSTATE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGRLOGLEVEL(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRLOGLEVEL_INFORMATION: SYNCMGRLOGLEVEL = SYNCMGRLOGLEVEL(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRLOGLEVEL_WARNING: SYNCMGRLOGLEVEL = SYNCMGRLOGLEVEL(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRLOGLEVEL_ERROR: SYNCMGRLOGLEVEL = SYNCMGRLOGLEVEL(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRLOGLEVEL_LOGLEVELMAX: SYNCMGRLOGLEVEL = SYNCMGRLOGLEVEL(3i32);
impl ::core::marker::Copy for SYNCMGRLOGLEVEL {}
impl ::core::clone::Clone for SYNCMGRLOGLEVEL {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGRLOGLEVEL {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGRLOGLEVEL {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGRLOGLEVEL {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGRLOGLEVEL").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGRREGISTERFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRREGISTERFLAG_CONNECT: SYNCMGRREGISTERFLAGS = SYNCMGRREGISTERFLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRREGISTERFLAG_PENDINGDISCONNECT: SYNCMGRREGISTERFLAGS = SYNCMGRREGISTERFLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRREGISTERFLAG_IDLE: SYNCMGRREGISTERFLAGS = SYNCMGRREGISTERFLAGS(4i32);
impl ::core::marker::Copy for SYNCMGRREGISTERFLAGS {}
impl ::core::clone::Clone for SYNCMGRREGISTERFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGRREGISTERFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGRREGISTERFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGRREGISTERFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGRREGISTERFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGRSTATUS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRSTATUS_STOPPED: SYNCMGRSTATUS = SYNCMGRSTATUS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRSTATUS_SKIPPED: SYNCMGRSTATUS = SYNCMGRSTATUS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRSTATUS_PENDING: SYNCMGRSTATUS = SYNCMGRSTATUS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRSTATUS_UPDATING: SYNCMGRSTATUS = SYNCMGRSTATUS(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRSTATUS_SUCCEEDED: SYNCMGRSTATUS = SYNCMGRSTATUS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRSTATUS_FAILED: SYNCMGRSTATUS = SYNCMGRSTATUS(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRSTATUS_PAUSED: SYNCMGRSTATUS = SYNCMGRSTATUS(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRSTATUS_RESUMING: SYNCMGRSTATUS = SYNCMGRSTATUS(7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRSTATUS_UPDATING_INDETERMINATE: SYNCMGRSTATUS = SYNCMGRSTATUS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGRSTATUS_DELETED: SYNCMGRSTATUS = SYNCMGRSTATUS(256i32);
impl ::core::marker::Copy for SYNCMGRSTATUS {}
impl ::core::clone::Clone for SYNCMGRSTATUS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGRSTATUS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGRSTATUS {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGRSTATUS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGRSTATUS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGR_CANCEL_REQUEST(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_CR_NONE: SYNCMGR_CANCEL_REQUEST = SYNCMGR_CANCEL_REQUEST(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_CR_CANCEL_ITEM: SYNCMGR_CANCEL_REQUEST = SYNCMGR_CANCEL_REQUEST(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_CR_CANCEL_ALL: SYNCMGR_CANCEL_REQUEST = SYNCMGR_CANCEL_REQUEST(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_CR_MAX: SYNCMGR_CANCEL_REQUEST = SYNCMGR_CANCEL_REQUEST(2i32);
impl ::core::marker::Copy for SYNCMGR_CANCEL_REQUEST {}
impl ::core::clone::Clone for SYNCMGR_CANCEL_REQUEST {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGR_CANCEL_REQUEST {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGR_CANCEL_REQUEST {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGR_CANCEL_REQUEST {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGR_CANCEL_REQUEST").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGR_CONFLICT_ITEM_TYPE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_CIT_UPDATED: SYNCMGR_CONFLICT_ITEM_TYPE = SYNCMGR_CONFLICT_ITEM_TYPE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_CIT_DELETED: SYNCMGR_CONFLICT_ITEM_TYPE = SYNCMGR_CONFLICT_ITEM_TYPE(2i32);
impl ::core::marker::Copy for SYNCMGR_CONFLICT_ITEM_TYPE {}
impl ::core::clone::Clone for SYNCMGR_CONFLICT_ITEM_TYPE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGR_CONFLICT_ITEM_TYPE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGR_CONFLICT_ITEM_TYPE {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGR_CONFLICT_ITEM_TYPE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGR_CONFLICT_ITEM_TYPE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGR_CONTROL_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_CF_NONE: SYNCMGR_CONTROL_FLAGS = SYNCMGR_CONTROL_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_CF_NOWAIT: SYNCMGR_CONTROL_FLAGS = SYNCMGR_CONTROL_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_CF_WAIT: SYNCMGR_CONTROL_FLAGS = SYNCMGR_CONTROL_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_CF_NOUI: SYNCMGR_CONTROL_FLAGS = SYNCMGR_CONTROL_FLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_CF_VALID: SYNCMGR_CONTROL_FLAGS = SYNCMGR_CONTROL_FLAGS(3i32);
impl ::core::marker::Copy for SYNCMGR_CONTROL_FLAGS {}
impl ::core::clone::Clone for SYNCMGR_CONTROL_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGR_CONTROL_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGR_CONTROL_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGR_CONTROL_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGR_CONTROL_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGR_EVENT_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_EF_NONE: SYNCMGR_EVENT_FLAGS = SYNCMGR_EVENT_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_EF_VALID: SYNCMGR_EVENT_FLAGS = SYNCMGR_EVENT_FLAGS(0i32);
impl ::core::marker::Copy for SYNCMGR_EVENT_FLAGS {}
impl ::core::clone::Clone for SYNCMGR_EVENT_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGR_EVENT_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGR_EVENT_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGR_EVENT_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGR_EVENT_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGR_EVENT_LEVEL(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_EL_INFORMATION: SYNCMGR_EVENT_LEVEL = SYNCMGR_EVENT_LEVEL(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_EL_WARNING: SYNCMGR_EVENT_LEVEL = SYNCMGR_EVENT_LEVEL(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_EL_ERROR: SYNCMGR_EVENT_LEVEL = SYNCMGR_EVENT_LEVEL(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_EL_MAX: SYNCMGR_EVENT_LEVEL = SYNCMGR_EVENT_LEVEL(3i32);
impl ::core::marker::Copy for SYNCMGR_EVENT_LEVEL {}
impl ::core::clone::Clone for SYNCMGR_EVENT_LEVEL {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGR_EVENT_LEVEL {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGR_EVENT_LEVEL {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGR_EVENT_LEVEL {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGR_EVENT_LEVEL").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGR_HANDLER_CAPABILITIES(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HCM_NONE: SYNCMGR_HANDLER_CAPABILITIES = SYNCMGR_HANDLER_CAPABILITIES(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HCM_PROVIDES_ICON: SYNCMGR_HANDLER_CAPABILITIES = SYNCMGR_HANDLER_CAPABILITIES(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HCM_EVENT_STORE: SYNCMGR_HANDLER_CAPABILITIES = SYNCMGR_HANDLER_CAPABILITIES(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HCM_CONFLICT_STORE: SYNCMGR_HANDLER_CAPABILITIES = SYNCMGR_HANDLER_CAPABILITIES(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HCM_SUPPORTS_CONCURRENT_SESSIONS: SYNCMGR_HANDLER_CAPABILITIES = SYNCMGR_HANDLER_CAPABILITIES(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HCM_CAN_BROWSE_CONTENT: SYNCMGR_HANDLER_CAPABILITIES = SYNCMGR_HANDLER_CAPABILITIES(65536i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HCM_CAN_SHOW_SCHEDULE: SYNCMGR_HANDLER_CAPABILITIES = SYNCMGR_HANDLER_CAPABILITIES(131072i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HCM_QUERY_BEFORE_ACTIVATE: SYNCMGR_HANDLER_CAPABILITIES = SYNCMGR_HANDLER_CAPABILITIES(1048576i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HCM_QUERY_BEFORE_DEACTIVATE: SYNCMGR_HANDLER_CAPABILITIES = SYNCMGR_HANDLER_CAPABILITIES(2097152i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HCM_QUERY_BEFORE_ENABLE: SYNCMGR_HANDLER_CAPABILITIES = SYNCMGR_HANDLER_CAPABILITIES(4194304i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HCM_QUERY_BEFORE_DISABLE: SYNCMGR_HANDLER_CAPABILITIES = SYNCMGR_HANDLER_CAPABILITIES(8388608i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HCM_VALID_MASK: SYNCMGR_HANDLER_CAPABILITIES = SYNCMGR_HANDLER_CAPABILITIES(15925271i32);
impl ::core::marker::Copy for SYNCMGR_HANDLER_CAPABILITIES {}
impl ::core::clone::Clone for SYNCMGR_HANDLER_CAPABILITIES {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGR_HANDLER_CAPABILITIES {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGR_HANDLER_CAPABILITIES {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGR_HANDLER_CAPABILITIES {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGR_HANDLER_CAPABILITIES").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGR_HANDLER_POLICIES(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HPM_NONE: SYNCMGR_HANDLER_POLICIES = SYNCMGR_HANDLER_POLICIES(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HPM_PREVENT_ACTIVATE: SYNCMGR_HANDLER_POLICIES = SYNCMGR_HANDLER_POLICIES(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HPM_PREVENT_DEACTIVATE: SYNCMGR_HANDLER_POLICIES = SYNCMGR_HANDLER_POLICIES(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HPM_PREVENT_ENABLE: SYNCMGR_HANDLER_POLICIES = SYNCMGR_HANDLER_POLICIES(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HPM_PREVENT_DISABLE: SYNCMGR_HANDLER_POLICIES = SYNCMGR_HANDLER_POLICIES(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HPM_PREVENT_START_SYNC: SYNCMGR_HANDLER_POLICIES = SYNCMGR_HANDLER_POLICIES(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HPM_PREVENT_STOP_SYNC: SYNCMGR_HANDLER_POLICIES = SYNCMGR_HANDLER_POLICIES(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HPM_DISABLE_ENABLE: SYNCMGR_HANDLER_POLICIES = SYNCMGR_HANDLER_POLICIES(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HPM_DISABLE_DISABLE: SYNCMGR_HANDLER_POLICIES = SYNCMGR_HANDLER_POLICIES(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HPM_DISABLE_START_SYNC: SYNCMGR_HANDLER_POLICIES = SYNCMGR_HANDLER_POLICIES(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HPM_DISABLE_STOP_SYNC: SYNCMGR_HANDLER_POLICIES = SYNCMGR_HANDLER_POLICIES(2048i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HPM_DISABLE_BROWSE: SYNCMGR_HANDLER_POLICIES = SYNCMGR_HANDLER_POLICIES(4096i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HPM_DISABLE_SCHEDULE: SYNCMGR_HANDLER_POLICIES = SYNCMGR_HANDLER_POLICIES(8192i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HPM_HIDDEN_BY_DEFAULT: SYNCMGR_HANDLER_POLICIES = SYNCMGR_HANDLER_POLICIES(65536i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HPM_BACKGROUND_SYNC_ONLY: SYNCMGR_HANDLER_POLICIES = SYNCMGR_HANDLER_POLICIES(48i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HPM_VALID_MASK: SYNCMGR_HANDLER_POLICIES = SYNCMGR_HANDLER_POLICIES(77631i32);
impl ::core::marker::Copy for SYNCMGR_HANDLER_POLICIES {}
impl ::core::clone::Clone for SYNCMGR_HANDLER_POLICIES {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGR_HANDLER_POLICIES {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGR_HANDLER_POLICIES {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGR_HANDLER_POLICIES {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGR_HANDLER_POLICIES").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGR_HANDLER_TYPE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HT_UNSPECIFIED: SYNCMGR_HANDLER_TYPE = SYNCMGR_HANDLER_TYPE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HT_APPLICATION: SYNCMGR_HANDLER_TYPE = SYNCMGR_HANDLER_TYPE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HT_DEVICE: SYNCMGR_HANDLER_TYPE = SYNCMGR_HANDLER_TYPE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HT_FOLDER: SYNCMGR_HANDLER_TYPE = SYNCMGR_HANDLER_TYPE(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HT_SERVICE: SYNCMGR_HANDLER_TYPE = SYNCMGR_HANDLER_TYPE(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HT_COMPUTER: SYNCMGR_HANDLER_TYPE = SYNCMGR_HANDLER_TYPE(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HT_MIN: SYNCMGR_HANDLER_TYPE = SYNCMGR_HANDLER_TYPE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_HT_MAX: SYNCMGR_HANDLER_TYPE = SYNCMGR_HANDLER_TYPE(5i32);
impl ::core::marker::Copy for SYNCMGR_HANDLER_TYPE {}
impl ::core::clone::Clone for SYNCMGR_HANDLER_TYPE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGR_HANDLER_TYPE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGR_HANDLER_TYPE {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGR_HANDLER_TYPE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGR_HANDLER_TYPE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGR_ITEM_CAPABILITIES(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_ICM_NONE: SYNCMGR_ITEM_CAPABILITIES = SYNCMGR_ITEM_CAPABILITIES(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_ICM_PROVIDES_ICON: SYNCMGR_ITEM_CAPABILITIES = SYNCMGR_ITEM_CAPABILITIES(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_ICM_EVENT_STORE: SYNCMGR_ITEM_CAPABILITIES = SYNCMGR_ITEM_CAPABILITIES(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_ICM_CONFLICT_STORE: SYNCMGR_ITEM_CAPABILITIES = SYNCMGR_ITEM_CAPABILITIES(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_ICM_CAN_DELETE: SYNCMGR_ITEM_CAPABILITIES = SYNCMGR_ITEM_CAPABILITIES(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_ICM_CAN_BROWSE_CONTENT: SYNCMGR_ITEM_CAPABILITIES = SYNCMGR_ITEM_CAPABILITIES(65536i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_ICM_QUERY_BEFORE_ENABLE: SYNCMGR_ITEM_CAPABILITIES = SYNCMGR_ITEM_CAPABILITIES(1048576i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_ICM_QUERY_BEFORE_DISABLE: SYNCMGR_ITEM_CAPABILITIES = SYNCMGR_ITEM_CAPABILITIES(2097152i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_ICM_QUERY_BEFORE_DELETE: SYNCMGR_ITEM_CAPABILITIES = SYNCMGR_ITEM_CAPABILITIES(4194304i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_ICM_VALID_MASK: SYNCMGR_ITEM_CAPABILITIES = SYNCMGR_ITEM_CAPABILITIES(7405591i32);
impl ::core::marker::Copy for SYNCMGR_ITEM_CAPABILITIES {}
impl ::core::clone::Clone for SYNCMGR_ITEM_CAPABILITIES {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGR_ITEM_CAPABILITIES {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGR_ITEM_CAPABILITIES {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGR_ITEM_CAPABILITIES {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGR_ITEM_CAPABILITIES").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGR_ITEM_POLICIES(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_IPM_NONE: SYNCMGR_ITEM_POLICIES = SYNCMGR_ITEM_POLICIES(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_IPM_PREVENT_ENABLE: SYNCMGR_ITEM_POLICIES = SYNCMGR_ITEM_POLICIES(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_IPM_PREVENT_DISABLE: SYNCMGR_ITEM_POLICIES = SYNCMGR_ITEM_POLICIES(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_IPM_PREVENT_START_SYNC: SYNCMGR_ITEM_POLICIES = SYNCMGR_ITEM_POLICIES(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_IPM_PREVENT_STOP_SYNC: SYNCMGR_ITEM_POLICIES = SYNCMGR_ITEM_POLICIES(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_IPM_DISABLE_ENABLE: SYNCMGR_ITEM_POLICIES = SYNCMGR_ITEM_POLICIES(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_IPM_DISABLE_DISABLE: SYNCMGR_ITEM_POLICIES = SYNCMGR_ITEM_POLICIES(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_IPM_DISABLE_START_SYNC: SYNCMGR_ITEM_POLICIES = SYNCMGR_ITEM_POLICIES(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_IPM_DISABLE_STOP_SYNC: SYNCMGR_ITEM_POLICIES = SYNCMGR_ITEM_POLICIES(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_IPM_DISABLE_BROWSE: SYNCMGR_ITEM_POLICIES = SYNCMGR_ITEM_POLICIES(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_IPM_DISABLE_DELETE: SYNCMGR_ITEM_POLICIES = SYNCMGR_ITEM_POLICIES(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_IPM_HIDDEN_BY_DEFAULT: SYNCMGR_ITEM_POLICIES = SYNCMGR_ITEM_POLICIES(65536i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_IPM_VALID_MASK: SYNCMGR_ITEM_POLICIES = SYNCMGR_ITEM_POLICIES(66303i32);
impl ::core::marker::Copy for SYNCMGR_ITEM_POLICIES {}
impl ::core::clone::Clone for SYNCMGR_ITEM_POLICIES {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGR_ITEM_POLICIES {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGR_ITEM_POLICIES {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGR_ITEM_POLICIES {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGR_ITEM_POLICIES").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGR_PRESENTER_CHOICE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_PC_NO_CHOICE: SYNCMGR_PRESENTER_CHOICE = SYNCMGR_PRESENTER_CHOICE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_PC_KEEP_ONE: SYNCMGR_PRESENTER_CHOICE = SYNCMGR_PRESENTER_CHOICE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_PC_KEEP_MULTIPLE: SYNCMGR_PRESENTER_CHOICE = SYNCMGR_PRESENTER_CHOICE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_PC_KEEP_RECENT: SYNCMGR_PRESENTER_CHOICE = SYNCMGR_PRESENTER_CHOICE(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_PC_REMOVE_FROM_SYNC_SET: SYNCMGR_PRESENTER_CHOICE = SYNCMGR_PRESENTER_CHOICE(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_PC_SKIP: SYNCMGR_PRESENTER_CHOICE = SYNCMGR_PRESENTER_CHOICE(5i32);
impl ::core::marker::Copy for SYNCMGR_PRESENTER_CHOICE {}
impl ::core::clone::Clone for SYNCMGR_PRESENTER_CHOICE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGR_PRESENTER_CHOICE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGR_PRESENTER_CHOICE {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGR_PRESENTER_CHOICE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGR_PRESENTER_CHOICE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGR_PRESENTER_NEXT_STEP(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_PNS_CONTINUE: SYNCMGR_PRESENTER_NEXT_STEP = SYNCMGR_PRESENTER_NEXT_STEP(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_PNS_DEFAULT: SYNCMGR_PRESENTER_NEXT_STEP = SYNCMGR_PRESENTER_NEXT_STEP(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_PNS_CANCEL: SYNCMGR_PRESENTER_NEXT_STEP = SYNCMGR_PRESENTER_NEXT_STEP(2i32);
impl ::core::marker::Copy for SYNCMGR_PRESENTER_NEXT_STEP {}
impl ::core::clone::Clone for SYNCMGR_PRESENTER_NEXT_STEP {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGR_PRESENTER_NEXT_STEP {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGR_PRESENTER_NEXT_STEP {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGR_PRESENTER_NEXT_STEP {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGR_PRESENTER_NEXT_STEP").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGR_PROGRESS_STATUS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_PS_UPDATING: SYNCMGR_PROGRESS_STATUS = SYNCMGR_PROGRESS_STATUS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_PS_UPDATING_INDETERMINATE: SYNCMGR_PROGRESS_STATUS = SYNCMGR_PROGRESS_STATUS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_PS_SUCCEEDED: SYNCMGR_PROGRESS_STATUS = SYNCMGR_PROGRESS_STATUS(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_PS_FAILED: SYNCMGR_PROGRESS_STATUS = SYNCMGR_PROGRESS_STATUS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_PS_CANCELED: SYNCMGR_PROGRESS_STATUS = SYNCMGR_PROGRESS_STATUS(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_PS_DISCONNECTED: SYNCMGR_PROGRESS_STATUS = SYNCMGR_PROGRESS_STATUS(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_PS_MAX: SYNCMGR_PROGRESS_STATUS = SYNCMGR_PROGRESS_STATUS(6i32);
impl ::core::marker::Copy for SYNCMGR_PROGRESS_STATUS {}
impl ::core::clone::Clone for SYNCMGR_PROGRESS_STATUS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGR_PROGRESS_STATUS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGR_PROGRESS_STATUS {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGR_PROGRESS_STATUS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGR_PROGRESS_STATUS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGR_RESOLUTION_ABILITIES(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_RA_KEEPOTHER: SYNCMGR_RESOLUTION_ABILITIES = SYNCMGR_RESOLUTION_ABILITIES(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_RA_KEEPRECENT: SYNCMGR_RESOLUTION_ABILITIES = SYNCMGR_RESOLUTION_ABILITIES(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_RA_REMOVEFROMSYNCSET: SYNCMGR_RESOLUTION_ABILITIES = SYNCMGR_RESOLUTION_ABILITIES(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_RA_KEEP_SINGLE: SYNCMGR_RESOLUTION_ABILITIES = SYNCMGR_RESOLUTION_ABILITIES(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_RA_KEEP_MULTIPLE: SYNCMGR_RESOLUTION_ABILITIES = SYNCMGR_RESOLUTION_ABILITIES(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_RA_VALID: SYNCMGR_RESOLUTION_ABILITIES = SYNCMGR_RESOLUTION_ABILITIES(31i32);
impl ::core::marker::Copy for SYNCMGR_RESOLUTION_ABILITIES {}
impl ::core::clone::Clone for SYNCMGR_RESOLUTION_ABILITIES {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGR_RESOLUTION_ABILITIES {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGR_RESOLUTION_ABILITIES {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGR_RESOLUTION_ABILITIES {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGR_RESOLUTION_ABILITIES").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGR_RESOLUTION_FEEDBACK(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_RF_CONTINUE: SYNCMGR_RESOLUTION_FEEDBACK = SYNCMGR_RESOLUTION_FEEDBACK(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_RF_REFRESH: SYNCMGR_RESOLUTION_FEEDBACK = SYNCMGR_RESOLUTION_FEEDBACK(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_RF_CANCEL: SYNCMGR_RESOLUTION_FEEDBACK = SYNCMGR_RESOLUTION_FEEDBACK(2i32);
impl ::core::marker::Copy for SYNCMGR_RESOLUTION_FEEDBACK {}
impl ::core::clone::Clone for SYNCMGR_RESOLUTION_FEEDBACK {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGR_RESOLUTION_FEEDBACK {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGR_RESOLUTION_FEEDBACK {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGR_RESOLUTION_FEEDBACK {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGR_RESOLUTION_FEEDBACK").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGR_SYNC_CONTROL_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_SCF_NONE: SYNCMGR_SYNC_CONTROL_FLAGS = SYNCMGR_SYNC_CONTROL_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_SCF_IGNORE_IF_ALREADY_SYNCING: SYNCMGR_SYNC_CONTROL_FLAGS = SYNCMGR_SYNC_CONTROL_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_SCF_VALID: SYNCMGR_SYNC_CONTROL_FLAGS = SYNCMGR_SYNC_CONTROL_FLAGS(1i32);
impl ::core::marker::Copy for SYNCMGR_SYNC_CONTROL_FLAGS {}
impl ::core::clone::Clone for SYNCMGR_SYNC_CONTROL_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGR_SYNC_CONTROL_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGR_SYNC_CONTROL_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGR_SYNC_CONTROL_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGR_SYNC_CONTROL_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SYNCMGR_UPDATE_REASON(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_UR_ADDED: SYNCMGR_UPDATE_REASON = SYNCMGR_UPDATE_REASON(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_UR_CHANGED: SYNCMGR_UPDATE_REASON = SYNCMGR_UPDATE_REASON(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_UR_REMOVED: SYNCMGR_UPDATE_REASON = SYNCMGR_UPDATE_REASON(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SYNCMGR_UR_MAX: SYNCMGR_UPDATE_REASON = SYNCMGR_UPDATE_REASON(2i32);
impl ::core::marker::Copy for SYNCMGR_UPDATE_REASON {}
impl ::core::clone::Clone for SYNCMGR_UPDATE_REASON {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SYNCMGR_UPDATE_REASON {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SYNCMGR_UPDATE_REASON {
type Abi = Self;
}
impl ::core::fmt::Debug for SYNCMGR_UPDATE_REASON {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SYNCMGR_UPDATE_REASON").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct SecureLockIconConstants(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const secureLockIconUnsecure: SecureLockIconConstants = SecureLockIconConstants(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const secureLockIconMixed: SecureLockIconConstants = SecureLockIconConstants(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const secureLockIconSecureUnknownBits: SecureLockIconConstants = SecureLockIconConstants(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const secureLockIconSecure40Bit: SecureLockIconConstants = SecureLockIconConstants(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const secureLockIconSecure56Bit: SecureLockIconConstants = SecureLockIconConstants(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const secureLockIconSecureFortezza: SecureLockIconConstants = SecureLockIconConstants(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const secureLockIconSecure128Bit: SecureLockIconConstants = SecureLockIconConstants(6i32);
impl ::core::marker::Copy for SecureLockIconConstants {}
impl ::core::clone::Clone for SecureLockIconConstants {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for SecureLockIconConstants {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for SecureLockIconConstants {
type Abi = Self;
}
impl ::core::fmt::Debug for SecureLockIconConstants {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("SecureLockIconConstants").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ShellFolderViewOptions(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVVO_SHOWALLOBJECTS: ShellFolderViewOptions = ShellFolderViewOptions(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVVO_SHOWEXTENSIONS: ShellFolderViewOptions = ShellFolderViewOptions(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVVO_SHOWCOMPCOLOR: ShellFolderViewOptions = ShellFolderViewOptions(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVVO_SHOWSYSFILES: ShellFolderViewOptions = ShellFolderViewOptions(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVVO_WIN95CLASSIC: ShellFolderViewOptions = ShellFolderViewOptions(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVVO_DOUBLECLICKINWEBVIEW: ShellFolderViewOptions = ShellFolderViewOptions(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SFVVO_DESKTOPHTML: ShellFolderViewOptions = ShellFolderViewOptions(512i32);
impl ::core::marker::Copy for ShellFolderViewOptions {}
impl ::core::clone::Clone for ShellFolderViewOptions {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ShellFolderViewOptions {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for ShellFolderViewOptions {
type Abi = Self;
}
impl ::core::fmt::Debug for ShellFolderViewOptions {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ShellFolderViewOptions").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ShellSpecialFolderConstants(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfDESKTOP: ShellSpecialFolderConstants = ShellSpecialFolderConstants(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfPROGRAMS: ShellSpecialFolderConstants = ShellSpecialFolderConstants(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfCONTROLS: ShellSpecialFolderConstants = ShellSpecialFolderConstants(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfPRINTERS: ShellSpecialFolderConstants = ShellSpecialFolderConstants(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfPERSONAL: ShellSpecialFolderConstants = ShellSpecialFolderConstants(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfFAVORITES: ShellSpecialFolderConstants = ShellSpecialFolderConstants(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfSTARTUP: ShellSpecialFolderConstants = ShellSpecialFolderConstants(7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfRECENT: ShellSpecialFolderConstants = ShellSpecialFolderConstants(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfSENDTO: ShellSpecialFolderConstants = ShellSpecialFolderConstants(9i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfBITBUCKET: ShellSpecialFolderConstants = ShellSpecialFolderConstants(10i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfSTARTMENU: ShellSpecialFolderConstants = ShellSpecialFolderConstants(11i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfDESKTOPDIRECTORY: ShellSpecialFolderConstants = ShellSpecialFolderConstants(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfDRIVES: ShellSpecialFolderConstants = ShellSpecialFolderConstants(17i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfNETWORK: ShellSpecialFolderConstants = ShellSpecialFolderConstants(18i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfNETHOOD: ShellSpecialFolderConstants = ShellSpecialFolderConstants(19i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfFONTS: ShellSpecialFolderConstants = ShellSpecialFolderConstants(20i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfTEMPLATES: ShellSpecialFolderConstants = ShellSpecialFolderConstants(21i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfCOMMONSTARTMENU: ShellSpecialFolderConstants = ShellSpecialFolderConstants(22i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfCOMMONPROGRAMS: ShellSpecialFolderConstants = ShellSpecialFolderConstants(23i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfCOMMONSTARTUP: ShellSpecialFolderConstants = ShellSpecialFolderConstants(24i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfCOMMONDESKTOPDIR: ShellSpecialFolderConstants = ShellSpecialFolderConstants(25i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfAPPDATA: ShellSpecialFolderConstants = ShellSpecialFolderConstants(26i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfPRINTHOOD: ShellSpecialFolderConstants = ShellSpecialFolderConstants(27i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfLOCALAPPDATA: ShellSpecialFolderConstants = ShellSpecialFolderConstants(28i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfALTSTARTUP: ShellSpecialFolderConstants = ShellSpecialFolderConstants(29i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfCOMMONALTSTARTUP: ShellSpecialFolderConstants = ShellSpecialFolderConstants(30i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfCOMMONFAVORITES: ShellSpecialFolderConstants = ShellSpecialFolderConstants(31i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfINTERNETCACHE: ShellSpecialFolderConstants = ShellSpecialFolderConstants(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfCOOKIES: ShellSpecialFolderConstants = ShellSpecialFolderConstants(33i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfHISTORY: ShellSpecialFolderConstants = ShellSpecialFolderConstants(34i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfCOMMONAPPDATA: ShellSpecialFolderConstants = ShellSpecialFolderConstants(35i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfWINDOWS: ShellSpecialFolderConstants = ShellSpecialFolderConstants(36i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfSYSTEM: ShellSpecialFolderConstants = ShellSpecialFolderConstants(37i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfPROGRAMFILES: ShellSpecialFolderConstants = ShellSpecialFolderConstants(38i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfMYPICTURES: ShellSpecialFolderConstants = ShellSpecialFolderConstants(39i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfPROFILE: ShellSpecialFolderConstants = ShellSpecialFolderConstants(40i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfSYSTEMx86: ShellSpecialFolderConstants = ShellSpecialFolderConstants(41i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ssfPROGRAMFILESx86: ShellSpecialFolderConstants = ShellSpecialFolderConstants(48i32);
impl ::core::marker::Copy for ShellSpecialFolderConstants {}
impl ::core::clone::Clone for ShellSpecialFolderConstants {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ShellSpecialFolderConstants {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for ShellSpecialFolderConstants {
type Abi = Self;
}
impl ::core::fmt::Debug for ShellSpecialFolderConstants {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ShellSpecialFolderConstants").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ShellWindowFindWindowOptions(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SWFO_NEEDDISPATCH: ShellWindowFindWindowOptions = ShellWindowFindWindowOptions(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SWFO_INCLUDEPENDING: ShellWindowFindWindowOptions = ShellWindowFindWindowOptions(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SWFO_COOKIEPASSED: ShellWindowFindWindowOptions = ShellWindowFindWindowOptions(4i32);
impl ::core::marker::Copy for ShellWindowFindWindowOptions {}
impl ::core::clone::Clone for ShellWindowFindWindowOptions {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ShellWindowFindWindowOptions {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for ShellWindowFindWindowOptions {
type Abi = Self;
}
impl ::core::fmt::Debug for ShellWindowFindWindowOptions {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ShellWindowFindWindowOptions").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ShellWindowTypeConstants(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SWC_EXPLORER: ShellWindowTypeConstants = ShellWindowTypeConstants(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SWC_BROWSER: ShellWindowTypeConstants = ShellWindowTypeConstants(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SWC_3RDPARTY: ShellWindowTypeConstants = ShellWindowTypeConstants(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SWC_CALLBACK: ShellWindowTypeConstants = ShellWindowTypeConstants(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SWC_DESKTOP: ShellWindowTypeConstants = ShellWindowTypeConstants(8i32);
impl ::core::marker::Copy for ShellWindowTypeConstants {}
impl ::core::clone::Clone for ShellWindowTypeConstants {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ShellWindowTypeConstants {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for ShellWindowTypeConstants {
type Abi = Self;
}
impl ::core::fmt::Debug for ShellWindowTypeConstants {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ShellWindowTypeConstants").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct TBPFLAG(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TBPF_NOPROGRESS: TBPFLAG = TBPFLAG(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TBPF_INDETERMINATE: TBPFLAG = TBPFLAG(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TBPF_NORMAL: TBPFLAG = TBPFLAG(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TBPF_ERROR: TBPFLAG = TBPFLAG(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TBPF_PAUSED: TBPFLAG = TBPFLAG(8i32);
impl ::core::marker::Copy for TBPFLAG {}
impl ::core::clone::Clone for TBPFLAG {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for TBPFLAG {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for TBPFLAG {
type Abi = Self;
}
impl ::core::fmt::Debug for TBPFLAG {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("TBPFLAG").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct THUMBBUTTONFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const THBF_ENABLED: THUMBBUTTONFLAGS = THUMBBUTTONFLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const THBF_DISABLED: THUMBBUTTONFLAGS = THUMBBUTTONFLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const THBF_DISMISSONCLICK: THUMBBUTTONFLAGS = THUMBBUTTONFLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const THBF_NOBACKGROUND: THUMBBUTTONFLAGS = THUMBBUTTONFLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const THBF_HIDDEN: THUMBBUTTONFLAGS = THUMBBUTTONFLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const THBF_NONINTERACTIVE: THUMBBUTTONFLAGS = THUMBBUTTONFLAGS(16i32);
impl ::core::marker::Copy for THUMBBUTTONFLAGS {}
impl ::core::clone::Clone for THUMBBUTTONFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for THUMBBUTTONFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for THUMBBUTTONFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for THUMBBUTTONFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("THUMBBUTTONFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct THUMBBUTTONMASK(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const THB_BITMAP: THUMBBUTTONMASK = THUMBBUTTONMASK(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const THB_ICON: THUMBBUTTONMASK = THUMBBUTTONMASK(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const THB_TOOLTIP: THUMBBUTTONMASK = THUMBBUTTONMASK(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const THB_FLAGS: THUMBBUTTONMASK = THUMBBUTTONMASK(8i32);
impl ::core::marker::Copy for THUMBBUTTONMASK {}
impl ::core::clone::Clone for THUMBBUTTONMASK {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for THUMBBUTTONMASK {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for THUMBBUTTONMASK {
type Abi = Self;
}
impl ::core::fmt::Debug for THUMBBUTTONMASK {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("THUMBBUTTONMASK").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct TI_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TI_BITMAP: TI_FLAGS = TI_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TI_JPEG: TI_FLAGS = TI_FLAGS(2i32);
impl ::core::marker::Copy for TI_FLAGS {}
impl ::core::clone::Clone for TI_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for TI_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for TI_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for TI_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("TI_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct TLENUMF(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TLEF_RELATIVE_INCLUDE_CURRENT: TLENUMF = TLENUMF(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TLEF_RELATIVE_BACK: TLENUMF = TLENUMF(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TLEF_RELATIVE_FORE: TLENUMF = TLENUMF(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TLEF_INCLUDE_UNINVOKEABLE: TLENUMF = TLENUMF(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TLEF_ABSOLUTE: TLENUMF = TLENUMF(49i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TLEF_EXCLUDE_SUBFRAME_ENTRIES: TLENUMF = TLENUMF(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TLEF_EXCLUDE_ABOUT_PAGES: TLENUMF = TLENUMF(256i32);
impl ::core::marker::Copy for TLENUMF {}
impl ::core::clone::Clone for TLENUMF {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for TLENUMF {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for TLENUMF {
type Abi = Self;
}
impl ::core::fmt::Debug for TLENUMF {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("TLENUMF").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct TRANSLATEURL_IN_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TRANSLATEURL_FL_GUESS_PROTOCOL: TRANSLATEURL_IN_FLAGS = TRANSLATEURL_IN_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TRANSLATEURL_FL_USE_DEFAULT_PROTOCOL: TRANSLATEURL_IN_FLAGS = TRANSLATEURL_IN_FLAGS(2i32);
impl ::core::marker::Copy for TRANSLATEURL_IN_FLAGS {}
impl ::core::clone::Clone for TRANSLATEURL_IN_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for TRANSLATEURL_IN_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for TRANSLATEURL_IN_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for TRANSLATEURL_IN_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("TRANSLATEURL_IN_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ThumbnailStreamCacheOptions(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ExtractIfNotCached: ThumbnailStreamCacheOptions = ThumbnailStreamCacheOptions(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ReturnOnlyIfCached: ThumbnailStreamCacheOptions = ThumbnailStreamCacheOptions(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ResizeThumbnail: ThumbnailStreamCacheOptions = ThumbnailStreamCacheOptions(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const AllowSmallerSize: ThumbnailStreamCacheOptions = ThumbnailStreamCacheOptions(4i32);
impl ::core::marker::Copy for ThumbnailStreamCacheOptions {}
impl ::core::clone::Clone for ThumbnailStreamCacheOptions {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ThumbnailStreamCacheOptions {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for ThumbnailStreamCacheOptions {
type Abi = Self;
}
impl ::core::fmt::Debug for ThumbnailStreamCacheOptions {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ThumbnailStreamCacheOptions").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct UNDOCK_REASON(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const UR_RESOLUTION_CHANGE: UNDOCK_REASON = UNDOCK_REASON(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const UR_MONITOR_DISCONNECT: UNDOCK_REASON = UNDOCK_REASON(1i32);
impl ::core::marker::Copy for UNDOCK_REASON {}
impl ::core::clone::Clone for UNDOCK_REASON {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for UNDOCK_REASON {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for UNDOCK_REASON {
type Abi = Self;
}
impl ::core::fmt::Debug for UNDOCK_REASON {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("UNDOCK_REASON").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct URLASSOCIATIONDIALOG_IN_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URLASSOCDLG_FL_USE_DEFAULT_NAME: URLASSOCIATIONDIALOG_IN_FLAGS = URLASSOCIATIONDIALOG_IN_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URLASSOCDLG_FL_REGISTER_ASSOC: URLASSOCIATIONDIALOG_IN_FLAGS = URLASSOCIATIONDIALOG_IN_FLAGS(2i32);
impl ::core::marker::Copy for URLASSOCIATIONDIALOG_IN_FLAGS {}
impl ::core::clone::Clone for URLASSOCIATIONDIALOG_IN_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for URLASSOCIATIONDIALOG_IN_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for URLASSOCIATIONDIALOG_IN_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for URLASSOCIATIONDIALOG_IN_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("URLASSOCIATIONDIALOG_IN_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct URLIS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URLIS_URL: URLIS = URLIS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URLIS_OPAQUE: URLIS = URLIS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URLIS_NOHISTORY: URLIS = URLIS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URLIS_FILEURL: URLIS = URLIS(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URLIS_APPLIABLE: URLIS = URLIS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URLIS_DIRECTORY: URLIS = URLIS(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URLIS_HASQUERY: URLIS = URLIS(6i32);
impl ::core::marker::Copy for URLIS {}
impl ::core::clone::Clone for URLIS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for URLIS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for URLIS {
type Abi = Self;
}
impl ::core::fmt::Debug for URLIS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("URLIS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct URL_PART(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_PART_NONE: URL_PART = URL_PART(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_PART_SCHEME: URL_PART = URL_PART(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_PART_HOSTNAME: URL_PART = URL_PART(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_PART_USERNAME: URL_PART = URL_PART(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_PART_PASSWORD: URL_PART = URL_PART(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_PART_PORT: URL_PART = URL_PART(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_PART_QUERY: URL_PART = URL_PART(6i32);
impl ::core::marker::Copy for URL_PART {}
impl ::core::clone::Clone for URL_PART {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for URL_PART {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for URL_PART {
type Abi = Self;
}
impl ::core::fmt::Debug for URL_PART {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("URL_PART").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct URL_SCHEME(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_INVALID: URL_SCHEME = URL_SCHEME(-1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_UNKNOWN: URL_SCHEME = URL_SCHEME(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_FTP: URL_SCHEME = URL_SCHEME(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_HTTP: URL_SCHEME = URL_SCHEME(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_GOPHER: URL_SCHEME = URL_SCHEME(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_MAILTO: URL_SCHEME = URL_SCHEME(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_NEWS: URL_SCHEME = URL_SCHEME(5i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_NNTP: URL_SCHEME = URL_SCHEME(6i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_TELNET: URL_SCHEME = URL_SCHEME(7i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_WAIS: URL_SCHEME = URL_SCHEME(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_FILE: URL_SCHEME = URL_SCHEME(9i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_MK: URL_SCHEME = URL_SCHEME(10i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_HTTPS: URL_SCHEME = URL_SCHEME(11i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_SHELL: URL_SCHEME = URL_SCHEME(12i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_SNEWS: URL_SCHEME = URL_SCHEME(13i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_LOCAL: URL_SCHEME = URL_SCHEME(14i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_JAVASCRIPT: URL_SCHEME = URL_SCHEME(15i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_VBSCRIPT: URL_SCHEME = URL_SCHEME(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_ABOUT: URL_SCHEME = URL_SCHEME(17i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_RES: URL_SCHEME = URL_SCHEME(18i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_MSSHELLROOTED: URL_SCHEME = URL_SCHEME(19i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_MSSHELLIDLIST: URL_SCHEME = URL_SCHEME(20i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_MSHELP: URL_SCHEME = URL_SCHEME(21i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_MSSHELLDEVICE: URL_SCHEME = URL_SCHEME(22i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_WILDCARD: URL_SCHEME = URL_SCHEME(23i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_SEARCH_MS: URL_SCHEME = URL_SCHEME(24i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_SEARCH: URL_SCHEME = URL_SCHEME(25i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_KNOWNFOLDER: URL_SCHEME = URL_SCHEME(26i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const URL_SCHEME_MAXVALUE: URL_SCHEME = URL_SCHEME(27i32);
impl ::core::marker::Copy for URL_SCHEME {}
impl ::core::clone::Clone for URL_SCHEME {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for URL_SCHEME {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for URL_SCHEME {
type Abi = Self;
}
impl ::core::fmt::Debug for URL_SCHEME {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("URL_SCHEME").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct VALIDATEUNC_OPTION(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VALIDATEUNC_CONNECT: VALIDATEUNC_OPTION = VALIDATEUNC_OPTION(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VALIDATEUNC_NOUI: VALIDATEUNC_OPTION = VALIDATEUNC_OPTION(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VALIDATEUNC_PRINT: VALIDATEUNC_OPTION = VALIDATEUNC_OPTION(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VALIDATEUNC_PERSIST: VALIDATEUNC_OPTION = VALIDATEUNC_OPTION(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VALIDATEUNC_VALID: VALIDATEUNC_OPTION = VALIDATEUNC_OPTION(15i32);
impl ::core::marker::Copy for VALIDATEUNC_OPTION {}
impl ::core::clone::Clone for VALIDATEUNC_OPTION {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for VALIDATEUNC_OPTION {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for VALIDATEUNC_OPTION {
type Abi = Self;
}
impl ::core::fmt::Debug for VALIDATEUNC_OPTION {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("VALIDATEUNC_OPTION").field(&self.0).finish()
}
}
impl ::core::ops::BitOr for VALIDATEUNC_OPTION {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl ::core::ops::BitAnd for VALIDATEUNC_OPTION {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl ::core::ops::BitOrAssign for VALIDATEUNC_OPTION {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl ::core::ops::BitAndAssign for VALIDATEUNC_OPTION {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl ::core::ops::Not for VALIDATEUNC_OPTION {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct VPCOLORFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VPCF_TEXT: VPCOLORFLAGS = VPCOLORFLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VPCF_BACKGROUND: VPCOLORFLAGS = VPCOLORFLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VPCF_SORTCOLUMN: VPCOLORFLAGS = VPCOLORFLAGS(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VPCF_SUBTEXT: VPCOLORFLAGS = VPCOLORFLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VPCF_TEXTBACKGROUND: VPCOLORFLAGS = VPCOLORFLAGS(5i32);
impl ::core::marker::Copy for VPCOLORFLAGS {}
impl ::core::clone::Clone for VPCOLORFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for VPCOLORFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for VPCOLORFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for VPCOLORFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("VPCOLORFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct VPWATERMARKFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VPWF_DEFAULT: VPWATERMARKFLAGS = VPWATERMARKFLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const VPWF_ALPHABLEND: VPWATERMARKFLAGS = VPWATERMARKFLAGS(1i32);
impl ::core::marker::Copy for VPWATERMARKFLAGS {}
impl ::core::clone::Clone for VPWATERMARKFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for VPWATERMARKFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for VPWATERMARKFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for VPWATERMARKFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("VPWATERMARKFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct WTS_ALPHATYPE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTSAT_UNKNOWN: WTS_ALPHATYPE = WTS_ALPHATYPE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTSAT_RGB: WTS_ALPHATYPE = WTS_ALPHATYPE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTSAT_ARGB: WTS_ALPHATYPE = WTS_ALPHATYPE(2i32);
impl ::core::marker::Copy for WTS_ALPHATYPE {}
impl ::core::clone::Clone for WTS_ALPHATYPE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for WTS_ALPHATYPE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for WTS_ALPHATYPE {
type Abi = Self;
}
impl ::core::fmt::Debug for WTS_ALPHATYPE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("WTS_ALPHATYPE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct WTS_CACHEFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_DEFAULT: WTS_CACHEFLAGS = WTS_CACHEFLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_LOWQUALITY: WTS_CACHEFLAGS = WTS_CACHEFLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_CACHED: WTS_CACHEFLAGS = WTS_CACHEFLAGS(2i32);
impl ::core::marker::Copy for WTS_CACHEFLAGS {}
impl ::core::clone::Clone for WTS_CACHEFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for WTS_CACHEFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for WTS_CACHEFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for WTS_CACHEFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("WTS_CACHEFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct WTS_CONTEXTFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTSCF_DEFAULT: WTS_CONTEXTFLAGS = WTS_CONTEXTFLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTSCF_APPSTYLE: WTS_CONTEXTFLAGS = WTS_CONTEXTFLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTSCF_SQUARE: WTS_CONTEXTFLAGS = WTS_CONTEXTFLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTSCF_WIDE: WTS_CONTEXTFLAGS = WTS_CONTEXTFLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTSCF_FAST: WTS_CONTEXTFLAGS = WTS_CONTEXTFLAGS(8i32);
impl ::core::marker::Copy for WTS_CONTEXTFLAGS {}
impl ::core::clone::Clone for WTS_CONTEXTFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for WTS_CONTEXTFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for WTS_CONTEXTFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for WTS_CONTEXTFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("WTS_CONTEXTFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct WTS_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_NONE: WTS_FLAGS = WTS_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_EXTRACT: WTS_FLAGS = WTS_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_INCACHEONLY: WTS_FLAGS = WTS_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_FASTEXTRACT: WTS_FLAGS = WTS_FLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_FORCEEXTRACTION: WTS_FLAGS = WTS_FLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_SLOWRECLAIM: WTS_FLAGS = WTS_FLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_EXTRACTDONOTCACHE: WTS_FLAGS = WTS_FLAGS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_SCALETOREQUESTEDSIZE: WTS_FLAGS = WTS_FLAGS(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_SKIPFASTEXTRACT: WTS_FLAGS = WTS_FLAGS(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_EXTRACTINPROC: WTS_FLAGS = WTS_FLAGS(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_CROPTOSQUARE: WTS_FLAGS = WTS_FLAGS(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_INSTANCESURROGATE: WTS_FLAGS = WTS_FLAGS(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_REQUIRESURROGATE: WTS_FLAGS = WTS_FLAGS(2048i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_APPSTYLE: WTS_FLAGS = WTS_FLAGS(8192i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_WIDETHUMBNAILS: WTS_FLAGS = WTS_FLAGS(16384i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_IDEALCACHESIZEONLY: WTS_FLAGS = WTS_FLAGS(32768i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const WTS_SCALEUP: WTS_FLAGS = WTS_FLAGS(65536i32);
impl ::core::marker::Copy for WTS_FLAGS {}
impl ::core::clone::Clone for WTS_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for WTS_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for WTS_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for WTS_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("WTS_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _BROWSERFRAMEOPTIONS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFO_NONE: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFO_BROWSER_PERSIST_SETTINGS: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFO_RENAME_FOLDER_OPTIONS_TOINTERNET: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFO_BOTH_OPTIONS: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BIF_PREFER_INTERNET_SHORTCUT: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFO_BROWSE_NO_IN_NEW_PROCESS: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFO_ENABLE_HYPERLINK_TRACKING: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFO_USE_IE_OFFLINE_SUPPORT: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFO_SUBSTITUE_INTERNET_START_PAGE: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFO_USE_IE_LOGOBANDING: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFO_ADD_IE_TOCAPTIONBAR: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFO_USE_DIALUP_REF: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFO_USE_IE_TOOLBAR: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(2048i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFO_NO_PARENT_FOLDER_SUPPORT: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(4096i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFO_NO_REOPEN_NEXT_RESTART: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(8192i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFO_GO_HOME_PAGE: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(16384i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFO_PREFER_IEPROCESS: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(32768i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFO_SHOW_NAVIGATION_CANCELLED: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(65536i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFO_USE_IE_STATUSBAR: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(131072i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const BFO_QUERY_ALL: _BROWSERFRAMEOPTIONS = _BROWSERFRAMEOPTIONS(-1i32);
impl ::core::marker::Copy for _BROWSERFRAMEOPTIONS {}
impl ::core::clone::Clone for _BROWSERFRAMEOPTIONS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _BROWSERFRAMEOPTIONS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _BROWSERFRAMEOPTIONS {
type Abi = Self;
}
impl ::core::fmt::Debug for _BROWSERFRAMEOPTIONS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_BROWSERFRAMEOPTIONS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _CDBE_ACTIONS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDBE_TYPE_MUSIC: _CDBE_ACTIONS = _CDBE_ACTIONS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDBE_TYPE_DATA: _CDBE_ACTIONS = _CDBE_ACTIONS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const CDBE_TYPE_ALL: _CDBE_ACTIONS = _CDBE_ACTIONS(-1i32);
impl ::core::marker::Copy for _CDBE_ACTIONS {}
impl ::core::clone::Clone for _CDBE_ACTIONS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _CDBE_ACTIONS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _CDBE_ACTIONS {
type Abi = Self;
}
impl ::core::fmt::Debug for _CDBE_ACTIONS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_CDBE_ACTIONS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _EXPCMDFLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECF_DEFAULT: _EXPCMDFLAGS = _EXPCMDFLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECF_HASSUBCOMMANDS: _EXPCMDFLAGS = _EXPCMDFLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECF_HASSPLITBUTTON: _EXPCMDFLAGS = _EXPCMDFLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECF_HIDELABEL: _EXPCMDFLAGS = _EXPCMDFLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECF_ISSEPARATOR: _EXPCMDFLAGS = _EXPCMDFLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECF_HASLUASHIELD: _EXPCMDFLAGS = _EXPCMDFLAGS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECF_SEPARATORBEFORE: _EXPCMDFLAGS = _EXPCMDFLAGS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECF_SEPARATORAFTER: _EXPCMDFLAGS = _EXPCMDFLAGS(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECF_ISDROPDOWN: _EXPCMDFLAGS = _EXPCMDFLAGS(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECF_TOGGLEABLE: _EXPCMDFLAGS = _EXPCMDFLAGS(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECF_AUTOMENUICONS: _EXPCMDFLAGS = _EXPCMDFLAGS(512i32);
impl ::core::marker::Copy for _EXPCMDFLAGS {}
impl ::core::clone::Clone for _EXPCMDFLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _EXPCMDFLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _EXPCMDFLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for _EXPCMDFLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_EXPCMDFLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _EXPCMDSTATE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECS_ENABLED: _EXPCMDSTATE = _EXPCMDSTATE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECS_DISABLED: _EXPCMDSTATE = _EXPCMDSTATE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECS_HIDDEN: _EXPCMDSTATE = _EXPCMDSTATE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECS_CHECKBOX: _EXPCMDSTATE = _EXPCMDSTATE(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECS_CHECKED: _EXPCMDSTATE = _EXPCMDSTATE(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const ECS_RADIOCHECK: _EXPCMDSTATE = _EXPCMDSTATE(16i32);
impl ::core::marker::Copy for _EXPCMDSTATE {}
impl ::core::clone::Clone for _EXPCMDSTATE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _EXPCMDSTATE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _EXPCMDSTATE {
type Abi = Self;
}
impl ::core::fmt::Debug for _EXPCMDSTATE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_EXPCMDSTATE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _EXPLORERPANESTATE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EPS_DONTCARE: _EXPLORERPANESTATE = _EXPLORERPANESTATE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EPS_DEFAULT_ON: _EXPLORERPANESTATE = _EXPLORERPANESTATE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EPS_DEFAULT_OFF: _EXPLORERPANESTATE = _EXPLORERPANESTATE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EPS_STATEMASK: _EXPLORERPANESTATE = _EXPLORERPANESTATE(65535i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EPS_INITIALSTATE: _EXPLORERPANESTATE = _EXPLORERPANESTATE(65536i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EPS_FORCE: _EXPLORERPANESTATE = _EXPLORERPANESTATE(131072i32);
impl ::core::marker::Copy for _EXPLORERPANESTATE {}
impl ::core::clone::Clone for _EXPLORERPANESTATE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _EXPLORERPANESTATE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _EXPLORERPANESTATE {
type Abi = Self;
}
impl ::core::fmt::Debug for _EXPLORERPANESTATE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_EXPLORERPANESTATE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _EXPPS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const EXPPS_FILETYPES: _EXPPS = _EXPPS(1i32);
impl ::core::marker::Copy for _EXPPS {}
impl ::core::clone::Clone for _EXPPS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _EXPPS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _EXPPS {
type Abi = Self;
}
impl ::core::fmt::Debug for _EXPPS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_EXPPS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _KF_DEFINITION_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KFDF_LOCAL_REDIRECT_ONLY: _KF_DEFINITION_FLAGS = _KF_DEFINITION_FLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KFDF_ROAMABLE: _KF_DEFINITION_FLAGS = _KF_DEFINITION_FLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KFDF_PRECREATE: _KF_DEFINITION_FLAGS = _KF_DEFINITION_FLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KFDF_STREAM: _KF_DEFINITION_FLAGS = _KF_DEFINITION_FLAGS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KFDF_PUBLISHEXPANDEDPATH: _KF_DEFINITION_FLAGS = _KF_DEFINITION_FLAGS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KFDF_NO_REDIRECT_UI: _KF_DEFINITION_FLAGS = _KF_DEFINITION_FLAGS(64i32);
impl ::core::marker::Copy for _KF_DEFINITION_FLAGS {}
impl ::core::clone::Clone for _KF_DEFINITION_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _KF_DEFINITION_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _KF_DEFINITION_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for _KF_DEFINITION_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_KF_DEFINITION_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _KF_REDIRECTION_CAPABILITIES(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_REDIRECTION_CAPABILITIES_ALLOW_ALL: _KF_REDIRECTION_CAPABILITIES = _KF_REDIRECTION_CAPABILITIES(255i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_REDIRECTION_CAPABILITIES_REDIRECTABLE: _KF_REDIRECTION_CAPABILITIES = _KF_REDIRECTION_CAPABILITIES(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_REDIRECTION_CAPABILITIES_DENY_ALL: _KF_REDIRECTION_CAPABILITIES = _KF_REDIRECTION_CAPABILITIES(1048320i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_REDIRECTION_CAPABILITIES_DENY_POLICY_REDIRECTED: _KF_REDIRECTION_CAPABILITIES = _KF_REDIRECTION_CAPABILITIES(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_REDIRECTION_CAPABILITIES_DENY_POLICY: _KF_REDIRECTION_CAPABILITIES = _KF_REDIRECTION_CAPABILITIES(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_REDIRECTION_CAPABILITIES_DENY_PERMISSIONS: _KF_REDIRECTION_CAPABILITIES = _KF_REDIRECTION_CAPABILITIES(1024i32);
impl ::core::marker::Copy for _KF_REDIRECTION_CAPABILITIES {}
impl ::core::clone::Clone for _KF_REDIRECTION_CAPABILITIES {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _KF_REDIRECTION_CAPABILITIES {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _KF_REDIRECTION_CAPABILITIES {
type Abi = Self;
}
impl ::core::fmt::Debug for _KF_REDIRECTION_CAPABILITIES {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_KF_REDIRECTION_CAPABILITIES").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _KF_REDIRECT_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_REDIRECT_USER_EXCLUSIVE: _KF_REDIRECT_FLAGS = _KF_REDIRECT_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_REDIRECT_COPY_SOURCE_DACL: _KF_REDIRECT_FLAGS = _KF_REDIRECT_FLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_REDIRECT_OWNER_USER: _KF_REDIRECT_FLAGS = _KF_REDIRECT_FLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_REDIRECT_SET_OWNER_EXPLICIT: _KF_REDIRECT_FLAGS = _KF_REDIRECT_FLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_REDIRECT_CHECK_ONLY: _KF_REDIRECT_FLAGS = _KF_REDIRECT_FLAGS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_REDIRECT_WITH_UI: _KF_REDIRECT_FLAGS = _KF_REDIRECT_FLAGS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_REDIRECT_UNPIN: _KF_REDIRECT_FLAGS = _KF_REDIRECT_FLAGS(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_REDIRECT_PIN: _KF_REDIRECT_FLAGS = _KF_REDIRECT_FLAGS(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_REDIRECT_COPY_CONTENTS: _KF_REDIRECT_FLAGS = _KF_REDIRECT_FLAGS(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_REDIRECT_DEL_SOURCE_CONTENTS: _KF_REDIRECT_FLAGS = _KF_REDIRECT_FLAGS(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const KF_REDIRECT_EXCLUDE_ALL_KNOWN_SUBFOLDERS: _KF_REDIRECT_FLAGS = _KF_REDIRECT_FLAGS(2048i32);
impl ::core::marker::Copy for _KF_REDIRECT_FLAGS {}
impl ::core::clone::Clone for _KF_REDIRECT_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _KF_REDIRECT_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _KF_REDIRECT_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for _KF_REDIRECT_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_KF_REDIRECT_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _NMCII_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NMCII_NONE: _NMCII_FLAGS = _NMCII_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NMCII_ITEMS: _NMCII_FLAGS = _NMCII_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NMCII_FOLDERS: _NMCII_FLAGS = _NMCII_FLAGS(2i32);
impl ::core::marker::Copy for _NMCII_FLAGS {}
impl ::core::clone::Clone for _NMCII_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _NMCII_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _NMCII_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for _NMCII_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_NMCII_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _NMCSAEI_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NMCSAEI_SELECT: _NMCSAEI_FLAGS = _NMCSAEI_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NMCSAEI_EDIT: _NMCSAEI_FLAGS = _NMCSAEI_FLAGS(1i32);
impl ::core::marker::Copy for _NMCSAEI_FLAGS {}
impl ::core::clone::Clone for _NMCSAEI_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _NMCSAEI_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _NMCSAEI_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for _NMCSAEI_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_NMCSAEI_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _NSTCECLICKTYPE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCECT_LBUTTON: _NSTCECLICKTYPE = _NSTCECLICKTYPE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCECT_MBUTTON: _NSTCECLICKTYPE = _NSTCECLICKTYPE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCECT_RBUTTON: _NSTCECLICKTYPE = _NSTCECLICKTYPE(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCECT_BUTTON: _NSTCECLICKTYPE = _NSTCECLICKTYPE(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCECT_DBLCLICK: _NSTCECLICKTYPE = _NSTCECLICKTYPE(4i32);
impl ::core::marker::Copy for _NSTCECLICKTYPE {}
impl ::core::clone::Clone for _NSTCECLICKTYPE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _NSTCECLICKTYPE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _NSTCECLICKTYPE {
type Abi = Self;
}
impl ::core::fmt::Debug for _NSTCECLICKTYPE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_NSTCECLICKTYPE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _NSTCEHITTEST(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCEHT_NOWHERE: _NSTCEHITTEST = _NSTCEHITTEST(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCEHT_ONITEMICON: _NSTCEHITTEST = _NSTCEHITTEST(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCEHT_ONITEMLABEL: _NSTCEHITTEST = _NSTCEHITTEST(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCEHT_ONITEMINDENT: _NSTCEHITTEST = _NSTCEHITTEST(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCEHT_ONITEMBUTTON: _NSTCEHITTEST = _NSTCEHITTEST(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCEHT_ONITEMRIGHT: _NSTCEHITTEST = _NSTCEHITTEST(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCEHT_ONITEMSTATEICON: _NSTCEHITTEST = _NSTCEHITTEST(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCEHT_ONITEM: _NSTCEHITTEST = _NSTCEHITTEST(70i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCEHT_ONITEMTABBUTTON: _NSTCEHITTEST = _NSTCEHITTEST(4096i32);
impl ::core::marker::Copy for _NSTCEHITTEST {}
impl ::core::clone::Clone for _NSTCEHITTEST {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _NSTCEHITTEST {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _NSTCEHITTEST {
type Abi = Self;
}
impl ::core::fmt::Debug for _NSTCEHITTEST {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_NSTCEHITTEST").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _NSTCITEMSTATE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCIS_NONE: _NSTCITEMSTATE = _NSTCITEMSTATE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCIS_SELECTED: _NSTCITEMSTATE = _NSTCITEMSTATE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCIS_EXPANDED: _NSTCITEMSTATE = _NSTCITEMSTATE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCIS_BOLD: _NSTCITEMSTATE = _NSTCITEMSTATE(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCIS_DISABLED: _NSTCITEMSTATE = _NSTCITEMSTATE(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCIS_SELECTEDNOEXPAND: _NSTCITEMSTATE = _NSTCITEMSTATE(16i32);
impl ::core::marker::Copy for _NSTCITEMSTATE {}
impl ::core::clone::Clone for _NSTCITEMSTATE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _NSTCITEMSTATE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _NSTCITEMSTATE {
type Abi = Self;
}
impl ::core::fmt::Debug for _NSTCITEMSTATE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_NSTCITEMSTATE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _NSTCROOTSTYLE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCRS_VISIBLE: _NSTCROOTSTYLE = _NSTCROOTSTYLE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCRS_HIDDEN: _NSTCROOTSTYLE = _NSTCROOTSTYLE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCRS_EXPANDED: _NSTCROOTSTYLE = _NSTCROOTSTYLE(2i32);
impl ::core::marker::Copy for _NSTCROOTSTYLE {}
impl ::core::clone::Clone for _NSTCROOTSTYLE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _NSTCROOTSTYLE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _NSTCROOTSTYLE {
type Abi = Self;
}
impl ::core::fmt::Debug for _NSTCROOTSTYLE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_NSTCROOTSTYLE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _NSTCSTYLE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_HASEXPANDOS: _NSTCSTYLE = _NSTCSTYLE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_HASLINES: _NSTCSTYLE = _NSTCSTYLE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_SINGLECLICKEXPAND: _NSTCSTYLE = _NSTCSTYLE(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_FULLROWSELECT: _NSTCSTYLE = _NSTCSTYLE(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_SPRINGEXPAND: _NSTCSTYLE = _NSTCSTYLE(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_HORIZONTALSCROLL: _NSTCSTYLE = _NSTCSTYLE(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_ROOTHASEXPANDO: _NSTCSTYLE = _NSTCSTYLE(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_SHOWSELECTIONALWAYS: _NSTCSTYLE = _NSTCSTYLE(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_NOINFOTIP: _NSTCSTYLE = _NSTCSTYLE(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_EVENHEIGHT: _NSTCSTYLE = _NSTCSTYLE(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_NOREPLACEOPEN: _NSTCSTYLE = _NSTCSTYLE(2048i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_DISABLEDRAGDROP: _NSTCSTYLE = _NSTCSTYLE(4096i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_NOORDERSTREAM: _NSTCSTYLE = _NSTCSTYLE(8192i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_RICHTOOLTIP: _NSTCSTYLE = _NSTCSTYLE(16384i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_BORDER: _NSTCSTYLE = _NSTCSTYLE(32768i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_NOEDITLABELS: _NSTCSTYLE = _NSTCSTYLE(65536i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_TABSTOP: _NSTCSTYLE = _NSTCSTYLE(131072i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_FAVORITESMODE: _NSTCSTYLE = _NSTCSTYLE(524288i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_AUTOHSCROLL: _NSTCSTYLE = _NSTCSTYLE(1048576i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_FADEINOUTEXPANDOS: _NSTCSTYLE = _NSTCSTYLE(2097152i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_EMPTYTEXT: _NSTCSTYLE = _NSTCSTYLE(4194304i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_CHECKBOXES: _NSTCSTYLE = _NSTCSTYLE(8388608i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_PARTIALCHECKBOXES: _NSTCSTYLE = _NSTCSTYLE(16777216i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_EXCLUSIONCHECKBOXES: _NSTCSTYLE = _NSTCSTYLE(33554432i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_DIMMEDCHECKBOXES: _NSTCSTYLE = _NSTCSTYLE(67108864i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_NOINDENTCHECKS: _NSTCSTYLE = _NSTCSTYLE(134217728i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_ALLOWJUNCTIONS: _NSTCSTYLE = _NSTCSTYLE(268435456i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_SHOWTABSBUTTON: _NSTCSTYLE = _NSTCSTYLE(536870912i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_SHOWDELETEBUTTON: _NSTCSTYLE = _NSTCSTYLE(1073741824i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const NSTCS_SHOWREFRESHBUTTON: _NSTCSTYLE = _NSTCSTYLE(-2147483648i32);
impl ::core::marker::Copy for _NSTCSTYLE {}
impl ::core::clone::Clone for _NSTCSTYLE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _NSTCSTYLE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _NSTCSTYLE {
type Abi = Self;
}
impl ::core::fmt::Debug for _NSTCSTYLE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_NSTCSTYLE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _OPPROGDLGF(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OPPROGDLG_DEFAULT: _OPPROGDLGF = _OPPROGDLGF(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OPPROGDLG_ENABLEPAUSE: _OPPROGDLGF = _OPPROGDLGF(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OPPROGDLG_ALLOWUNDO: _OPPROGDLGF = _OPPROGDLGF(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OPPROGDLG_DONTDISPLAYSOURCEPATH: _OPPROGDLGF = _OPPROGDLGF(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OPPROGDLG_DONTDISPLAYDESTPATH: _OPPROGDLGF = _OPPROGDLGF(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OPPROGDLG_NOMULTIDAYESTIMATES: _OPPROGDLGF = _OPPROGDLGF(2048i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const OPPROGDLG_DONTDISPLAYLOCATIONS: _OPPROGDLGF = _OPPROGDLGF(4096i32);
impl ::core::marker::Copy for _OPPROGDLGF {}
impl ::core::clone::Clone for _OPPROGDLGF {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _OPPROGDLGF {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _OPPROGDLGF {
type Abi = Self;
}
impl ::core::fmt::Debug for _OPPROGDLGF {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_OPPROGDLGF").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _PDMODE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PDM_DEFAULT: _PDMODE = _PDMODE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PDM_RUN: _PDMODE = _PDMODE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PDM_PREFLIGHT: _PDMODE = _PDMODE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PDM_UNDOING: _PDMODE = _PDMODE(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PDM_ERRORSBLOCKING: _PDMODE = _PDMODE(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const PDM_INDETERMINATE: _PDMODE = _PDMODE(16i32);
impl ::core::marker::Copy for _PDMODE {}
impl ::core::clone::Clone for _PDMODE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _PDMODE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _PDMODE {
type Abi = Self;
}
impl ::core::fmt::Debug for _PDMODE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_PDMODE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _SHCONTF(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCONTF_CHECKING_FOR_CHILDREN: _SHCONTF = _SHCONTF(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCONTF_FOLDERS: _SHCONTF = _SHCONTF(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCONTF_NONFOLDERS: _SHCONTF = _SHCONTF(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCONTF_INCLUDEHIDDEN: _SHCONTF = _SHCONTF(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCONTF_INIT_ON_FIRST_NEXT: _SHCONTF = _SHCONTF(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCONTF_NETPRINTERSRCH: _SHCONTF = _SHCONTF(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCONTF_SHAREABLE: _SHCONTF = _SHCONTF(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCONTF_STORAGE: _SHCONTF = _SHCONTF(2048i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCONTF_NAVIGATION_ENUM: _SHCONTF = _SHCONTF(4096i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCONTF_FASTITEMS: _SHCONTF = _SHCONTF(8192i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCONTF_FLATLIST: _SHCONTF = _SHCONTF(16384i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCONTF_ENABLE_ASYNC: _SHCONTF = _SHCONTF(32768i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SHCONTF_INCLUDESUPERHIDDEN: _SHCONTF = _SHCONTF(65536i32);
impl ::core::marker::Copy for _SHCONTF {}
impl ::core::clone::Clone for _SHCONTF {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _SHCONTF {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _SHCONTF {
type Abi = Self;
}
impl ::core::fmt::Debug for _SHCONTF {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_SHCONTF").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _SICHINTF(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SICHINT_DISPLAY: _SICHINTF = _SICHINTF(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SICHINT_ALLFIELDS: _SICHINTF = _SICHINTF(-2147483648i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SICHINT_CANONICAL: _SICHINTF = _SICHINTF(268435456i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SICHINT_TEST_FILESYSPATH_IF_NOT_EQUAL: _SICHINTF = _SICHINTF(536870912i32);
impl ::core::marker::Copy for _SICHINTF {}
impl ::core::clone::Clone for _SICHINTF {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _SICHINTF {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _SICHINTF {
type Abi = Self;
}
impl ::core::fmt::Debug for _SICHINTF {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_SICHINTF").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _SPBEGINF(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPBEGINF_NORMAL: _SPBEGINF = _SPBEGINF(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPBEGINF_AUTOTIME: _SPBEGINF = _SPBEGINF(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPBEGINF_NOPROGRESSBAR: _SPBEGINF = _SPBEGINF(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPBEGINF_MARQUEEPROGRESS: _SPBEGINF = _SPBEGINF(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPBEGINF_NOCANCELBUTTON: _SPBEGINF = _SPBEGINF(64i32);
impl ::core::marker::Copy for _SPBEGINF {}
impl ::core::clone::Clone for _SPBEGINF {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _SPBEGINF {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _SPBEGINF {
type Abi = Self;
}
impl ::core::fmt::Debug for _SPBEGINF {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_SPBEGINF").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _SPINITF(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPINITF_NORMAL: _SPINITF = _SPINITF(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPINITF_MODAL: _SPINITF = _SPINITF(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SPINITF_NOMINIMIZE: _SPINITF = _SPINITF(8i32);
impl ::core::marker::Copy for _SPINITF {}
impl ::core::clone::Clone for _SPINITF {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _SPINITF {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _SPINITF {
type Abi = Self;
}
impl ::core::fmt::Debug for _SPINITF {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_SPINITF").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _SV3CVW3_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SV3CVW3_DEFAULT: _SV3CVW3_FLAGS = _SV3CVW3_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SV3CVW3_NONINTERACTIVE: _SV3CVW3_FLAGS = _SV3CVW3_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SV3CVW3_FORCEVIEWMODE: _SV3CVW3_FLAGS = _SV3CVW3_FLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SV3CVW3_FORCEFOLDERFLAGS: _SV3CVW3_FLAGS = _SV3CVW3_FLAGS(4i32);
impl ::core::marker::Copy for _SV3CVW3_FLAGS {}
impl ::core::clone::Clone for _SV3CVW3_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _SV3CVW3_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _SV3CVW3_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for _SV3CVW3_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_SV3CVW3_FLAGS").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _SVGIO(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVGIO_BACKGROUND: _SVGIO = _SVGIO(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVGIO_SELECTION: _SVGIO = _SVGIO(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVGIO_ALLVIEW: _SVGIO = _SVGIO(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVGIO_CHECKED: _SVGIO = _SVGIO(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVGIO_TYPE_MASK: _SVGIO = _SVGIO(15i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVGIO_FLAG_VIEWORDER: _SVGIO = _SVGIO(-2147483648i32);
impl ::core::marker::Copy for _SVGIO {}
impl ::core::clone::Clone for _SVGIO {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _SVGIO {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _SVGIO {
type Abi = Self;
}
impl ::core::fmt::Debug for _SVGIO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_SVGIO").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _SVSIF(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVSI_DESELECT: _SVSIF = _SVSIF(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVSI_SELECT: _SVSIF = _SVSIF(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVSI_EDIT: _SVSIF = _SVSIF(3i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVSI_DESELECTOTHERS: _SVSIF = _SVSIF(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVSI_ENSUREVISIBLE: _SVSIF = _SVSIF(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVSI_FOCUSED: _SVSIF = _SVSIF(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVSI_TRANSLATEPT: _SVSIF = _SVSIF(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVSI_SELECTIONMARK: _SVSIF = _SVSIF(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVSI_POSITIONITEM: _SVSIF = _SVSIF(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVSI_CHECK: _SVSIF = _SVSIF(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVSI_CHECK2: _SVSIF = _SVSIF(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVSI_KEYBOARDSELECT: _SVSIF = _SVSIF(1025i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const SVSI_NOTAKEFOCUS: _SVSIF = _SVSIF(1073741824i32);
impl ::core::marker::Copy for _SVSIF {}
impl ::core::clone::Clone for _SVSIF {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _SVSIF {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _SVSIF {
type Abi = Self;
}
impl ::core::fmt::Debug for _SVSIF {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_SVSIF").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _TRANSFER_ADVISE_STATE(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TS_NONE: _TRANSFER_ADVISE_STATE = _TRANSFER_ADVISE_STATE(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TS_PERFORMING: _TRANSFER_ADVISE_STATE = _TRANSFER_ADVISE_STATE(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TS_PREPARING: _TRANSFER_ADVISE_STATE = _TRANSFER_ADVISE_STATE(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TS_INDETERMINATE: _TRANSFER_ADVISE_STATE = _TRANSFER_ADVISE_STATE(4i32);
impl ::core::marker::Copy for _TRANSFER_ADVISE_STATE {}
impl ::core::clone::Clone for _TRANSFER_ADVISE_STATE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _TRANSFER_ADVISE_STATE {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _TRANSFER_ADVISE_STATE {
type Abi = Self;
}
impl ::core::fmt::Debug for _TRANSFER_ADVISE_STATE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_TRANSFER_ADVISE_STATE").field(&self.0).finish()
}
}
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct _TRANSFER_SOURCE_FLAGS(pub i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TSF_NORMAL: _TRANSFER_SOURCE_FLAGS = _TRANSFER_SOURCE_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TSF_FAIL_EXIST: _TRANSFER_SOURCE_FLAGS = _TRANSFER_SOURCE_FLAGS(0i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TSF_RENAME_EXIST: _TRANSFER_SOURCE_FLAGS = _TRANSFER_SOURCE_FLAGS(1i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TSF_OVERWRITE_EXIST: _TRANSFER_SOURCE_FLAGS = _TRANSFER_SOURCE_FLAGS(2i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TSF_ALLOW_DECRYPTION: _TRANSFER_SOURCE_FLAGS = _TRANSFER_SOURCE_FLAGS(4i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TSF_NO_SECURITY: _TRANSFER_SOURCE_FLAGS = _TRANSFER_SOURCE_FLAGS(8i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TSF_COPY_CREATION_TIME: _TRANSFER_SOURCE_FLAGS = _TRANSFER_SOURCE_FLAGS(16i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TSF_COPY_WRITE_TIME: _TRANSFER_SOURCE_FLAGS = _TRANSFER_SOURCE_FLAGS(32i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TSF_USE_FULL_ACCESS: _TRANSFER_SOURCE_FLAGS = _TRANSFER_SOURCE_FLAGS(64i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TSF_DELETE_RECYCLE_IF_POSSIBLE: _TRANSFER_SOURCE_FLAGS = _TRANSFER_SOURCE_FLAGS(128i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TSF_COPY_HARD_LINK: _TRANSFER_SOURCE_FLAGS = _TRANSFER_SOURCE_FLAGS(256i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TSF_COPY_LOCALIZED_NAME: _TRANSFER_SOURCE_FLAGS = _TRANSFER_SOURCE_FLAGS(512i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TSF_MOVE_AS_COPY_DELETE: _TRANSFER_SOURCE_FLAGS = _TRANSFER_SOURCE_FLAGS(1024i32);
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub const TSF_SUSPEND_SHELLEVENTS: _TRANSFER_SOURCE_FLAGS = _TRANSFER_SOURCE_FLAGS(2048i32);
impl ::core::marker::Copy for _TRANSFER_SOURCE_FLAGS {}
impl ::core::clone::Clone for _TRANSFER_SOURCE_FLAGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for _TRANSFER_SOURCE_FLAGS {
fn default() -> Self {
Self(0)
}
}
unsafe impl ::windows::core::Abi for _TRANSFER_SOURCE_FLAGS {
type Abi = Self;
}
impl ::core::fmt::Debug for _TRANSFER_SOURCE_FLAGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("_TRANSFER_SOURCE_FLAGS").field(&self.0).finish()
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct AASHELLMENUFILENAME {
pub cbTotal: i16,
pub rgbReserved: [u8; 12],
pub szFileName: [u16; 1],
}
impl ::core::marker::Copy for AASHELLMENUFILENAME {}
impl ::core::clone::Clone for AASHELLMENUFILENAME {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for AASHELLMENUFILENAME {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("AASHELLMENUFILENAME").field("cbTotal", &self.cbTotal).field("rgbReserved", &self.rgbReserved).field("szFileName", &self.szFileName).finish()
}
}
unsafe impl ::windows::core::Abi for AASHELLMENUFILENAME {
type Abi = Self;
}
impl ::core::cmp::PartialEq for AASHELLMENUFILENAME {
fn eq(&self, other: &Self) -> bool {
self.cbTotal == other.cbTotal && self.rgbReserved == other.rgbReserved && self.szFileName == other.szFileName
}
}
impl ::core::cmp::Eq for AASHELLMENUFILENAME {}
impl ::core::default::Default for AASHELLMENUFILENAME {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct AASHELLMENUITEM {
pub lpReserved1: *mut ::core::ffi::c_void,
pub iReserved: i32,
pub uiReserved: u32,
pub lpName: *mut AASHELLMENUFILENAME,
pub psz: ::windows::core::PWSTR,
}
impl ::core::marker::Copy for AASHELLMENUITEM {}
impl ::core::clone::Clone for AASHELLMENUITEM {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for AASHELLMENUITEM {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("AASHELLMENUITEM").field("lpReserved1", &self.lpReserved1).field("iReserved", &self.iReserved).field("uiReserved", &self.uiReserved).field("lpName", &self.lpName).field("psz", &self.psz).finish()
}
}
unsafe impl ::windows::core::Abi for AASHELLMENUITEM {
type Abi = Self;
}
impl ::core::cmp::PartialEq for AASHELLMENUITEM {
fn eq(&self, other: &Self) -> bool {
self.lpReserved1 == other.lpReserved1 && self.iReserved == other.iReserved && self.uiReserved == other.uiReserved && self.lpName == other.lpName && self.psz == other.psz
}
}
impl ::core::cmp::Eq for AASHELLMENUITEM {}
impl ::core::default::Default for AASHELLMENUITEM {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
pub struct APPBARDATA {
pub cbSize: u32,
pub hWnd: super::super::Foundation::HWND,
pub uCallbackMessage: u32,
pub uEdge: u32,
pub rc: super::super::Foundation::RECT,
pub lParam: super::super::Foundation::LPARAM,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for APPBARDATA {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for APPBARDATA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for APPBARDATA {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for APPBARDATA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
pub struct APPBARDATA {
pub cbSize: u32,
pub hWnd: super::super::Foundation::HWND,
pub uCallbackMessage: u32,
pub uEdge: u32,
pub rc: super::super::Foundation::RECT,
pub lParam: super::super::Foundation::LPARAM,
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for APPBARDATA {}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for APPBARDATA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for APPBARDATA {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for APPBARDATA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct APPCATEGORYINFO {
pub Locale: u32,
pub pszDescription: ::windows::core::PWSTR,
pub AppCategoryId: ::windows::core::GUID,
}
impl ::core::marker::Copy for APPCATEGORYINFO {}
impl ::core::clone::Clone for APPCATEGORYINFO {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for APPCATEGORYINFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("APPCATEGORYINFO").field("Locale", &self.Locale).field("pszDescription", &self.pszDescription).field("AppCategoryId", &self.AppCategoryId).finish()
}
}
unsafe impl ::windows::core::Abi for APPCATEGORYINFO {
type Abi = Self;
}
impl ::core::cmp::PartialEq for APPCATEGORYINFO {
fn eq(&self, other: &Self) -> bool {
self.Locale == other.Locale && self.pszDescription == other.pszDescription && self.AppCategoryId == other.AppCategoryId
}
}
impl ::core::cmp::Eq for APPCATEGORYINFO {}
impl ::core::default::Default for APPCATEGORYINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct APPCATEGORYINFOLIST {
pub cCategory: u32,
pub pCategoryInfo: *mut APPCATEGORYINFO,
}
impl ::core::marker::Copy for APPCATEGORYINFOLIST {}
impl ::core::clone::Clone for APPCATEGORYINFOLIST {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for APPCATEGORYINFOLIST {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("APPCATEGORYINFOLIST").field("cCategory", &self.cCategory).field("pCategoryInfo", &self.pCategoryInfo).finish()
}
}
unsafe impl ::windows::core::Abi for APPCATEGORYINFOLIST {
type Abi = Self;
}
impl ::core::cmp::PartialEq for APPCATEGORYINFOLIST {
fn eq(&self, other: &Self) -> bool {
self.cCategory == other.cCategory && self.pCategoryInfo == other.pCategoryInfo
}
}
impl ::core::cmp::Eq for APPCATEGORYINFOLIST {}
impl ::core::default::Default for APPCATEGORYINFOLIST {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct APPINFODATA {
pub cbSize: u32,
pub dwMask: u32,
pub pszDisplayName: ::windows::core::PWSTR,
pub pszVersion: ::windows::core::PWSTR,
pub pszPublisher: ::windows::core::PWSTR,
pub pszProductID: ::windows::core::PWSTR,
pub pszRegisteredOwner: ::windows::core::PWSTR,
pub pszRegisteredCompany: ::windows::core::PWSTR,
pub pszLanguage: ::windows::core::PWSTR,
pub pszSupportUrl: ::windows::core::PWSTR,
pub pszSupportTelephone: ::windows::core::PWSTR,
pub pszHelpLink: ::windows::core::PWSTR,
pub pszInstallLocation: ::windows::core::PWSTR,
pub pszInstallSource: ::windows::core::PWSTR,
pub pszInstallDate: ::windows::core::PWSTR,
pub pszContact: ::windows::core::PWSTR,
pub pszComments: ::windows::core::PWSTR,
pub pszImage: ::windows::core::PWSTR,
pub pszReadmeUrl: ::windows::core::PWSTR,
pub pszUpdateInfoUrl: ::windows::core::PWSTR,
}
impl ::core::marker::Copy for APPINFODATA {}
impl ::core::clone::Clone for APPINFODATA {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for APPINFODATA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("APPINFODATA")
.field("cbSize", &self.cbSize)
.field("dwMask", &self.dwMask)
.field("pszDisplayName", &self.pszDisplayName)
.field("pszVersion", &self.pszVersion)
.field("pszPublisher", &self.pszPublisher)
.field("pszProductID", &self.pszProductID)
.field("pszRegisteredOwner", &self.pszRegisteredOwner)
.field("pszRegisteredCompany", &self.pszRegisteredCompany)
.field("pszLanguage", &self.pszLanguage)
.field("pszSupportUrl", &self.pszSupportUrl)
.field("pszSupportTelephone", &self.pszSupportTelephone)
.field("pszHelpLink", &self.pszHelpLink)
.field("pszInstallLocation", &self.pszInstallLocation)
.field("pszInstallSource", &self.pszInstallSource)
.field("pszInstallDate", &self.pszInstallDate)
.field("pszContact", &self.pszContact)
.field("pszComments", &self.pszComments)
.field("pszImage", &self.pszImage)
.field("pszReadmeUrl", &self.pszReadmeUrl)
.field("pszUpdateInfoUrl", &self.pszUpdateInfoUrl)
.finish()
}
}
unsafe impl ::windows::core::Abi for APPINFODATA {
type Abi = Self;
}
impl ::core::cmp::PartialEq for APPINFODATA {
fn eq(&self, other: &Self) -> bool {
self.cbSize == other.cbSize
&& self.dwMask == other.dwMask
&& self.pszDisplayName == other.pszDisplayName
&& self.pszVersion == other.pszVersion
&& self.pszPublisher == other.pszPublisher
&& self.pszProductID == other.pszProductID
&& self.pszRegisteredOwner == other.pszRegisteredOwner
&& self.pszRegisteredCompany == other.pszRegisteredCompany
&& self.pszLanguage == other.pszLanguage
&& self.pszSupportUrl == other.pszSupportUrl
&& self.pszSupportTelephone == other.pszSupportTelephone
&& self.pszHelpLink == other.pszHelpLink
&& self.pszInstallLocation == other.pszInstallLocation
&& self.pszInstallSource == other.pszInstallSource
&& self.pszInstallDate == other.pszInstallDate
&& self.pszContact == other.pszContact
&& self.pszComments == other.pszComments
&& self.pszImage == other.pszImage
&& self.pszReadmeUrl == other.pszReadmeUrl
&& self.pszUpdateInfoUrl == other.pszUpdateInfoUrl
}
}
impl ::core::cmp::Eq for APPINFODATA {}
impl ::core::default::Default for APPINFODATA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Registry\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_System_Registry")]
pub struct ASSOCIATIONELEMENT {
pub ac: ASSOCCLASS,
pub hkClass: super::super::System::Registry::HKEY,
pub pszClass: ::windows::core::PCWSTR,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_System_Registry")]
impl ::core::marker::Copy for ASSOCIATIONELEMENT {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_System_Registry")]
impl ::core::clone::Clone for ASSOCIATIONELEMENT {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_System_Registry")]
unsafe impl ::windows::core::Abi for ASSOCIATIONELEMENT {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_System_Registry")]
impl ::core::default::Default for ASSOCIATIONELEMENT {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Registry\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_System_Registry")]
pub struct ASSOCIATIONELEMENT {
pub ac: ASSOCCLASS,
pub hkClass: super::super::System::Registry::HKEY,
pub pszClass: ::windows::core::PCWSTR,
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_System_Registry")]
impl ::core::marker::Copy for ASSOCIATIONELEMENT {}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_System_Registry")]
impl ::core::clone::Clone for ASSOCIATIONELEMENT {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_System_Registry")]
unsafe impl ::windows::core::Abi for ASSOCIATIONELEMENT {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_System_Registry")]
impl ::core::default::Default for ASSOCIATIONELEMENT {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct AUTO_SCROLL_DATA {
pub iNextSample: i32,
pub dwLastScroll: u32,
pub bFull: super::super::Foundation::BOOL,
pub pts: [super::super::Foundation::POINT; 3],
pub dwTimes: [u32; 3],
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for AUTO_SCROLL_DATA {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for AUTO_SCROLL_DATA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for AUTO_SCROLL_DATA {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for AUTO_SCROLL_DATA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub struct BANDINFOSFB {
pub dwMask: u32,
pub dwStateMask: u32,
pub dwState: u32,
pub crBkgnd: super::super::Foundation::COLORREF,
pub crBtnLt: super::super::Foundation::COLORREF,
pub crBtnDk: super::super::Foundation::COLORREF,
pub wViewMode: u16,
pub wAlign: u16,
pub psf: ::windows::core::ManuallyDrop<IShellFolder>,
pub pidl: *mut Common::ITEMIDLIST,
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::clone::Clone for BANDINFOSFB {
fn clone(&self) -> Self {
unsafe { ::core::mem::transmute_copy(self) }
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::fmt::Debug for BANDINFOSFB {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("BANDINFOSFB").field("dwMask", &self.dwMask).field("dwStateMask", &self.dwStateMask).field("dwState", &self.dwState).field("crBkgnd", &self.crBkgnd).field("crBtnLt", &self.crBtnLt).field("crBtnDk", &self.crBtnDk).field("wViewMode", &self.wViewMode).field("wAlign", &self.wAlign).field("psf", &self.psf).field("pidl", &self.pidl).finish()
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
unsafe impl ::windows::core::Abi for BANDINFOSFB {
type Abi = Self;
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::cmp::PartialEq for BANDINFOSFB {
fn eq(&self, other: &Self) -> bool {
self.dwMask == other.dwMask && self.dwStateMask == other.dwStateMask && self.dwState == other.dwState && self.crBkgnd == other.crBkgnd && self.crBtnLt == other.crBtnLt && self.crBtnDk == other.crBtnDk && self.wViewMode == other.wViewMode && self.wAlign == other.wAlign && self.psf == other.psf && self.pidl == other.pidl
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::cmp::Eq for BANDINFOSFB {}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::default::Default for BANDINFOSFB {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct BANDSITEINFO {
pub dwMask: u32,
pub dwState: u32,
pub dwStyle: u32,
}
impl ::core::marker::Copy for BANDSITEINFO {}
impl ::core::clone::Clone for BANDSITEINFO {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for BANDSITEINFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("BANDSITEINFO").field("dwMask", &self.dwMask).field("dwState", &self.dwState).field("dwStyle", &self.dwStyle).finish()
}
}
unsafe impl ::windows::core::Abi for BANDSITEINFO {
type Abi = Self;
}
impl ::core::cmp::PartialEq for BANDSITEINFO {
fn eq(&self, other: &Self) -> bool {
self.dwMask == other.dwMask && self.dwState == other.dwState && self.dwStyle == other.dwStyle
}
}
impl ::core::cmp::Eq for BANDSITEINFO {}
impl ::core::default::Default for BANDSITEINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct BANNER_NOTIFICATION {
pub event: BANNER_NOTIFICATION_EVENT,
pub providerIdentity: ::windows::core::PCWSTR,
pub contentId: ::windows::core::PCWSTR,
}
impl ::core::marker::Copy for BANNER_NOTIFICATION {}
impl ::core::clone::Clone for BANNER_NOTIFICATION {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for BANNER_NOTIFICATION {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("BANNER_NOTIFICATION").field("event", &self.event).field("providerIdentity", &self.providerIdentity).field("contentId", &self.contentId).finish()
}
}
unsafe impl ::windows::core::Abi for BANNER_NOTIFICATION {
type Abi = Self;
}
impl ::core::cmp::PartialEq for BANNER_NOTIFICATION {
fn eq(&self, other: &Self) -> bool {
self.event == other.event && self.providerIdentity == other.providerIdentity && self.contentId == other.contentId
}
}
impl ::core::cmp::Eq for BANNER_NOTIFICATION {}
impl ::core::default::Default for BANNER_NOTIFICATION {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub struct BASEBROWSERDATALH {
pub _hwnd: super::super::Foundation::HWND,
pub _ptl: ::windows::core::ManuallyDrop<ITravelLog>,
pub _phlf: ::windows::core::ManuallyDrop<IHlinkFrame>,
pub _pautoWB2: ::windows::core::ManuallyDrop<IWebBrowser2>,
pub _pautoEDS: ::windows::core::ManuallyDrop<IExpDispSupport>,
pub _pautoSS: ::windows::core::ManuallyDrop<IShellService>,
pub _eSecureLockIcon: i32,
pub _bitfield: u32,
pub _uActivateState: u32,
pub _pidlViewState: *mut Common::ITEMIDLIST,
pub _pctView: ::windows::core::ManuallyDrop<super::super::System::Ole::IOleCommandTarget>,
pub _pidlCur: *mut Common::ITEMIDLIST,
pub _psv: ::windows::core::ManuallyDrop<IShellView>,
pub _psf: ::windows::core::ManuallyDrop<IShellFolder>,
pub _hwndView: super::super::Foundation::HWND,
pub _pszTitleCur: ::windows::core::PWSTR,
pub _pidlPending: *mut Common::ITEMIDLIST,
pub _psvPending: ::windows::core::ManuallyDrop<IShellView>,
pub _psfPending: ::windows::core::ManuallyDrop<IShellFolder>,
pub _hwndViewPending: super::super::Foundation::HWND,
pub _pszTitlePending: ::windows::core::PWSTR,
pub _fIsViewMSHTML: super::super::Foundation::BOOL,
pub _fPrivacyImpacted: super::super::Foundation::BOOL,
pub _clsidView: ::windows::core::GUID,
pub _clsidViewPending: ::windows::core::GUID,
pub _hwndFrame: super::super::Foundation::HWND,
pub _lPhishingFilterStatus: i32,
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
impl ::core::clone::Clone for BASEBROWSERDATALH {
fn clone(&self) -> Self {
unsafe { ::core::mem::transmute_copy(self) }
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
impl ::core::fmt::Debug for BASEBROWSERDATALH {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("BASEBROWSERDATALH")
.field("_hwnd", &self._hwnd)
.field("_ptl", &self._ptl)
.field("_phlf", &self._phlf)
.field("_pautoWB2", &self._pautoWB2)
.field("_pautoEDS", &self._pautoEDS)
.field("_pautoSS", &self._pautoSS)
.field("_eSecureLockIcon", &self._eSecureLockIcon)
.field("_bitfield", &self._bitfield)
.field("_uActivateState", &self._uActivateState)
.field("_pidlViewState", &self._pidlViewState)
.field("_pctView", &self._pctView)
.field("_pidlCur", &self._pidlCur)
.field("_psv", &self._psv)
.field("_psf", &self._psf)
.field("_hwndView", &self._hwndView)
.field("_pszTitleCur", &self._pszTitleCur)
.field("_pidlPending", &self._pidlPending)
.field("_psvPending", &self._psvPending)
.field("_psfPending", &self._psfPending)
.field("_hwndViewPending", &self._hwndViewPending)
.field("_pszTitlePending", &self._pszTitlePending)
.field("_fIsViewMSHTML", &self._fIsViewMSHTML)
.field("_fPrivacyImpacted", &self._fPrivacyImpacted)
.field("_clsidView", &self._clsidView)
.field("_clsidViewPending", &self._clsidViewPending)
.field("_hwndFrame", &self._hwndFrame)
.field("_lPhishingFilterStatus", &self._lPhishingFilterStatus)
.finish()
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
unsafe impl ::windows::core::Abi for BASEBROWSERDATALH {
type Abi = Self;
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
impl ::core::cmp::PartialEq for BASEBROWSERDATALH {
fn eq(&self, other: &Self) -> bool {
self._hwnd == other._hwnd
&& self._ptl == other._ptl
&& self._phlf == other._phlf
&& self._pautoWB2 == other._pautoWB2
&& self._pautoEDS == other._pautoEDS
&& self._pautoSS == other._pautoSS
&& self._eSecureLockIcon == other._eSecureLockIcon
&& self._bitfield == other._bitfield
&& self._uActivateState == other._uActivateState
&& self._pidlViewState == other._pidlViewState
&& self._pctView == other._pctView
&& self._pidlCur == other._pidlCur
&& self._psv == other._psv
&& self._psf == other._psf
&& self._hwndView == other._hwndView
&& self._pszTitleCur == other._pszTitleCur
&& self._pidlPending == other._pidlPending
&& self._psvPending == other._psvPending
&& self._psfPending == other._psfPending
&& self._hwndViewPending == other._hwndViewPending
&& self._pszTitlePending == other._pszTitlePending
&& self._fIsViewMSHTML == other._fIsViewMSHTML
&& self._fPrivacyImpacted == other._fPrivacyImpacted
&& self._clsidView == other._clsidView
&& self._clsidViewPending == other._clsidViewPending
&& self._hwndFrame == other._hwndFrame
&& self._lPhishingFilterStatus == other._lPhishingFilterStatus
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
impl ::core::cmp::Eq for BASEBROWSERDATALH {}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
impl ::core::default::Default for BASEBROWSERDATALH {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub struct BASEBROWSERDATAXP {
pub _hwnd: super::super::Foundation::HWND,
pub _ptl: ::windows::core::ManuallyDrop<ITravelLog>,
pub _phlf: ::windows::core::ManuallyDrop<IHlinkFrame>,
pub _pautoWB2: ::windows::core::ManuallyDrop<IWebBrowser2>,
pub _pautoEDS: ::windows::core::ManuallyDrop<IExpDispSupportXP>,
pub _pautoSS: ::windows::core::ManuallyDrop<IShellService>,
pub _eSecureLockIcon: i32,
pub _bitfield: u32,
pub _uActivateState: u32,
pub _pidlViewState: *mut Common::ITEMIDLIST,
pub _pctView: ::windows::core::ManuallyDrop<super::super::System::Ole::IOleCommandTarget>,
pub _pidlCur: *mut Common::ITEMIDLIST,
pub _psv: ::windows::core::ManuallyDrop<IShellView>,
pub _psf: ::windows::core::ManuallyDrop<IShellFolder>,
pub _hwndView: super::super::Foundation::HWND,
pub _pszTitleCur: ::windows::core::PWSTR,
pub _pidlPending: *mut Common::ITEMIDLIST,
pub _psvPending: ::windows::core::ManuallyDrop<IShellView>,
pub _psfPending: ::windows::core::ManuallyDrop<IShellFolder>,
pub _hwndViewPending: super::super::Foundation::HWND,
pub _pszTitlePending: ::windows::core::PWSTR,
pub _fIsViewMSHTML: super::super::Foundation::BOOL,
pub _fPrivacyImpacted: super::super::Foundation::BOOL,
pub _clsidView: ::windows::core::GUID,
pub _clsidViewPending: ::windows::core::GUID,
pub _hwndFrame: super::super::Foundation::HWND,
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
impl ::core::clone::Clone for BASEBROWSERDATAXP {
fn clone(&self) -> Self {
unsafe { ::core::mem::transmute_copy(self) }
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
impl ::core::fmt::Debug for BASEBROWSERDATAXP {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("BASEBROWSERDATAXP")
.field("_hwnd", &self._hwnd)
.field("_ptl", &self._ptl)
.field("_phlf", &self._phlf)
.field("_pautoWB2", &self._pautoWB2)
.field("_pautoEDS", &self._pautoEDS)
.field("_pautoSS", &self._pautoSS)
.field("_eSecureLockIcon", &self._eSecureLockIcon)
.field("_bitfield", &self._bitfield)
.field("_uActivateState", &self._uActivateState)
.field("_pidlViewState", &self._pidlViewState)
.field("_pctView", &self._pctView)
.field("_pidlCur", &self._pidlCur)
.field("_psv", &self._psv)
.field("_psf", &self._psf)
.field("_hwndView", &self._hwndView)
.field("_pszTitleCur", &self._pszTitleCur)
.field("_pidlPending", &self._pidlPending)
.field("_psvPending", &self._psvPending)
.field("_psfPending", &self._psfPending)
.field("_hwndViewPending", &self._hwndViewPending)
.field("_pszTitlePending", &self._pszTitlePending)
.field("_fIsViewMSHTML", &self._fIsViewMSHTML)
.field("_fPrivacyImpacted", &self._fPrivacyImpacted)
.field("_clsidView", &self._clsidView)
.field("_clsidViewPending", &self._clsidViewPending)
.field("_hwndFrame", &self._hwndFrame)
.finish()
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
unsafe impl ::windows::core::Abi for BASEBROWSERDATAXP {
type Abi = Self;
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
impl ::core::cmp::PartialEq for BASEBROWSERDATAXP {
fn eq(&self, other: &Self) -> bool {
self._hwnd == other._hwnd
&& self._ptl == other._ptl
&& self._phlf == other._phlf
&& self._pautoWB2 == other._pautoWB2
&& self._pautoEDS == other._pautoEDS
&& self._pautoSS == other._pautoSS
&& self._eSecureLockIcon == other._eSecureLockIcon
&& self._bitfield == other._bitfield
&& self._uActivateState == other._uActivateState
&& self._pidlViewState == other._pidlViewState
&& self._pctView == other._pctView
&& self._pidlCur == other._pidlCur
&& self._psv == other._psv
&& self._psf == other._psf
&& self._hwndView == other._hwndView
&& self._pszTitleCur == other._pszTitleCur
&& self._pidlPending == other._pidlPending
&& self._psvPending == other._psvPending
&& self._psfPending == other._psfPending
&& self._hwndViewPending == other._hwndViewPending
&& self._pszTitlePending == other._pszTitlePending
&& self._fIsViewMSHTML == other._fIsViewMSHTML
&& self._fPrivacyImpacted == other._fPrivacyImpacted
&& self._clsidView == other._clsidView
&& self._clsidViewPending == other._clsidViewPending
&& self._hwndFrame == other._hwndFrame
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
impl ::core::cmp::Eq for BASEBROWSERDATAXP {}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
impl ::core::default::Default for BASEBROWSERDATAXP {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub struct BROWSEINFOA {
pub hwndOwner: super::super::Foundation::HWND,
pub pidlRoot: *mut Common::ITEMIDLIST,
pub pszDisplayName: ::windows::core::PSTR,
pub lpszTitle: ::windows::core::PCSTR,
pub ulFlags: u32,
pub lpfn: BFFCALLBACK,
pub lParam: super::super::Foundation::LPARAM,
pub iImage: i32,
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::marker::Copy for BROWSEINFOA {}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::clone::Clone for BROWSEINFOA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::fmt::Debug for BROWSEINFOA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("BROWSEINFOA").field("hwndOwner", &self.hwndOwner).field("pidlRoot", &self.pidlRoot).field("pszDisplayName", &self.pszDisplayName).field("lpszTitle", &self.lpszTitle).field("ulFlags", &self.ulFlags).field("lParam", &self.lParam).field("iImage", &self.iImage).finish()
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
unsafe impl ::windows::core::Abi for BROWSEINFOA {
type Abi = Self;
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::default::Default for BROWSEINFOA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub struct BROWSEINFOW {
pub hwndOwner: super::super::Foundation::HWND,
pub pidlRoot: *mut Common::ITEMIDLIST,
pub pszDisplayName: ::windows::core::PWSTR,
pub lpszTitle: ::windows::core::PCWSTR,
pub ulFlags: u32,
pub lpfn: BFFCALLBACK,
pub lParam: super::super::Foundation::LPARAM,
pub iImage: i32,
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::marker::Copy for BROWSEINFOW {}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::clone::Clone for BROWSEINFOW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::fmt::Debug for BROWSEINFOW {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("BROWSEINFOW").field("hwndOwner", &self.hwndOwner).field("pidlRoot", &self.pidlRoot).field("pszDisplayName", &self.pszDisplayName).field("lpszTitle", &self.lpszTitle).field("ulFlags", &self.ulFlags).field("lParam", &self.lParam).field("iImage", &self.iImage).finish()
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
unsafe impl ::windows::core::Abi for BROWSEINFOW {
type Abi = Self;
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::default::Default for BROWSEINFOW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct CABINETSTATE {
pub cLength: u16,
pub nVersion: u16,
pub _bitfield: i32,
pub fMenuEnumFilter: u32,
}
impl ::core::marker::Copy for CABINETSTATE {}
impl ::core::clone::Clone for CABINETSTATE {
fn clone(&self) -> Self {
*self
}
}
unsafe impl ::windows::core::Abi for CABINETSTATE {
type Abi = Self;
}
impl ::core::default::Default for CABINETSTATE {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct CATEGORY_INFO {
pub cif: CATEGORYINFO_FLAGS,
pub wszName: [u16; 260],
}
impl ::core::marker::Copy for CATEGORY_INFO {}
impl ::core::clone::Clone for CATEGORY_INFO {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for CATEGORY_INFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("CATEGORY_INFO").field("cif", &self.cif).field("wszName", &self.wszName).finish()
}
}
unsafe impl ::windows::core::Abi for CATEGORY_INFO {
type Abi = Self;
}
impl ::core::cmp::PartialEq for CATEGORY_INFO {
fn eq(&self, other: &Self) -> bool {
self.cif == other.cif && self.wszName == other.wszName
}
}
impl ::core::cmp::Eq for CATEGORY_INFO {}
impl ::core::default::Default for CATEGORY_INFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct CIDA {
pub cidl: u32,
pub aoffset: [u32; 1],
}
impl ::core::marker::Copy for CIDA {}
impl ::core::clone::Clone for CIDA {
fn clone(&self) -> Self {
*self
}
}
unsafe impl ::windows::core::Abi for CIDA {
type Abi = Self;
}
impl ::core::default::Default for CIDA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct CMINVOKECOMMANDINFO {
pub cbSize: u32,
pub fMask: u32,
pub hwnd: super::super::Foundation::HWND,
pub lpVerb: ::windows::core::PCSTR,
pub lpParameters: ::windows::core::PCSTR,
pub lpDirectory: ::windows::core::PCSTR,
pub nShow: i32,
pub dwHotKey: u32,
pub hIcon: super::super::Foundation::HANDLE,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for CMINVOKECOMMANDINFO {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for CMINVOKECOMMANDINFO {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::fmt::Debug for CMINVOKECOMMANDINFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("CMINVOKECOMMANDINFO").field("cbSize", &self.cbSize).field("fMask", &self.fMask).field("hwnd", &self.hwnd).field("lpVerb", &self.lpVerb).field("lpParameters", &self.lpParameters).field("lpDirectory", &self.lpDirectory).field("nShow", &self.nShow).field("dwHotKey", &self.dwHotKey).field("hIcon", &self.hIcon).finish()
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for CMINVOKECOMMANDINFO {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::PartialEq for CMINVOKECOMMANDINFO {
fn eq(&self, other: &Self) -> bool {
self.cbSize == other.cbSize && self.fMask == other.fMask && self.hwnd == other.hwnd && self.lpVerb == other.lpVerb && self.lpParameters == other.lpParameters && self.lpDirectory == other.lpDirectory && self.nShow == other.nShow && self.dwHotKey == other.dwHotKey && self.hIcon == other.hIcon
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::Eq for CMINVOKECOMMANDINFO {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for CMINVOKECOMMANDINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct CMINVOKECOMMANDINFOEX {
pub cbSize: u32,
pub fMask: u32,
pub hwnd: super::super::Foundation::HWND,
pub lpVerb: ::windows::core::PCSTR,
pub lpParameters: ::windows::core::PCSTR,
pub lpDirectory: ::windows::core::PCSTR,
pub nShow: i32,
pub dwHotKey: u32,
pub hIcon: super::super::Foundation::HANDLE,
pub lpTitle: ::windows::core::PCSTR,
pub lpVerbW: ::windows::core::PCWSTR,
pub lpParametersW: ::windows::core::PCWSTR,
pub lpDirectoryW: ::windows::core::PCWSTR,
pub lpTitleW: ::windows::core::PCWSTR,
pub ptInvoke: super::super::Foundation::POINT,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for CMINVOKECOMMANDINFOEX {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for CMINVOKECOMMANDINFOEX {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::fmt::Debug for CMINVOKECOMMANDINFOEX {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("CMINVOKECOMMANDINFOEX")
.field("cbSize", &self.cbSize)
.field("fMask", &self.fMask)
.field("hwnd", &self.hwnd)
.field("lpVerb", &self.lpVerb)
.field("lpParameters", &self.lpParameters)
.field("lpDirectory", &self.lpDirectory)
.field("nShow", &self.nShow)
.field("dwHotKey", &self.dwHotKey)
.field("hIcon", &self.hIcon)
.field("lpTitle", &self.lpTitle)
.field("lpVerbW", &self.lpVerbW)
.field("lpParametersW", &self.lpParametersW)
.field("lpDirectoryW", &self.lpDirectoryW)
.field("lpTitleW", &self.lpTitleW)
.field("ptInvoke", &self.ptInvoke)
.finish()
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for CMINVOKECOMMANDINFOEX {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::PartialEq for CMINVOKECOMMANDINFOEX {
fn eq(&self, other: &Self) -> bool {
self.cbSize == other.cbSize && self.fMask == other.fMask && self.hwnd == other.hwnd && self.lpVerb == other.lpVerb && self.lpParameters == other.lpParameters && self.lpDirectory == other.lpDirectory && self.nShow == other.nShow && self.dwHotKey == other.dwHotKey && self.hIcon == other.hIcon && self.lpTitle == other.lpTitle && self.lpVerbW == other.lpVerbW && self.lpParametersW == other.lpParametersW && self.lpDirectoryW == other.lpDirectoryW && self.lpTitleW == other.lpTitleW && self.ptInvoke == other.ptInvoke
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::Eq for CMINVOKECOMMANDINFOEX {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for CMINVOKECOMMANDINFOEX {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct CMINVOKECOMMANDINFOEX_REMOTE {
pub cbSize: u32,
pub fMask: u32,
pub hwnd: super::super::Foundation::HWND,
pub lpVerbString: ::windows::core::PCSTR,
pub lpParameters: ::windows::core::PCSTR,
pub lpDirectory: ::windows::core::PCSTR,
pub nShow: i32,
pub dwHotKey: u32,
pub lpTitle: ::windows::core::PCSTR,
pub lpVerbWString: ::windows::core::PCWSTR,
pub lpParametersW: ::windows::core::PCWSTR,
pub lpDirectoryW: ::windows::core::PCWSTR,
pub lpTitleW: ::windows::core::PCWSTR,
pub ptInvoke: super::super::Foundation::POINT,
pub lpVerbInt: u32,
pub lpVerbWInt: u32,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for CMINVOKECOMMANDINFOEX_REMOTE {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for CMINVOKECOMMANDINFOEX_REMOTE {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::fmt::Debug for CMINVOKECOMMANDINFOEX_REMOTE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("CMINVOKECOMMANDINFOEX_REMOTE")
.field("cbSize", &self.cbSize)
.field("fMask", &self.fMask)
.field("hwnd", &self.hwnd)
.field("lpVerbString", &self.lpVerbString)
.field("lpParameters", &self.lpParameters)
.field("lpDirectory", &self.lpDirectory)
.field("nShow", &self.nShow)
.field("dwHotKey", &self.dwHotKey)
.field("lpTitle", &self.lpTitle)
.field("lpVerbWString", &self.lpVerbWString)
.field("lpParametersW", &self.lpParametersW)
.field("lpDirectoryW", &self.lpDirectoryW)
.field("lpTitleW", &self.lpTitleW)
.field("ptInvoke", &self.ptInvoke)
.field("lpVerbInt", &self.lpVerbInt)
.field("lpVerbWInt", &self.lpVerbWInt)
.finish()
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for CMINVOKECOMMANDINFOEX_REMOTE {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::PartialEq for CMINVOKECOMMANDINFOEX_REMOTE {
fn eq(&self, other: &Self) -> bool {
self.cbSize == other.cbSize && self.fMask == other.fMask && self.hwnd == other.hwnd && self.lpVerbString == other.lpVerbString && self.lpParameters == other.lpParameters && self.lpDirectory == other.lpDirectory && self.nShow == other.nShow && self.dwHotKey == other.dwHotKey && self.lpTitle == other.lpTitle && self.lpVerbWString == other.lpVerbWString && self.lpParametersW == other.lpParametersW && self.lpDirectoryW == other.lpDirectoryW && self.lpTitleW == other.lpTitleW && self.ptInvoke == other.ptInvoke && self.lpVerbInt == other.lpVerbInt && self.lpVerbWInt == other.lpVerbWInt
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::Eq for CMINVOKECOMMANDINFOEX_REMOTE {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for CMINVOKECOMMANDINFOEX_REMOTE {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct CM_COLUMNINFO {
pub cbSize: u32,
pub dwMask: u32,
pub dwState: u32,
pub uWidth: u32,
pub uDefaultWidth: u32,
pub uIdealWidth: u32,
pub wszName: [u16; 80],
}
impl ::core::marker::Copy for CM_COLUMNINFO {}
impl ::core::clone::Clone for CM_COLUMNINFO {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for CM_COLUMNINFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("CM_COLUMNINFO").field("cbSize", &self.cbSize).field("dwMask", &self.dwMask).field("dwState", &self.dwState).field("uWidth", &self.uWidth).field("uDefaultWidth", &self.uDefaultWidth).field("uIdealWidth", &self.uIdealWidth).field("wszName", &self.wszName).finish()
}
}
unsafe impl ::windows::core::Abi for CM_COLUMNINFO {
type Abi = Self;
}
impl ::core::cmp::PartialEq for CM_COLUMNINFO {
fn eq(&self, other: &Self) -> bool {
self.cbSize == other.cbSize && self.dwMask == other.dwMask && self.dwState == other.dwState && self.uWidth == other.uWidth && self.uDefaultWidth == other.uDefaultWidth && self.uIdealWidth == other.uIdealWidth && self.wszName == other.wszName
}
}
impl ::core::cmp::Eq for CM_COLUMNINFO {}
impl ::core::default::Default for CM_COLUMNINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct CONFIRM_CONFLICT_ITEM {
pub pShellItem: ::windows::core::ManuallyDrop<IShellItem2>,
pub pszOriginalName: ::windows::core::PWSTR,
pub pszAlternateName: ::windows::core::PWSTR,
pub pszLocationShort: ::windows::core::PWSTR,
pub pszLocationFull: ::windows::core::PWSTR,
pub nType: SYNCMGR_CONFLICT_ITEM_TYPE,
}
impl ::core::clone::Clone for CONFIRM_CONFLICT_ITEM {
fn clone(&self) -> Self {
unsafe { ::core::mem::transmute_copy(self) }
}
}
impl ::core::fmt::Debug for CONFIRM_CONFLICT_ITEM {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("CONFIRM_CONFLICT_ITEM").field("pShellItem", &self.pShellItem).field("pszOriginalName", &self.pszOriginalName).field("pszAlternateName", &self.pszAlternateName).field("pszLocationShort", &self.pszLocationShort).field("pszLocationFull", &self.pszLocationFull).field("nType", &self.nType).finish()
}
}
unsafe impl ::windows::core::Abi for CONFIRM_CONFLICT_ITEM {
type Abi = Self;
}
impl ::core::cmp::PartialEq for CONFIRM_CONFLICT_ITEM {
fn eq(&self, other: &Self) -> bool {
self.pShellItem == other.pShellItem && self.pszOriginalName == other.pszOriginalName && self.pszAlternateName == other.pszAlternateName && self.pszLocationShort == other.pszLocationShort && self.pszLocationFull == other.pszLocationFull && self.nType == other.nType
}
}
impl ::core::cmp::Eq for CONFIRM_CONFLICT_ITEM {}
impl ::core::default::Default for CONFIRM_CONFLICT_ITEM {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct CONFIRM_CONFLICT_RESULT_INFO {
pub pszNewName: ::windows::core::PWSTR,
pub iItemIndex: u32,
}
impl ::core::marker::Copy for CONFIRM_CONFLICT_RESULT_INFO {}
impl ::core::clone::Clone for CONFIRM_CONFLICT_RESULT_INFO {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for CONFIRM_CONFLICT_RESULT_INFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("CONFIRM_CONFLICT_RESULT_INFO").field("pszNewName", &self.pszNewName).field("iItemIndex", &self.iItemIndex).finish()
}
}
unsafe impl ::windows::core::Abi for CONFIRM_CONFLICT_RESULT_INFO {
type Abi = Self;
}
impl ::core::cmp::PartialEq for CONFIRM_CONFLICT_RESULT_INFO {
fn eq(&self, other: &Self) -> bool {
self.pszNewName == other.pszNewName && self.iItemIndex == other.iItemIndex
}
}
impl ::core::cmp::Eq for CONFIRM_CONFLICT_RESULT_INFO {}
impl ::core::default::Default for CONFIRM_CONFLICT_RESULT_INFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct CPLINFO {
pub idIcon: i32,
pub idName: i32,
pub idInfo: i32,
pub lData: isize,
}
impl ::core::marker::Copy for CPLINFO {}
impl ::core::clone::Clone for CPLINFO {
fn clone(&self) -> Self {
*self
}
}
unsafe impl ::windows::core::Abi for CPLINFO {
type Abi = Self;
}
impl ::core::default::Default for CPLINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION {
pub ulAuthenticationPackage: u32,
pub clsidCredentialProvider: ::windows::core::GUID,
pub cbSerialization: u32,
pub rgbSerialization: *mut u8,
}
impl ::core::marker::Copy for CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION {}
impl ::core::clone::Clone for CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION").field("ulAuthenticationPackage", &self.ulAuthenticationPackage).field("clsidCredentialProvider", &self.clsidCredentialProvider).field("cbSerialization", &self.cbSerialization).field("rgbSerialization", &self.rgbSerialization).finish()
}
}
unsafe impl ::windows::core::Abi for CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION {
type Abi = Self;
}
impl ::core::cmp::PartialEq for CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION {
fn eq(&self, other: &Self) -> bool {
self.ulAuthenticationPackage == other.ulAuthenticationPackage && self.clsidCredentialProvider == other.clsidCredentialProvider && self.cbSerialization == other.cbSerialization && self.rgbSerialization == other.rgbSerialization
}
}
impl ::core::cmp::Eq for CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION {}
impl ::core::default::Default for CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR {
pub dwFieldID: u32,
pub cpft: CREDENTIAL_PROVIDER_FIELD_TYPE,
pub pszLabel: ::windows::core::PWSTR,
pub guidFieldType: ::windows::core::GUID,
}
impl ::core::marker::Copy for CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR {}
impl ::core::clone::Clone for CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR").field("dwFieldID", &self.dwFieldID).field("cpft", &self.cpft).field("pszLabel", &self.pszLabel).field("guidFieldType", &self.guidFieldType).finish()
}
}
unsafe impl ::windows::core::Abi for CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR {
type Abi = Self;
}
impl ::core::cmp::PartialEq for CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR {
fn eq(&self, other: &Self) -> bool {
self.dwFieldID == other.dwFieldID && self.cpft == other.cpft && self.pszLabel == other.pszLabel && self.guidFieldType == other.guidFieldType
}
}
impl ::core::cmp::Eq for CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR {}
impl ::core::default::Default for CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
pub struct CSFV {
pub cbSize: u32,
pub pshf: ::windows::core::ManuallyDrop<IShellFolder>,
pub psvOuter: ::windows::core::ManuallyDrop<IShellView>,
pub pidl: *mut Common::ITEMIDLIST,
pub lEvents: i32,
pub pfnCallback: LPFNVIEWCALLBACK,
pub fvm: FOLDERVIEWMODE,
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
impl ::core::clone::Clone for CSFV {
fn clone(&self) -> Self {
unsafe { ::core::mem::transmute_copy(self) }
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
impl ::core::fmt::Debug for CSFV {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("CSFV").field("cbSize", &self.cbSize).field("pshf", &self.pshf).field("psvOuter", &self.psvOuter).field("pidl", &self.pidl).field("lEvents", &self.lEvents).field("fvm", &self.fvm).finish()
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
unsafe impl ::windows::core::Abi for CSFV {
type Abi = Self;
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_Common"))]
impl ::core::default::Default for CSFV {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct DATABLOCK_HEADER {
pub cbSize: u32,
pub dwSignature: u32,
}
impl ::core::marker::Copy for DATABLOCK_HEADER {}
impl ::core::clone::Clone for DATABLOCK_HEADER {
fn clone(&self) -> Self {
*self
}
}
unsafe impl ::windows::core::Abi for DATABLOCK_HEADER {
type Abi = Self;
}
impl ::core::default::Default for DATABLOCK_HEADER {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry", feature = "Win32_UI_Shell_Common"))]
pub struct DEFCONTEXTMENU {
pub hwnd: super::super::Foundation::HWND,
pub pcmcb: ::windows::core::ManuallyDrop<IContextMenuCB>,
pub pidlFolder: *mut Common::ITEMIDLIST,
pub psf: ::windows::core::ManuallyDrop<IShellFolder>,
pub cidl: u32,
pub apidl: *mut *mut Common::ITEMIDLIST,
pub punkAssociationInfo: ::windows::core::ManuallyDrop<::windows::core::IUnknown>,
pub cKeys: u32,
pub aKeys: *const super::super::System::Registry::HKEY,
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry", feature = "Win32_UI_Shell_Common"))]
impl ::core::clone::Clone for DEFCONTEXTMENU {
fn clone(&self) -> Self {
unsafe { ::core::mem::transmute_copy(self) }
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry", feature = "Win32_UI_Shell_Common"))]
impl ::core::fmt::Debug for DEFCONTEXTMENU {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("DEFCONTEXTMENU").field("hwnd", &self.hwnd).field("pcmcb", &self.pcmcb).field("pidlFolder", &self.pidlFolder).field("psf", &self.psf).field("cidl", &self.cidl).field("apidl", &self.apidl).field("punkAssociationInfo", &self.punkAssociationInfo).field("cKeys", &self.cKeys).field("aKeys", &self.aKeys).finish()
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry", feature = "Win32_UI_Shell_Common"))]
unsafe impl ::windows::core::Abi for DEFCONTEXTMENU {
type Abi = Self;
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry", feature = "Win32_UI_Shell_Common"))]
impl ::core::cmp::PartialEq for DEFCONTEXTMENU {
fn eq(&self, other: &Self) -> bool {
self.hwnd == other.hwnd && self.pcmcb == other.pcmcb && self.pidlFolder == other.pidlFolder && self.psf == other.psf && self.cidl == other.cidl && self.apidl == other.apidl && self.punkAssociationInfo == other.punkAssociationInfo && self.cKeys == other.cKeys && self.aKeys == other.aKeys
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry", feature = "Win32_UI_Shell_Common"))]
impl ::core::cmp::Eq for DEFCONTEXTMENU {}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry", feature = "Win32_UI_Shell_Common"))]
impl ::core::default::Default for DEFCONTEXTMENU {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct DELEGATEITEMID {
pub cbSize: u16,
pub wOuter: u16,
pub cbInner: u16,
pub rgb: [u8; 1],
}
impl ::core::marker::Copy for DELEGATEITEMID {}
impl ::core::clone::Clone for DELEGATEITEMID {
fn clone(&self) -> Self {
*self
}
}
unsafe impl ::windows::core::Abi for DELEGATEITEMID {
type Abi = Self;
}
impl ::core::default::Default for DELEGATEITEMID {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct DESKBANDINFO {
pub dwMask: u32,
pub ptMinSize: super::super::Foundation::POINTL,
pub ptMaxSize: super::super::Foundation::POINTL,
pub ptIntegral: super::super::Foundation::POINTL,
pub ptActual: super::super::Foundation::POINTL,
pub wszTitle: [u16; 256],
pub dwModeFlags: u32,
pub crBkgnd: super::super::Foundation::COLORREF,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for DESKBANDINFO {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for DESKBANDINFO {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::fmt::Debug for DESKBANDINFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("DESKBANDINFO").field("dwMask", &self.dwMask).field("ptMinSize", &self.ptMinSize).field("ptMaxSize", &self.ptMaxSize).field("ptIntegral", &self.ptIntegral).field("ptActual", &self.ptActual).field("wszTitle", &self.wszTitle).field("dwModeFlags", &self.dwModeFlags).field("crBkgnd", &self.crBkgnd).finish()
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for DESKBANDINFO {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::PartialEq for DESKBANDINFO {
fn eq(&self, other: &Self) -> bool {
self.dwMask == other.dwMask && self.ptMinSize == other.ptMinSize && self.ptMaxSize == other.ptMaxSize && self.ptIntegral == other.ptIntegral && self.ptActual == other.ptActual && self.wszTitle == other.wszTitle && self.dwModeFlags == other.dwModeFlags && self.crBkgnd == other.crBkgnd
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::Eq for DESKBANDINFO {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for DESKBANDINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub struct DETAILSINFO {
pub pidl: *mut Common::ITEMIDLIST,
pub fmt: i32,
pub cxChar: i32,
pub str: Common::STRRET,
pub iImage: i32,
}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::marker::Copy for DETAILSINFO {}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::clone::Clone for DETAILSINFO {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_UI_Shell_Common")]
unsafe impl ::windows::core::Abi for DETAILSINFO {
type Abi = Self;
}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::default::Default for DETAILSINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct DFMICS {
pub cbSize: u32,
pub fMask: u32,
pub lParam: super::super::Foundation::LPARAM,
pub idCmdFirst: u32,
pub idDefMax: u32,
pub pici: *mut CMINVOKECOMMANDINFO,
pub punkSite: ::windows::core::ManuallyDrop<::windows::core::IUnknown>,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for DFMICS {
fn clone(&self) -> Self {
unsafe { ::core::mem::transmute_copy(self) }
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::fmt::Debug for DFMICS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("DFMICS").field("cbSize", &self.cbSize).field("fMask", &self.fMask).field("lParam", &self.lParam).field("idCmdFirst", &self.idCmdFirst).field("idDefMax", &self.idDefMax).field("pici", &self.pici).field("punkSite", &self.punkSite).finish()
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for DFMICS {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::PartialEq for DFMICS {
fn eq(&self, other: &Self) -> bool {
self.cbSize == other.cbSize && self.fMask == other.fMask && self.lParam == other.lParam && self.idCmdFirst == other.idCmdFirst && self.idDefMax == other.idDefMax && self.pici == other.pici && self.punkSite == other.punkSite
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::Eq for DFMICS {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for DFMICS {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct DLLVERSIONINFO {
pub cbSize: u32,
pub dwMajorVersion: u32,
pub dwMinorVersion: u32,
pub dwBuildNumber: u32,
pub dwPlatformID: u32,
}
impl ::core::marker::Copy for DLLVERSIONINFO {}
impl ::core::clone::Clone for DLLVERSIONINFO {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for DLLVERSIONINFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("DLLVERSIONINFO").field("cbSize", &self.cbSize).field("dwMajorVersion", &self.dwMajorVersion).field("dwMinorVersion", &self.dwMinorVersion).field("dwBuildNumber", &self.dwBuildNumber).field("dwPlatformID", &self.dwPlatformID).finish()
}
}
unsafe impl ::windows::core::Abi for DLLVERSIONINFO {
type Abi = Self;
}
impl ::core::cmp::PartialEq for DLLVERSIONINFO {
fn eq(&self, other: &Self) -> bool {
self.cbSize == other.cbSize && self.dwMajorVersion == other.dwMajorVersion && self.dwMinorVersion == other.dwMinorVersion && self.dwBuildNumber == other.dwBuildNumber && self.dwPlatformID == other.dwPlatformID
}
}
impl ::core::cmp::Eq for DLLVERSIONINFO {}
impl ::core::default::Default for DLLVERSIONINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct DLLVERSIONINFO2 {
pub info1: DLLVERSIONINFO,
pub dwFlags: u32,
pub ullVersion: u64,
}
impl ::core::marker::Copy for DLLVERSIONINFO2 {}
impl ::core::clone::Clone for DLLVERSIONINFO2 {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for DLLVERSIONINFO2 {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("DLLVERSIONINFO2").field("info1", &self.info1).field("dwFlags", &self.dwFlags).field("ullVersion", &self.ullVersion).finish()
}
}
unsafe impl ::windows::core::Abi for DLLVERSIONINFO2 {
type Abi = Self;
}
impl ::core::cmp::PartialEq for DLLVERSIONINFO2 {
fn eq(&self, other: &Self) -> bool {
self.info1 == other.info1 && self.dwFlags == other.dwFlags && self.ullVersion == other.ullVersion
}
}
impl ::core::cmp::Eq for DLLVERSIONINFO2 {}
impl ::core::default::Default for DLLVERSIONINFO2 {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
pub struct DRAGINFOA {
pub uSize: u32,
pub pt: super::super::Foundation::POINT,
pub fNC: super::super::Foundation::BOOL,
pub lpFileList: ::windows::core::PSTR,
pub grfKeyState: u32,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for DRAGINFOA {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for DRAGINFOA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for DRAGINFOA {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for DRAGINFOA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
pub struct DRAGINFOA {
pub uSize: u32,
pub pt: super::super::Foundation::POINT,
pub fNC: super::super::Foundation::BOOL,
pub lpFileList: ::windows::core::PSTR,
pub grfKeyState: u32,
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for DRAGINFOA {}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for DRAGINFOA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for DRAGINFOA {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for DRAGINFOA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
pub struct DRAGINFOW {
pub uSize: u32,
pub pt: super::super::Foundation::POINT,
pub fNC: super::super::Foundation::BOOL,
pub lpFileList: ::windows::core::PWSTR,
pub grfKeyState: u32,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for DRAGINFOW {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for DRAGINFOW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for DRAGINFOW {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for DRAGINFOW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
pub struct DRAGINFOW {
pub uSize: u32,
pub pt: super::super::Foundation::POINT,
pub fNC: super::super::Foundation::BOOL,
pub lpFileList: ::windows::core::PWSTR,
pub grfKeyState: u32,
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for DRAGINFOW {}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for DRAGINFOW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for DRAGINFOW {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for DRAGINFOW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct DROPDESCRIPTION {
pub r#type: DROPIMAGETYPE,
pub szMessage: [u16; 260],
pub szInsert: [u16; 260],
}
impl ::core::marker::Copy for DROPDESCRIPTION {}
impl ::core::clone::Clone for DROPDESCRIPTION {
fn clone(&self) -> Self {
*self
}
}
unsafe impl ::windows::core::Abi for DROPDESCRIPTION {
type Abi = Self;
}
impl ::core::default::Default for DROPDESCRIPTION {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct DROPFILES {
pub pFiles: u32,
pub pt: super::super::Foundation::POINT,
pub fNC: super::super::Foundation::BOOL,
pub fWide: super::super::Foundation::BOOL,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for DROPFILES {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for DROPFILES {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for DROPFILES {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for DROPFILES {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct EXP_DARWIN_LINK {
pub dbh: DATABLOCK_HEADER,
pub szDarwinID: [super::super::Foundation::CHAR; 260],
pub szwDarwinID: [u16; 260],
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for EXP_DARWIN_LINK {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for EXP_DARWIN_LINK {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for EXP_DARWIN_LINK {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for EXP_DARWIN_LINK {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct EXP_PROPERTYSTORAGE {
pub cbSize: u32,
pub dwSignature: u32,
pub abPropertyStorage: [u8; 1],
}
impl ::core::marker::Copy for EXP_PROPERTYSTORAGE {}
impl ::core::clone::Clone for EXP_PROPERTYSTORAGE {
fn clone(&self) -> Self {
*self
}
}
unsafe impl ::windows::core::Abi for EXP_PROPERTYSTORAGE {
type Abi = Self;
}
impl ::core::default::Default for EXP_PROPERTYSTORAGE {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct EXP_SPECIAL_FOLDER {
pub cbSize: u32,
pub dwSignature: u32,
pub idSpecialFolder: u32,
pub cbOffset: u32,
}
impl ::core::marker::Copy for EXP_SPECIAL_FOLDER {}
impl ::core::clone::Clone for EXP_SPECIAL_FOLDER {
fn clone(&self) -> Self {
*self
}
}
unsafe impl ::windows::core::Abi for EXP_SPECIAL_FOLDER {
type Abi = Self;
}
impl ::core::default::Default for EXP_SPECIAL_FOLDER {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct EXP_SZ_LINK {
pub cbSize: u32,
pub dwSignature: u32,
pub szTarget: [super::super::Foundation::CHAR; 260],
pub swzTarget: [u16; 260],
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for EXP_SZ_LINK {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for EXP_SZ_LINK {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for EXP_SZ_LINK {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for EXP_SZ_LINK {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct EXTRASEARCH {
pub guidSearch: ::windows::core::GUID,
pub wszFriendlyName: [u16; 80],
pub wszUrl: [u16; 2084],
}
impl ::core::marker::Copy for EXTRASEARCH {}
impl ::core::clone::Clone for EXTRASEARCH {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for EXTRASEARCH {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("EXTRASEARCH").field("guidSearch", &self.guidSearch).field("wszFriendlyName", &self.wszFriendlyName).field("wszUrl", &self.wszUrl).finish()
}
}
unsafe impl ::windows::core::Abi for EXTRASEARCH {
type Abi = Self;
}
impl ::core::cmp::PartialEq for EXTRASEARCH {
fn eq(&self, other: &Self) -> bool {
self.guidSearch == other.guidSearch && self.wszFriendlyName == other.wszFriendlyName && self.wszUrl == other.wszUrl
}
}
impl ::core::cmp::Eq for EXTRASEARCH {}
impl ::core::default::Default for EXTRASEARCH {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct FILEDESCRIPTORA {
pub dwFlags: u32,
pub clsid: ::windows::core::GUID,
pub sizel: super::super::Foundation::SIZE,
pub pointl: super::super::Foundation::POINTL,
pub dwFileAttributes: u32,
pub ftCreationTime: super::super::Foundation::FILETIME,
pub ftLastAccessTime: super::super::Foundation::FILETIME,
pub ftLastWriteTime: super::super::Foundation::FILETIME,
pub nFileSizeHigh: u32,
pub nFileSizeLow: u32,
pub cFileName: [super::super::Foundation::CHAR; 260],
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for FILEDESCRIPTORA {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for FILEDESCRIPTORA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for FILEDESCRIPTORA {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for FILEDESCRIPTORA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct FILEDESCRIPTORW {
pub dwFlags: u32,
pub clsid: ::windows::core::GUID,
pub sizel: super::super::Foundation::SIZE,
pub pointl: super::super::Foundation::POINTL,
pub dwFileAttributes: u32,
pub ftCreationTime: super::super::Foundation::FILETIME,
pub ftLastAccessTime: super::super::Foundation::FILETIME,
pub ftLastWriteTime: super::super::Foundation::FILETIME,
pub nFileSizeHigh: u32,
pub nFileSizeLow: u32,
pub cFileName: [u16; 260],
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for FILEDESCRIPTORW {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for FILEDESCRIPTORW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for FILEDESCRIPTORW {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for FILEDESCRIPTORW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct FILEGROUPDESCRIPTORA {
pub cItems: u32,
pub fgd: [FILEDESCRIPTORA; 1],
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for FILEGROUPDESCRIPTORA {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for FILEGROUPDESCRIPTORA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for FILEGROUPDESCRIPTORA {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for FILEGROUPDESCRIPTORA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct FILEGROUPDESCRIPTORW {
pub cItems: u32,
pub fgd: [FILEDESCRIPTORW; 1],
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for FILEGROUPDESCRIPTORW {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for FILEGROUPDESCRIPTORW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for FILEGROUPDESCRIPTORW {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for FILEGROUPDESCRIPTORW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct FILE_ATTRIBUTES_ARRAY {
pub cItems: u32,
pub dwSumFileAttributes: u32,
pub dwProductFileAttributes: u32,
pub rgdwFileAttributes: [u32; 1],
}
impl ::core::marker::Copy for FILE_ATTRIBUTES_ARRAY {}
impl ::core::clone::Clone for FILE_ATTRIBUTES_ARRAY {
fn clone(&self) -> Self {
*self
}
}
unsafe impl ::windows::core::Abi for FILE_ATTRIBUTES_ARRAY {
type Abi = Self;
}
impl ::core::default::Default for FILE_ATTRIBUTES_ARRAY {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct FOLDERSETDATA {
pub _fs: FOLDERSETTINGS,
pub _vidRestore: ::windows::core::GUID,
pub _dwViewPriority: u32,
}
impl ::core::marker::Copy for FOLDERSETDATA {}
impl ::core::clone::Clone for FOLDERSETDATA {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for FOLDERSETDATA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("FOLDERSETDATA").field("_fs", &self._fs).field("_vidRestore", &self._vidRestore).field("_dwViewPriority", &self._dwViewPriority).finish()
}
}
unsafe impl ::windows::core::Abi for FOLDERSETDATA {
type Abi = Self;
}
impl ::core::cmp::PartialEq for FOLDERSETDATA {
fn eq(&self, other: &Self) -> bool {
self._fs == other._fs && self._vidRestore == other._vidRestore && self._dwViewPriority == other._dwViewPriority
}
}
impl ::core::cmp::Eq for FOLDERSETDATA {}
impl ::core::default::Default for FOLDERSETDATA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct FOLDERSETTINGS {
pub ViewMode: u32,
pub fFlags: u32,
}
impl ::core::marker::Copy for FOLDERSETTINGS {}
impl ::core::clone::Clone for FOLDERSETTINGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for FOLDERSETTINGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("FOLDERSETTINGS").field("ViewMode", &self.ViewMode).field("fFlags", &self.fFlags).finish()
}
}
unsafe impl ::windows::core::Abi for FOLDERSETTINGS {
type Abi = Self;
}
impl ::core::cmp::PartialEq for FOLDERSETTINGS {
fn eq(&self, other: &Self) -> bool {
self.ViewMode == other.ViewMode && self.fFlags == other.fFlags
}
}
impl ::core::cmp::Eq for FOLDERSETTINGS {}
impl ::core::default::Default for FOLDERSETTINGS {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct HDROP(pub isize);
impl HDROP {
pub fn is_invalid(&self) -> bool {
self.0 == -1 || self.0 == 0
}
}
impl ::core::default::Default for HDROP {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
impl ::core::clone::Clone for HDROP {
fn clone(&self) -> Self {
*self
}
}
impl ::core::marker::Copy for HDROP {}
impl ::core::fmt::Debug for HDROP {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("HDROP").field(&self.0).finish()
}
}
impl ::core::convert::From<::core::option::Option<HDROP>> for HDROP {
fn from(optional: ::core::option::Option<HDROP>) -> HDROP {
optional.unwrap_or_default()
}
}
unsafe impl ::windows::core::Abi for HDROP {
type Abi = Self;
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct HELPINFO {
pub cbSize: u32,
pub iContextType: HELP_INFO_TYPE,
pub iCtrlId: i32,
pub hItemHandle: super::super::Foundation::HANDLE,
pub dwContextId: usize,
pub MousePos: super::super::Foundation::POINT,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for HELPINFO {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for HELPINFO {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::fmt::Debug for HELPINFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("HELPINFO").field("cbSize", &self.cbSize).field("iContextType", &self.iContextType).field("iCtrlId", &self.iCtrlId).field("hItemHandle", &self.hItemHandle).field("dwContextId", &self.dwContextId).field("MousePos", &self.MousePos).finish()
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for HELPINFO {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::PartialEq for HELPINFO {
fn eq(&self, other: &Self) -> bool {
self.cbSize == other.cbSize && self.iContextType == other.iContextType && self.iCtrlId == other.iCtrlId && self.hItemHandle == other.hItemHandle && self.dwContextId == other.dwContextId && self.MousePos == other.MousePos
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::Eq for HELPINFO {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for HELPINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct HELPWININFOA {
pub wStructSize: i32,
pub x: i32,
pub y: i32,
pub dx: i32,
pub dy: i32,
pub wMax: i32,
pub rgchMember: [super::super::Foundation::CHAR; 2],
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for HELPWININFOA {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for HELPWININFOA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::fmt::Debug for HELPWININFOA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("HELPWININFOA").field("wStructSize", &self.wStructSize).field("x", &self.x).field("y", &self.y).field("dx", &self.dx).field("dy", &self.dy).field("wMax", &self.wMax).field("rgchMember", &self.rgchMember).finish()
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for HELPWININFOA {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::PartialEq for HELPWININFOA {
fn eq(&self, other: &Self) -> bool {
self.wStructSize == other.wStructSize && self.x == other.x && self.y == other.y && self.dx == other.dx && self.dy == other.dy && self.wMax == other.wMax && self.rgchMember == other.rgchMember
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::Eq for HELPWININFOA {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for HELPWININFOA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct HELPWININFOW {
pub wStructSize: i32,
pub x: i32,
pub y: i32,
pub dx: i32,
pub dy: i32,
pub wMax: i32,
pub rgchMember: [u16; 2],
}
impl ::core::marker::Copy for HELPWININFOW {}
impl ::core::clone::Clone for HELPWININFOW {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for HELPWININFOW {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("HELPWININFOW").field("wStructSize", &self.wStructSize).field("x", &self.x).field("y", &self.y).field("dx", &self.dx).field("dy", &self.dy).field("wMax", &self.wMax).field("rgchMember", &self.rgchMember).finish()
}
}
unsafe impl ::windows::core::Abi for HELPWININFOW {
type Abi = Self;
}
impl ::core::cmp::PartialEq for HELPWININFOW {
fn eq(&self, other: &Self) -> bool {
self.wStructSize == other.wStructSize && self.x == other.x && self.y == other.y && self.dx == other.dx && self.dy == other.dy && self.wMax == other.wMax && self.rgchMember == other.rgchMember
}
}
impl ::core::cmp::Eq for HELPWININFOW {}
impl ::core::default::Default for HELPWININFOW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct HLBWINFO {
pub cbSize: u32,
pub grfHLBWIF: u32,
pub rcFramePos: super::super::Foundation::RECT,
pub rcDocPos: super::super::Foundation::RECT,
pub hltbinfo: HLTBINFO,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for HLBWINFO {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for HLBWINFO {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::fmt::Debug for HLBWINFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("HLBWINFO").field("cbSize", &self.cbSize).field("grfHLBWIF", &self.grfHLBWIF).field("rcFramePos", &self.rcFramePos).field("rcDocPos", &self.rcDocPos).field("hltbinfo", &self.hltbinfo).finish()
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for HLBWINFO {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::PartialEq for HLBWINFO {
fn eq(&self, other: &Self) -> bool {
self.cbSize == other.cbSize && self.grfHLBWIF == other.grfHLBWIF && self.rcFramePos == other.rcFramePos && self.rcDocPos == other.rcDocPos && self.hltbinfo == other.hltbinfo
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::Eq for HLBWINFO {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for HLBWINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct HLITEM {
pub uHLID: u32,
pub pwzFriendlyName: ::windows::core::PWSTR,
}
impl ::core::marker::Copy for HLITEM {}
impl ::core::clone::Clone for HLITEM {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for HLITEM {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("HLITEM").field("uHLID", &self.uHLID).field("pwzFriendlyName", &self.pwzFriendlyName).finish()
}
}
unsafe impl ::windows::core::Abi for HLITEM {
type Abi = Self;
}
impl ::core::cmp::PartialEq for HLITEM {
fn eq(&self, other: &Self) -> bool {
self.uHLID == other.uHLID && self.pwzFriendlyName == other.pwzFriendlyName
}
}
impl ::core::cmp::Eq for HLITEM {}
impl ::core::default::Default for HLITEM {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct HLTBINFO {
pub uDockType: u32,
pub rcTbPos: super::super::Foundation::RECT,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for HLTBINFO {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for HLTBINFO {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::fmt::Debug for HLTBINFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("HLTBINFO").field("uDockType", &self.uDockType).field("rcTbPos", &self.rcTbPos).finish()
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for HLTBINFO {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::PartialEq for HLTBINFO {
fn eq(&self, other: &Self) -> bool {
self.uDockType == other.uDockType && self.rcTbPos == other.rcTbPos
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::Eq for HLTBINFO {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for HLTBINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct HPSXA(pub isize);
impl HPSXA {
pub fn is_invalid(&self) -> bool {
self.0 == -1 || self.0 == 0
}
}
impl ::core::default::Default for HPSXA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
impl ::core::clone::Clone for HPSXA {
fn clone(&self) -> Self {
*self
}
}
impl ::core::marker::Copy for HPSXA {}
impl ::core::fmt::Debug for HPSXA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("HPSXA").field(&self.0).finish()
}
}
impl ::core::convert::From<::core::option::Option<HPSXA>> for HPSXA {
fn from(optional: ::core::option::Option<HPSXA>) -> HPSXA {
optional.unwrap_or_default()
}
}
unsafe impl ::windows::core::Abi for HPSXA {
type Abi = Self;
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct ITEMSPACING {
pub cxSmall: i32,
pub cySmall: i32,
pub cxLarge: i32,
pub cyLarge: i32,
}
impl ::core::marker::Copy for ITEMSPACING {}
impl ::core::clone::Clone for ITEMSPACING {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for ITEMSPACING {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("ITEMSPACING").field("cxSmall", &self.cxSmall).field("cySmall", &self.cySmall).field("cxLarge", &self.cxLarge).field("cyLarge", &self.cyLarge).finish()
}
}
unsafe impl ::windows::core::Abi for ITEMSPACING {
type Abi = Self;
}
impl ::core::cmp::PartialEq for ITEMSPACING {
fn eq(&self, other: &Self) -> bool {
self.cxSmall == other.cxSmall && self.cySmall == other.cySmall && self.cxLarge == other.cxLarge && self.cyLarge == other.cyLarge
}
}
impl ::core::cmp::Eq for ITEMSPACING {}
impl ::core::default::Default for ITEMSPACING {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct KNOWNFOLDER_DEFINITION {
pub category: KF_CATEGORY,
pub pszName: ::windows::core::PWSTR,
pub pszDescription: ::windows::core::PWSTR,
pub fidParent: ::windows::core::GUID,
pub pszRelativePath: ::windows::core::PWSTR,
pub pszParsingName: ::windows::core::PWSTR,
pub pszTooltip: ::windows::core::PWSTR,
pub pszLocalizedName: ::windows::core::PWSTR,
pub pszIcon: ::windows::core::PWSTR,
pub pszSecurity: ::windows::core::PWSTR,
pub dwAttributes: u32,
pub kfdFlags: u32,
pub ftidType: ::windows::core::GUID,
}
impl ::core::marker::Copy for KNOWNFOLDER_DEFINITION {}
impl ::core::clone::Clone for KNOWNFOLDER_DEFINITION {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for KNOWNFOLDER_DEFINITION {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("KNOWNFOLDER_DEFINITION")
.field("category", &self.category)
.field("pszName", &self.pszName)
.field("pszDescription", &self.pszDescription)
.field("fidParent", &self.fidParent)
.field("pszRelativePath", &self.pszRelativePath)
.field("pszParsingName", &self.pszParsingName)
.field("pszTooltip", &self.pszTooltip)
.field("pszLocalizedName", &self.pszLocalizedName)
.field("pszIcon", &self.pszIcon)
.field("pszSecurity", &self.pszSecurity)
.field("dwAttributes", &self.dwAttributes)
.field("kfdFlags", &self.kfdFlags)
.field("ftidType", &self.ftidType)
.finish()
}
}
unsafe impl ::windows::core::Abi for KNOWNFOLDER_DEFINITION {
type Abi = Self;
}
impl ::core::cmp::PartialEq for KNOWNFOLDER_DEFINITION {
fn eq(&self, other: &Self) -> bool {
self.category == other.category && self.pszName == other.pszName && self.pszDescription == other.pszDescription && self.fidParent == other.fidParent && self.pszRelativePath == other.pszRelativePath && self.pszParsingName == other.pszParsingName && self.pszTooltip == other.pszTooltip && self.pszLocalizedName == other.pszLocalizedName && self.pszIcon == other.pszIcon && self.pszSecurity == other.pszSecurity && self.dwAttributes == other.dwAttributes && self.kfdFlags == other.kfdFlags && self.ftidType == other.ftidType
}
}
impl ::core::cmp::Eq for KNOWNFOLDER_DEFINITION {}
impl ::core::default::Default for KNOWNFOLDER_DEFINITION {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct MULTIKEYHELPA {
pub mkSize: u32,
pub mkKeylist: super::super::Foundation::CHAR,
pub szKeyphrase: [super::super::Foundation::CHAR; 1],
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for MULTIKEYHELPA {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for MULTIKEYHELPA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::fmt::Debug for MULTIKEYHELPA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("MULTIKEYHELPA").field("mkSize", &self.mkSize).field("mkKeylist", &self.mkKeylist).field("szKeyphrase", &self.szKeyphrase).finish()
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for MULTIKEYHELPA {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::PartialEq for MULTIKEYHELPA {
fn eq(&self, other: &Self) -> bool {
self.mkSize == other.mkSize && self.mkKeylist == other.mkKeylist && self.szKeyphrase == other.szKeyphrase
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::Eq for MULTIKEYHELPA {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for MULTIKEYHELPA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct MULTIKEYHELPW {
pub mkSize: u32,
pub mkKeylist: u16,
pub szKeyphrase: [u16; 1],
}
impl ::core::marker::Copy for MULTIKEYHELPW {}
impl ::core::clone::Clone for MULTIKEYHELPW {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for MULTIKEYHELPW {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("MULTIKEYHELPW").field("mkSize", &self.mkSize).field("mkKeylist", &self.mkKeylist).field("szKeyphrase", &self.szKeyphrase).finish()
}
}
unsafe impl ::windows::core::Abi for MULTIKEYHELPW {
type Abi = Self;
}
impl ::core::cmp::PartialEq for MULTIKEYHELPW {
fn eq(&self, other: &Self) -> bool {
self.mkSize == other.mkSize && self.mkKeylist == other.mkKeylist && self.szKeyphrase == other.szKeyphrase
}
}
impl ::core::cmp::Eq for MULTIKEYHELPW {}
impl ::core::default::Default for MULTIKEYHELPW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct NC_ADDRESS {
pub pAddrInfo: *mut NC_ADDRESS_0,
pub PortNumber: u16,
pub PrefixLength: u8,
}
impl ::core::marker::Copy for NC_ADDRESS {}
impl ::core::clone::Clone for NC_ADDRESS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for NC_ADDRESS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("NC_ADDRESS").field("pAddrInfo", &self.pAddrInfo).field("PortNumber", &self.PortNumber).field("PrefixLength", &self.PrefixLength).finish()
}
}
unsafe impl ::windows::core::Abi for NC_ADDRESS {
type Abi = Self;
}
impl ::core::cmp::PartialEq for NC_ADDRESS {
fn eq(&self, other: &Self) -> bool {
self.pAddrInfo == other.pAddrInfo && self.PortNumber == other.PortNumber && self.PrefixLength == other.PrefixLength
}
}
impl ::core::cmp::Eq for NC_ADDRESS {}
impl ::core::default::Default for NC_ADDRESS {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
pub struct NC_ADDRESS_0(pub u8);
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub struct NEWCPLINFOA {
pub dwSize: u32,
pub dwFlags: u32,
pub dwHelpContext: u32,
pub lData: isize,
pub hIcon: super::WindowsAndMessaging::HICON,
pub szName: [super::super::Foundation::CHAR; 32],
pub szInfo: [super::super::Foundation::CHAR; 64],
pub szHelpFile: [super::super::Foundation::CHAR; 128],
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::marker::Copy for NEWCPLINFOA {}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::clone::Clone for NEWCPLINFOA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
unsafe impl ::windows::core::Abi for NEWCPLINFOA {
type Abi = Self;
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::default::Default for NEWCPLINFOA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub struct NEWCPLINFOW {
pub dwSize: u32,
pub dwFlags: u32,
pub dwHelpContext: u32,
pub lData: isize,
pub hIcon: super::WindowsAndMessaging::HICON,
pub szName: [u16; 32],
pub szInfo: [u16; 64],
pub szHelpFile: [u16; 128],
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::marker::Copy for NEWCPLINFOW {}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::clone::Clone for NEWCPLINFOW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
unsafe impl ::windows::core::Abi for NEWCPLINFOW {
type Abi = Self;
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::default::Default for NEWCPLINFOW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub struct NOTIFYICONDATAA {
pub cbSize: u32,
pub hWnd: super::super::Foundation::HWND,
pub uID: u32,
pub uFlags: NOTIFY_ICON_DATA_FLAGS,
pub uCallbackMessage: u32,
pub hIcon: super::WindowsAndMessaging::HICON,
pub szTip: [super::super::Foundation::CHAR; 128],
pub dwState: NOTIFY_ICON_STATE,
pub dwStateMask: u32,
pub szInfo: [super::super::Foundation::CHAR; 256],
pub Anonymous: NOTIFYICONDATAA_0,
pub szInfoTitle: [super::super::Foundation::CHAR; 64],
pub dwInfoFlags: NOTIFY_ICON_INFOTIP_FLAGS,
pub guidItem: ::windows::core::GUID,
pub hBalloonIcon: super::WindowsAndMessaging::HICON,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::marker::Copy for NOTIFYICONDATAA {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::clone::Clone for NOTIFYICONDATAA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
unsafe impl ::windows::core::Abi for NOTIFYICONDATAA {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::default::Default for NOTIFYICONDATAA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub union NOTIFYICONDATAA_0 {
pub uTimeout: u32,
pub uVersion: u32,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::marker::Copy for NOTIFYICONDATAA_0 {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::clone::Clone for NOTIFYICONDATAA_0 {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
unsafe impl ::windows::core::Abi for NOTIFYICONDATAA_0 {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::default::Default for NOTIFYICONDATAA_0 {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub struct NOTIFYICONDATAA {
pub cbSize: u32,
pub hWnd: super::super::Foundation::HWND,
pub uID: u32,
pub uFlags: NOTIFY_ICON_DATA_FLAGS,
pub uCallbackMessage: u32,
pub hIcon: super::WindowsAndMessaging::HICON,
pub szTip: [super::super::Foundation::CHAR; 128],
pub dwState: NOTIFY_ICON_STATE,
pub dwStateMask: u32,
pub szInfo: [super::super::Foundation::CHAR; 256],
pub Anonymous: NOTIFYICONDATAA_0,
pub szInfoTitle: [super::super::Foundation::CHAR; 64],
pub dwInfoFlags: NOTIFY_ICON_INFOTIP_FLAGS,
pub guidItem: ::windows::core::GUID,
pub hBalloonIcon: super::WindowsAndMessaging::HICON,
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::marker::Copy for NOTIFYICONDATAA {}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::clone::Clone for NOTIFYICONDATAA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
unsafe impl ::windows::core::Abi for NOTIFYICONDATAA {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::default::Default for NOTIFYICONDATAA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub union NOTIFYICONDATAA_0 {
pub uTimeout: u32,
pub uVersion: u32,
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::marker::Copy for NOTIFYICONDATAA_0 {}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::clone::Clone for NOTIFYICONDATAA_0 {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
unsafe impl ::windows::core::Abi for NOTIFYICONDATAA_0 {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::default::Default for NOTIFYICONDATAA_0 {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub struct NOTIFYICONDATAW {
pub cbSize: u32,
pub hWnd: super::super::Foundation::HWND,
pub uID: u32,
pub uFlags: NOTIFY_ICON_DATA_FLAGS,
pub uCallbackMessage: u32,
pub hIcon: super::WindowsAndMessaging::HICON,
pub szTip: [u16; 128],
pub dwState: NOTIFY_ICON_STATE,
pub dwStateMask: u32,
pub szInfo: [u16; 256],
pub Anonymous: NOTIFYICONDATAW_0,
pub szInfoTitle: [u16; 64],
pub dwInfoFlags: NOTIFY_ICON_INFOTIP_FLAGS,
pub guidItem: ::windows::core::GUID,
pub hBalloonIcon: super::WindowsAndMessaging::HICON,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::marker::Copy for NOTIFYICONDATAW {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::clone::Clone for NOTIFYICONDATAW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
unsafe impl ::windows::core::Abi for NOTIFYICONDATAW {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::default::Default for NOTIFYICONDATAW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub union NOTIFYICONDATAW_0 {
pub uTimeout: u32,
pub uVersion: u32,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::marker::Copy for NOTIFYICONDATAW_0 {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::clone::Clone for NOTIFYICONDATAW_0 {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
unsafe impl ::windows::core::Abi for NOTIFYICONDATAW_0 {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::default::Default for NOTIFYICONDATAW_0 {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub struct NOTIFYICONDATAW {
pub cbSize: u32,
pub hWnd: super::super::Foundation::HWND,
pub uID: u32,
pub uFlags: NOTIFY_ICON_DATA_FLAGS,
pub uCallbackMessage: u32,
pub hIcon: super::WindowsAndMessaging::HICON,
pub szTip: [u16; 128],
pub dwState: NOTIFY_ICON_STATE,
pub dwStateMask: u32,
pub szInfo: [u16; 256],
pub Anonymous: NOTIFYICONDATAW_0,
pub szInfoTitle: [u16; 64],
pub dwInfoFlags: NOTIFY_ICON_INFOTIP_FLAGS,
pub guidItem: ::windows::core::GUID,
pub hBalloonIcon: super::WindowsAndMessaging::HICON,
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::marker::Copy for NOTIFYICONDATAW {}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::clone::Clone for NOTIFYICONDATAW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
unsafe impl ::windows::core::Abi for NOTIFYICONDATAW {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::default::Default for NOTIFYICONDATAW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub union NOTIFYICONDATAW_0 {
pub uTimeout: u32,
pub uVersion: u32,
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::marker::Copy for NOTIFYICONDATAW_0 {}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::clone::Clone for NOTIFYICONDATAW_0 {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
unsafe impl ::windows::core::Abi for NOTIFYICONDATAW_0 {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::default::Default for NOTIFYICONDATAW_0 {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
pub struct NOTIFYICONIDENTIFIER {
pub cbSize: u32,
pub hWnd: super::super::Foundation::HWND,
pub uID: u32,
pub guidItem: ::windows::core::GUID,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for NOTIFYICONIDENTIFIER {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for NOTIFYICONIDENTIFIER {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for NOTIFYICONIDENTIFIER {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for NOTIFYICONIDENTIFIER {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
pub struct NOTIFYICONIDENTIFIER {
pub cbSize: u32,
pub hWnd: super::super::Foundation::HWND,
pub uID: u32,
pub guidItem: ::windows::core::GUID,
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for NOTIFYICONIDENTIFIER {}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for NOTIFYICONIDENTIFIER {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for NOTIFYICONIDENTIFIER {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for NOTIFYICONIDENTIFIER {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_NetworkManagement_WNet\"`*"]
#[cfg(feature = "Win32_NetworkManagement_WNet")]
pub struct NRESARRAY {
pub cItems: u32,
pub nr: [super::super::NetworkManagement::WNet::NETRESOURCEA; 1],
}
#[cfg(feature = "Win32_NetworkManagement_WNet")]
impl ::core::marker::Copy for NRESARRAY {}
#[cfg(feature = "Win32_NetworkManagement_WNet")]
impl ::core::clone::Clone for NRESARRAY {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_NetworkManagement_WNet")]
impl ::core::fmt::Debug for NRESARRAY {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("NRESARRAY").field("cItems", &self.cItems).field("nr", &self.nr).finish()
}
}
#[cfg(feature = "Win32_NetworkManagement_WNet")]
unsafe impl ::windows::core::Abi for NRESARRAY {
type Abi = Self;
}
#[cfg(feature = "Win32_NetworkManagement_WNet")]
impl ::core::cmp::PartialEq for NRESARRAY {
fn eq(&self, other: &Self) -> bool {
self.cItems == other.cItems && self.nr == other.nr
}
}
#[cfg(feature = "Win32_NetworkManagement_WNet")]
impl ::core::cmp::Eq for NRESARRAY {}
#[cfg(feature = "Win32_NetworkManagement_WNet")]
impl ::core::default::Default for NRESARRAY {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Controls\"`*"]
#[cfg(feature = "Win32_UI_Controls")]
pub struct NSTCCUSTOMDRAW {
pub psi: ::windows::core::ManuallyDrop<IShellItem>,
pub uItemState: u32,
pub nstcis: u32,
pub pszText: ::windows::core::PCWSTR,
pub iImage: i32,
pub himl: super::Controls::HIMAGELIST,
pub iLevel: i32,
pub iIndent: i32,
}
#[cfg(feature = "Win32_UI_Controls")]
impl ::core::clone::Clone for NSTCCUSTOMDRAW {
fn clone(&self) -> Self {
unsafe { ::core::mem::transmute_copy(self) }
}
}
#[cfg(feature = "Win32_UI_Controls")]
impl ::core::fmt::Debug for NSTCCUSTOMDRAW {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("NSTCCUSTOMDRAW").field("psi", &self.psi).field("uItemState", &self.uItemState).field("nstcis", &self.nstcis).field("pszText", &self.pszText).field("iImage", &self.iImage).field("himl", &self.himl).field("iLevel", &self.iLevel).field("iIndent", &self.iIndent).finish()
}
}
#[cfg(feature = "Win32_UI_Controls")]
unsafe impl ::windows::core::Abi for NSTCCUSTOMDRAW {
type Abi = Self;
}
#[cfg(feature = "Win32_UI_Controls")]
impl ::core::cmp::PartialEq for NSTCCUSTOMDRAW {
fn eq(&self, other: &Self) -> bool {
self.psi == other.psi && self.uItemState == other.uItemState && self.nstcis == other.nstcis && self.pszText == other.pszText && self.iImage == other.iImage && self.himl == other.himl && self.iLevel == other.iLevel && self.iIndent == other.iIndent
}
}
#[cfg(feature = "Win32_UI_Controls")]
impl ::core::cmp::Eq for NSTCCUSTOMDRAW {}
#[cfg(feature = "Win32_UI_Controls")]
impl ::core::default::Default for NSTCCUSTOMDRAW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Console\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Console"))]
pub struct NT_CONSOLE_PROPS {
pub dbh: DATABLOCK_HEADER,
pub wFillAttribute: u16,
pub wPopupFillAttribute: u16,
pub dwScreenBufferSize: super::super::System::Console::COORD,
pub dwWindowSize: super::super::System::Console::COORD,
pub dwWindowOrigin: super::super::System::Console::COORD,
pub nFont: u32,
pub nInputBufferSize: u32,
pub dwFontSize: super::super::System::Console::COORD,
pub uFontFamily: u32,
pub uFontWeight: u32,
pub FaceName: [u16; 32],
pub uCursorSize: u32,
pub bFullScreen: super::super::Foundation::BOOL,
pub bQuickEdit: super::super::Foundation::BOOL,
pub bInsertMode: super::super::Foundation::BOOL,
pub bAutoPosition: super::super::Foundation::BOOL,
pub uHistoryBufferSize: u32,
pub uNumberOfHistoryBuffers: u32,
pub bHistoryNoDup: super::super::Foundation::BOOL,
pub ColorTable: [super::super::Foundation::COLORREF; 16],
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Console"))]
impl ::core::marker::Copy for NT_CONSOLE_PROPS {}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Console"))]
impl ::core::clone::Clone for NT_CONSOLE_PROPS {
fn clone(&self) -> Self {
*self
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Console"))]
unsafe impl ::windows::core::Abi for NT_CONSOLE_PROPS {
type Abi = Self;
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Console"))]
impl ::core::default::Default for NT_CONSOLE_PROPS {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct NT_FE_CONSOLE_PROPS {
pub dbh: DATABLOCK_HEADER,
pub uCodePage: u32,
}
impl ::core::marker::Copy for NT_FE_CONSOLE_PROPS {}
impl ::core::clone::Clone for NT_FE_CONSOLE_PROPS {
fn clone(&self) -> Self {
*self
}
}
unsafe impl ::windows::core::Abi for NT_FE_CONSOLE_PROPS {
type Abi = Self;
}
impl ::core::default::Default for NT_FE_CONSOLE_PROPS {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct OPENASINFO {
pub pcszFile: ::windows::core::PCWSTR,
pub pcszClass: ::windows::core::PCWSTR,
pub oaifInFlags: OPEN_AS_INFO_FLAGS,
}
impl ::core::marker::Copy for OPENASINFO {}
impl ::core::clone::Clone for OPENASINFO {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for OPENASINFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("OPENASINFO").field("pcszFile", &self.pcszFile).field("pcszClass", &self.pcszClass).field("oaifInFlags", &self.oaifInFlags).finish()
}
}
unsafe impl ::windows::core::Abi for OPENASINFO {
type Abi = Self;
}
impl ::core::cmp::PartialEq for OPENASINFO {
fn eq(&self, other: &Self) -> bool {
self.pcszFile == other.pcszFile && self.pcszClass == other.pcszClass && self.oaifInFlags == other.oaifInFlags
}
}
impl ::core::cmp::Eq for OPENASINFO {}
impl ::core::default::Default for OPENASINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
pub struct OPEN_PRINTER_PROPS_INFOA {
pub dwSize: u32,
pub pszSheetName: ::windows::core::PSTR,
pub uSheetIndex: u32,
pub dwFlags: u32,
pub bModal: super::super::Foundation::BOOL,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for OPEN_PRINTER_PROPS_INFOA {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for OPEN_PRINTER_PROPS_INFOA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for OPEN_PRINTER_PROPS_INFOA {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for OPEN_PRINTER_PROPS_INFOA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
pub struct OPEN_PRINTER_PROPS_INFOA {
pub dwSize: u32,
pub pszSheetName: ::windows::core::PSTR,
pub uSheetIndex: u32,
pub dwFlags: u32,
pub bModal: super::super::Foundation::BOOL,
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for OPEN_PRINTER_PROPS_INFOA {}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for OPEN_PRINTER_PROPS_INFOA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for OPEN_PRINTER_PROPS_INFOA {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for OPEN_PRINTER_PROPS_INFOA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
pub struct OPEN_PRINTER_PROPS_INFOW {
pub dwSize: u32,
pub pszSheetName: ::windows::core::PWSTR,
pub uSheetIndex: u32,
pub dwFlags: u32,
pub bModal: super::super::Foundation::BOOL,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for OPEN_PRINTER_PROPS_INFOW {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for OPEN_PRINTER_PROPS_INFOW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for OPEN_PRINTER_PROPS_INFOW {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for OPEN_PRINTER_PROPS_INFOW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
pub struct OPEN_PRINTER_PROPS_INFOW {
pub dwSize: u32,
pub pszSheetName: ::windows::core::PWSTR,
pub uSheetIndex: u32,
pub dwFlags: u32,
pub bModal: super::super::Foundation::BOOL,
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for OPEN_PRINTER_PROPS_INFOW {}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for OPEN_PRINTER_PROPS_INFOW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for OPEN_PRINTER_PROPS_INFOW {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for OPEN_PRINTER_PROPS_INFOW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct PARSEDURLA {
pub cbSize: u32,
pub pszProtocol: ::windows::core::PCSTR,
pub cchProtocol: u32,
pub pszSuffix: ::windows::core::PCSTR,
pub cchSuffix: u32,
pub nScheme: u32,
}
impl ::core::marker::Copy for PARSEDURLA {}
impl ::core::clone::Clone for PARSEDURLA {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for PARSEDURLA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("PARSEDURLA").field("cbSize", &self.cbSize).field("pszProtocol", &self.pszProtocol).field("cchProtocol", &self.cchProtocol).field("pszSuffix", &self.pszSuffix).field("cchSuffix", &self.cchSuffix).field("nScheme", &self.nScheme).finish()
}
}
unsafe impl ::windows::core::Abi for PARSEDURLA {
type Abi = Self;
}
impl ::core::cmp::PartialEq for PARSEDURLA {
fn eq(&self, other: &Self) -> bool {
self.cbSize == other.cbSize && self.pszProtocol == other.pszProtocol && self.cchProtocol == other.cchProtocol && self.pszSuffix == other.pszSuffix && self.cchSuffix == other.cchSuffix && self.nScheme == other.nScheme
}
}
impl ::core::cmp::Eq for PARSEDURLA {}
impl ::core::default::Default for PARSEDURLA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct PARSEDURLW {
pub cbSize: u32,
pub pszProtocol: ::windows::core::PCWSTR,
pub cchProtocol: u32,
pub pszSuffix: ::windows::core::PCWSTR,
pub cchSuffix: u32,
pub nScheme: u32,
}
impl ::core::marker::Copy for PARSEDURLW {}
impl ::core::clone::Clone for PARSEDURLW {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for PARSEDURLW {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("PARSEDURLW").field("cbSize", &self.cbSize).field("pszProtocol", &self.pszProtocol).field("cchProtocol", &self.cchProtocol).field("pszSuffix", &self.pszSuffix).field("cchSuffix", &self.cchSuffix).field("nScheme", &self.nScheme).finish()
}
}
unsafe impl ::windows::core::Abi for PARSEDURLW {
type Abi = Self;
}
impl ::core::cmp::PartialEq for PARSEDURLW {
fn eq(&self, other: &Self) -> bool {
self.cbSize == other.cbSize && self.pszProtocol == other.pszProtocol && self.cchProtocol == other.cchProtocol && self.pszSuffix == other.pszSuffix && self.cchSuffix == other.cchSuffix && self.nScheme == other.nScheme
}
}
impl ::core::cmp::Eq for PARSEDURLW {}
impl ::core::default::Default for PARSEDURLW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub struct PERSIST_FOLDER_TARGET_INFO {
pub pidlTargetFolder: *mut Common::ITEMIDLIST,
pub szTargetParsingName: [u16; 260],
pub szNetworkProvider: [u16; 260],
pub dwAttributes: u32,
pub csidl: i32,
}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::marker::Copy for PERSIST_FOLDER_TARGET_INFO {}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::clone::Clone for PERSIST_FOLDER_TARGET_INFO {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::fmt::Debug for PERSIST_FOLDER_TARGET_INFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("PERSIST_FOLDER_TARGET_INFO").field("pidlTargetFolder", &self.pidlTargetFolder).field("szTargetParsingName", &self.szTargetParsingName).field("szNetworkProvider", &self.szNetworkProvider).field("dwAttributes", &self.dwAttributes).field("csidl", &self.csidl).finish()
}
}
#[cfg(feature = "Win32_UI_Shell_Common")]
unsafe impl ::windows::core::Abi for PERSIST_FOLDER_TARGET_INFO {
type Abi = Self;
}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::cmp::PartialEq for PERSIST_FOLDER_TARGET_INFO {
fn eq(&self, other: &Self) -> bool {
self.pidlTargetFolder == other.pidlTargetFolder && self.szTargetParsingName == other.szTargetParsingName && self.szNetworkProvider == other.szNetworkProvider && self.dwAttributes == other.dwAttributes && self.csidl == other.csidl
}
}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::cmp::Eq for PERSIST_FOLDER_TARGET_INFO {}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::default::Default for PERSIST_FOLDER_TARGET_INFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub struct PREVIEWHANDLERFRAMEINFO {
pub haccel: super::WindowsAndMessaging::HACCEL,
pub cAccelEntries: u32,
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::marker::Copy for PREVIEWHANDLERFRAMEINFO {}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::clone::Clone for PREVIEWHANDLERFRAMEINFO {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::fmt::Debug for PREVIEWHANDLERFRAMEINFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("PREVIEWHANDLERFRAMEINFO").field("haccel", &self.haccel).field("cAccelEntries", &self.cAccelEntries).finish()
}
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
unsafe impl ::windows::core::Abi for PREVIEWHANDLERFRAMEINFO {
type Abi = Self;
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::cmp::PartialEq for PREVIEWHANDLERFRAMEINFO {
fn eq(&self, other: &Self) -> bool {
self.haccel == other.haccel && self.cAccelEntries == other.cAccelEntries
}
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::cmp::Eq for PREVIEWHANDLERFRAMEINFO {}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::default::Default for PREVIEWHANDLERFRAMEINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct PROFILEINFOA {
pub dwSize: u32,
pub dwFlags: u32,
pub lpUserName: ::windows::core::PSTR,
pub lpProfilePath: ::windows::core::PSTR,
pub lpDefaultPath: ::windows::core::PSTR,
pub lpServerName: ::windows::core::PSTR,
pub lpPolicyPath: ::windows::core::PSTR,
pub hProfile: super::super::Foundation::HANDLE,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for PROFILEINFOA {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for PROFILEINFOA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::fmt::Debug for PROFILEINFOA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("PROFILEINFOA").field("dwSize", &self.dwSize).field("dwFlags", &self.dwFlags).field("lpUserName", &self.lpUserName).field("lpProfilePath", &self.lpProfilePath).field("lpDefaultPath", &self.lpDefaultPath).field("lpServerName", &self.lpServerName).field("lpPolicyPath", &self.lpPolicyPath).field("hProfile", &self.hProfile).finish()
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for PROFILEINFOA {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::PartialEq for PROFILEINFOA {
fn eq(&self, other: &Self) -> bool {
self.dwSize == other.dwSize && self.dwFlags == other.dwFlags && self.lpUserName == other.lpUserName && self.lpProfilePath == other.lpProfilePath && self.lpDefaultPath == other.lpDefaultPath && self.lpServerName == other.lpServerName && self.lpPolicyPath == other.lpPolicyPath && self.hProfile == other.hProfile
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::Eq for PROFILEINFOA {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for PROFILEINFOA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct PROFILEINFOW {
pub dwSize: u32,
pub dwFlags: u32,
pub lpUserName: ::windows::core::PWSTR,
pub lpProfilePath: ::windows::core::PWSTR,
pub lpDefaultPath: ::windows::core::PWSTR,
pub lpServerName: ::windows::core::PWSTR,
pub lpPolicyPath: ::windows::core::PWSTR,
pub hProfile: super::super::Foundation::HANDLE,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for PROFILEINFOW {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for PROFILEINFOW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::fmt::Debug for PROFILEINFOW {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("PROFILEINFOW").field("dwSize", &self.dwSize).field("dwFlags", &self.dwFlags).field("lpUserName", &self.lpUserName).field("lpProfilePath", &self.lpProfilePath).field("lpDefaultPath", &self.lpDefaultPath).field("lpServerName", &self.lpServerName).field("lpPolicyPath", &self.lpPolicyPath).field("hProfile", &self.hProfile).finish()
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for PROFILEINFOW {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::PartialEq for PROFILEINFOW {
fn eq(&self, other: &Self) -> bool {
self.dwSize == other.dwSize && self.dwFlags == other.dwFlags && self.lpUserName == other.lpUserName && self.lpProfilePath == other.lpProfilePath && self.lpDefaultPath == other.lpDefaultPath && self.lpServerName == other.lpServerName && self.lpPolicyPath == other.lpPolicyPath && self.hProfile == other.hProfile
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::Eq for PROFILEINFOW {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for PROFILEINFOW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct PUBAPPINFO {
pub cbSize: u32,
pub dwMask: u32,
pub pszSource: ::windows::core::PWSTR,
pub stAssigned: super::super::Foundation::SYSTEMTIME,
pub stPublished: super::super::Foundation::SYSTEMTIME,
pub stScheduled: super::super::Foundation::SYSTEMTIME,
pub stExpire: super::super::Foundation::SYSTEMTIME,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for PUBAPPINFO {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for PUBAPPINFO {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::fmt::Debug for PUBAPPINFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("PUBAPPINFO").field("cbSize", &self.cbSize).field("dwMask", &self.dwMask).field("pszSource", &self.pszSource).field("stAssigned", &self.stAssigned).field("stPublished", &self.stPublished).field("stScheduled", &self.stScheduled).field("stExpire", &self.stExpire).finish()
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for PUBAPPINFO {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::PartialEq for PUBAPPINFO {
fn eq(&self, other: &Self) -> bool {
self.cbSize == other.cbSize && self.dwMask == other.dwMask && self.pszSource == other.pszSource && self.stAssigned == other.stAssigned && self.stPublished == other.stPublished && self.stScheduled == other.stScheduled && self.stExpire == other.stExpire
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::Eq for PUBAPPINFO {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for PUBAPPINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub struct QCMINFO {
pub hmenu: super::WindowsAndMessaging::HMENU,
pub indexMenu: u32,
pub idCmdFirst: u32,
pub idCmdLast: u32,
pub pIdMap: *const QCMINFO_IDMAP,
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::marker::Copy for QCMINFO {}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::clone::Clone for QCMINFO {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::fmt::Debug for QCMINFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("QCMINFO").field("hmenu", &self.hmenu).field("indexMenu", &self.indexMenu).field("idCmdFirst", &self.idCmdFirst).field("idCmdLast", &self.idCmdLast).field("pIdMap", &self.pIdMap).finish()
}
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
unsafe impl ::windows::core::Abi for QCMINFO {
type Abi = Self;
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::cmp::PartialEq for QCMINFO {
fn eq(&self, other: &Self) -> bool {
self.hmenu == other.hmenu && self.indexMenu == other.indexMenu && self.idCmdFirst == other.idCmdFirst && self.idCmdLast == other.idCmdLast && self.pIdMap == other.pIdMap
}
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::cmp::Eq for QCMINFO {}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::default::Default for QCMINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct QCMINFO_IDMAP {
pub nMaxIds: u32,
pub pIdList: [QCMINFO_IDMAP_PLACEMENT; 1],
}
impl ::core::marker::Copy for QCMINFO_IDMAP {}
impl ::core::clone::Clone for QCMINFO_IDMAP {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for QCMINFO_IDMAP {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("QCMINFO_IDMAP").field("nMaxIds", &self.nMaxIds).field("pIdList", &self.pIdList).finish()
}
}
unsafe impl ::windows::core::Abi for QCMINFO_IDMAP {
type Abi = Self;
}
impl ::core::cmp::PartialEq for QCMINFO_IDMAP {
fn eq(&self, other: &Self) -> bool {
self.nMaxIds == other.nMaxIds && self.pIdList == other.pIdList
}
}
impl ::core::cmp::Eq for QCMINFO_IDMAP {}
impl ::core::default::Default for QCMINFO_IDMAP {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct QCMINFO_IDMAP_PLACEMENT {
pub id: u32,
pub fFlags: u32,
}
impl ::core::marker::Copy for QCMINFO_IDMAP_PLACEMENT {}
impl ::core::clone::Clone for QCMINFO_IDMAP_PLACEMENT {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for QCMINFO_IDMAP_PLACEMENT {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("QCMINFO_IDMAP_PLACEMENT").field("id", &self.id).field("fFlags", &self.fFlags).finish()
}
}
unsafe impl ::windows::core::Abi for QCMINFO_IDMAP_PLACEMENT {
type Abi = Self;
}
impl ::core::cmp::PartialEq for QCMINFO_IDMAP_PLACEMENT {
fn eq(&self, other: &Self) -> bool {
self.id == other.id && self.fFlags == other.fFlags
}
}
impl ::core::cmp::Eq for QCMINFO_IDMAP_PLACEMENT {}
impl ::core::default::Default for QCMINFO_IDMAP_PLACEMENT {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct QITAB {
pub piid: *const ::windows::core::GUID,
pub dwOffset: u32,
}
impl ::core::marker::Copy for QITAB {}
impl ::core::clone::Clone for QITAB {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for QITAB {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("QITAB").field("piid", &self.piid).field("dwOffset", &self.dwOffset).finish()
}
}
unsafe impl ::windows::core::Abi for QITAB {
type Abi = Self;
}
impl ::core::cmp::PartialEq for QITAB {
fn eq(&self, other: &Self) -> bool {
self.piid == other.piid && self.dwOffset == other.dwOffset
}
}
impl ::core::cmp::Eq for QITAB {}
impl ::core::default::Default for QITAB {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct SFVM_HELPTOPIC_DATA {
pub wszHelpFile: [u16; 260],
pub wszHelpTopic: [u16; 260],
}
impl ::core::marker::Copy for SFVM_HELPTOPIC_DATA {}
impl ::core::clone::Clone for SFVM_HELPTOPIC_DATA {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for SFVM_HELPTOPIC_DATA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SFVM_HELPTOPIC_DATA").field("wszHelpFile", &self.wszHelpFile).field("wszHelpTopic", &self.wszHelpTopic).finish()
}
}
unsafe impl ::windows::core::Abi for SFVM_HELPTOPIC_DATA {
type Abi = Self;
}
impl ::core::cmp::PartialEq for SFVM_HELPTOPIC_DATA {
fn eq(&self, other: &Self) -> bool {
self.wszHelpFile == other.wszHelpFile && self.wszHelpTopic == other.wszHelpTopic
}
}
impl ::core::cmp::Eq for SFVM_HELPTOPIC_DATA {}
impl ::core::default::Default for SFVM_HELPTOPIC_DATA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Controls\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
pub struct SFVM_PROPPAGE_DATA {
pub dwReserved: u32,
pub pfn: super::Controls::LPFNSVADDPROPSHEETPAGE,
pub lParam: super::super::Foundation::LPARAM,
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
impl ::core::marker::Copy for SFVM_PROPPAGE_DATA {}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
impl ::core::clone::Clone for SFVM_PROPPAGE_DATA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
impl ::core::fmt::Debug for SFVM_PROPPAGE_DATA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SFVM_PROPPAGE_DATA").field("dwReserved", &self.dwReserved).field("lParam", &self.lParam).finish()
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
unsafe impl ::windows::core::Abi for SFVM_PROPPAGE_DATA {
type Abi = Self;
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Controls"))]
impl ::core::default::Default for SFVM_PROPPAGE_DATA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Ole\"`*"]
#[cfg(feature = "Win32_System_Ole")]
pub struct SFV_CREATE {
pub cbSize: u32,
pub pshf: ::windows::core::ManuallyDrop<IShellFolder>,
pub psvOuter: ::windows::core::ManuallyDrop<IShellView>,
pub psfvcb: ::windows::core::ManuallyDrop<IShellFolderViewCB>,
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::clone::Clone for SFV_CREATE {
fn clone(&self) -> Self {
unsafe { ::core::mem::transmute_copy(self) }
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::fmt::Debug for SFV_CREATE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SFV_CREATE").field("cbSize", &self.cbSize).field("pshf", &self.pshf).field("psvOuter", &self.psvOuter).field("psfvcb", &self.psfvcb).finish()
}
}
#[cfg(feature = "Win32_System_Ole")]
unsafe impl ::windows::core::Abi for SFV_CREATE {
type Abi = Self;
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::PartialEq for SFV_CREATE {
fn eq(&self, other: &Self) -> bool {
self.cbSize == other.cbSize && self.pshf == other.pshf && self.psvOuter == other.psvOuter && self.psfvcb == other.psfvcb
}
}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::cmp::Eq for SFV_CREATE {}
#[cfg(feature = "Win32_System_Ole")]
impl ::core::default::Default for SFV_CREATE {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub struct SFV_SETITEMPOS {
pub pidl: *mut Common::ITEMIDLIST,
pub pt: super::super::Foundation::POINT,
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::marker::Copy for SFV_SETITEMPOS {}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::clone::Clone for SFV_SETITEMPOS {
fn clone(&self) -> Self {
*self
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::fmt::Debug for SFV_SETITEMPOS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SFV_SETITEMPOS").field("pidl", &self.pidl).field("pt", &self.pt).finish()
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
unsafe impl ::windows::core::Abi for SFV_SETITEMPOS {
type Abi = Self;
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::cmp::PartialEq for SFV_SETITEMPOS {
fn eq(&self, other: &Self) -> bool {
self.pidl == other.pidl && self.pt == other.pt
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::cmp::Eq for SFV_SETITEMPOS {}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::default::Default for SFV_SETITEMPOS {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct SHARDAPPIDINFO {
pub psi: ::windows::core::ManuallyDrop<IShellItem>,
pub pszAppID: ::windows::core::PCWSTR,
}
unsafe impl ::windows::core::Abi for SHARDAPPIDINFO {
type Abi = Self;
}
impl ::core::default::Default for SHARDAPPIDINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub struct SHARDAPPIDINFOIDLIST {
pub pidl: *mut Common::ITEMIDLIST,
pub pszAppID: ::windows::core::PCWSTR,
}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::marker::Copy for SHARDAPPIDINFOIDLIST {}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::clone::Clone for SHARDAPPIDINFOIDLIST {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_UI_Shell_Common")]
unsafe impl ::windows::core::Abi for SHARDAPPIDINFOIDLIST {
type Abi = Self;
}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::default::Default for SHARDAPPIDINFOIDLIST {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct SHARDAPPIDINFOLINK {
pub psl: ::windows::core::ManuallyDrop<IShellLinkA>,
pub pszAppID: ::windows::core::PCWSTR,
}
unsafe impl ::windows::core::Abi for SHARDAPPIDINFOLINK {
type Abi = Self;
}
impl ::core::default::Default for SHARDAPPIDINFOLINK {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct SHCOLUMNDATA {
pub dwFlags: u32,
pub dwFileAttributes: u32,
pub dwReserved: u32,
pub pwszExt: ::windows::core::PWSTR,
pub wszFile: [u16; 260],
}
impl ::core::marker::Copy for SHCOLUMNDATA {}
impl ::core::clone::Clone for SHCOLUMNDATA {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for SHCOLUMNDATA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SHCOLUMNDATA").field("dwFlags", &self.dwFlags).field("dwFileAttributes", &self.dwFileAttributes).field("dwReserved", &self.dwReserved).field("pwszExt", &self.pwszExt).field("wszFile", &self.wszFile).finish()
}
}
unsafe impl ::windows::core::Abi for SHCOLUMNDATA {
type Abi = Self;
}
impl ::core::cmp::PartialEq for SHCOLUMNDATA {
fn eq(&self, other: &Self) -> bool {
self.dwFlags == other.dwFlags && self.dwFileAttributes == other.dwFileAttributes && self.dwReserved == other.dwReserved && self.pwszExt == other.pwszExt && self.wszFile == other.wszFile
}
}
impl ::core::cmp::Eq for SHCOLUMNDATA {}
impl ::core::default::Default for SHCOLUMNDATA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem"))]
pub struct SHCOLUMNINFO {
pub scid: PropertiesSystem::PROPERTYKEY,
pub vt: super::super::System::Com::VARENUM,
pub fmt: u32,
pub cChars: u32,
pub csFlags: u32,
pub wszTitle: [u16; 80],
pub wszDescription: [u16; 128],
}
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem"))]
impl ::core::marker::Copy for SHCOLUMNINFO {}
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem"))]
impl ::core::clone::Clone for SHCOLUMNINFO {
fn clone(&self) -> Self {
*self
}
}
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem"))]
unsafe impl ::windows::core::Abi for SHCOLUMNINFO {
type Abi = Self;
}
#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem"))]
impl ::core::default::Default for SHCOLUMNINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct SHCOLUMNINIT {
pub dwFlags: u32,
pub dwReserved: u32,
pub wszFolder: [u16; 260],
}
impl ::core::marker::Copy for SHCOLUMNINIT {}
impl ::core::clone::Clone for SHCOLUMNINIT {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for SHCOLUMNINIT {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SHCOLUMNINIT").field("dwFlags", &self.dwFlags).field("dwReserved", &self.dwReserved).field("wszFolder", &self.wszFolder).finish()
}
}
unsafe impl ::windows::core::Abi for SHCOLUMNINIT {
type Abi = Self;
}
impl ::core::cmp::PartialEq for SHCOLUMNINIT {
fn eq(&self, other: &Self) -> bool {
self.dwFlags == other.dwFlags && self.dwReserved == other.dwReserved && self.wszFolder == other.wszFolder
}
}
impl ::core::cmp::Eq for SHCOLUMNINIT {}
impl ::core::default::Default for SHCOLUMNINIT {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_Security\"`, `\"Win32_System_Threading\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security", feature = "Win32_System_Threading"))]
pub struct SHCREATEPROCESSINFOW {
pub cbSize: u32,
pub fMask: u32,
pub hwnd: super::super::Foundation::HWND,
pub pszFile: ::windows::core::PCWSTR,
pub pszParameters: ::windows::core::PCWSTR,
pub pszCurrentDirectory: ::windows::core::PCWSTR,
pub hUserToken: super::super::Foundation::HANDLE,
pub lpProcessAttributes: *mut super::super::Security::SECURITY_ATTRIBUTES,
pub lpThreadAttributes: *mut super::super::Security::SECURITY_ATTRIBUTES,
pub bInheritHandles: super::super::Foundation::BOOL,
pub dwCreationFlags: u32,
pub lpStartupInfo: *mut super::super::System::Threading::STARTUPINFOW,
pub lpProcessInformation: *mut super::super::System::Threading::PROCESS_INFORMATION,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security", feature = "Win32_System_Threading"))]
impl ::core::marker::Copy for SHCREATEPROCESSINFOW {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security", feature = "Win32_System_Threading"))]
impl ::core::clone::Clone for SHCREATEPROCESSINFOW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security", feature = "Win32_System_Threading"))]
unsafe impl ::windows::core::Abi for SHCREATEPROCESSINFOW {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security", feature = "Win32_System_Threading"))]
impl ::core::default::Default for SHCREATEPROCESSINFOW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_Security\"`, `\"Win32_System_Threading\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security", feature = "Win32_System_Threading"))]
pub struct SHCREATEPROCESSINFOW {
pub cbSize: u32,
pub fMask: u32,
pub hwnd: super::super::Foundation::HWND,
pub pszFile: ::windows::core::PCWSTR,
pub pszParameters: ::windows::core::PCWSTR,
pub pszCurrentDirectory: ::windows::core::PCWSTR,
pub hUserToken: super::super::Foundation::HANDLE,
pub lpProcessAttributes: *mut super::super::Security::SECURITY_ATTRIBUTES,
pub lpThreadAttributes: *mut super::super::Security::SECURITY_ATTRIBUTES,
pub bInheritHandles: super::super::Foundation::BOOL,
pub dwCreationFlags: u32,
pub lpStartupInfo: *mut super::super::System::Threading::STARTUPINFOW,
pub lpProcessInformation: *mut super::super::System::Threading::PROCESS_INFORMATION,
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security", feature = "Win32_System_Threading"))]
impl ::core::marker::Copy for SHCREATEPROCESSINFOW {}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security", feature = "Win32_System_Threading"))]
impl ::core::clone::Clone for SHCREATEPROCESSINFOW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security", feature = "Win32_System_Threading"))]
unsafe impl ::windows::core::Abi for SHCREATEPROCESSINFOW {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security", feature = "Win32_System_Threading"))]
impl ::core::default::Default for SHCREATEPROCESSINFOW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct SHChangeDWORDAsIDList {
pub cb: u16,
pub dwItem1: u32,
pub dwItem2: u32,
pub cbZero: u16,
}
impl ::core::marker::Copy for SHChangeDWORDAsIDList {}
impl ::core::clone::Clone for SHChangeDWORDAsIDList {
fn clone(&self) -> Self {
*self
}
}
unsafe impl ::windows::core::Abi for SHChangeDWORDAsIDList {
type Abi = Self;
}
impl ::core::default::Default for SHChangeDWORDAsIDList {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
pub struct SHChangeNotifyEntry {
pub pidl: *mut Common::ITEMIDLIST,
pub fRecursive: super::super::Foundation::BOOL,
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::marker::Copy for SHChangeNotifyEntry {}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::clone::Clone for SHChangeNotifyEntry {
fn clone(&self) -> Self {
*self
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
unsafe impl ::windows::core::Abi for SHChangeNotifyEntry {
type Abi = Self;
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))]
impl ::core::default::Default for SHChangeNotifyEntry {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct SHChangeProductKeyAsIDList {
pub cb: u16,
pub wszProductKey: [u16; 39],
pub cbZero: u16,
}
impl ::core::marker::Copy for SHChangeProductKeyAsIDList {}
impl ::core::clone::Clone for SHChangeProductKeyAsIDList {
fn clone(&self) -> Self {
*self
}
}
unsafe impl ::windows::core::Abi for SHChangeProductKeyAsIDList {
type Abi = Self;
}
impl ::core::default::Default for SHChangeProductKeyAsIDList {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct SHChangeUpdateImageIDList {
pub cb: u16,
pub iIconIndex: i32,
pub iCurIndex: i32,
pub uFlags: u32,
pub dwProcessID: u32,
pub szName: [u16; 260],
pub cbZero: u16,
}
impl ::core::marker::Copy for SHChangeUpdateImageIDList {}
impl ::core::clone::Clone for SHChangeUpdateImageIDList {
fn clone(&self) -> Self {
*self
}
}
unsafe impl ::windows::core::Abi for SHChangeUpdateImageIDList {
type Abi = Self;
}
impl ::core::default::Default for SHChangeUpdateImageIDList {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct SHDESCRIPTIONID {
pub dwDescriptionId: SHDID_ID,
pub clsid: ::windows::core::GUID,
}
impl ::core::marker::Copy for SHDESCRIPTIONID {}
impl ::core::clone::Clone for SHDESCRIPTIONID {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for SHDESCRIPTIONID {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SHDESCRIPTIONID").field("dwDescriptionId", &self.dwDescriptionId).field("clsid", &self.clsid).finish()
}
}
unsafe impl ::windows::core::Abi for SHDESCRIPTIONID {
type Abi = Self;
}
impl ::core::cmp::PartialEq for SHDESCRIPTIONID {
fn eq(&self, other: &Self) -> bool {
self.dwDescriptionId == other.dwDescriptionId && self.clsid == other.clsid
}
}
impl ::core::cmp::Eq for SHDESCRIPTIONID {}
impl ::core::default::Default for SHDESCRIPTIONID {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
pub struct SHDRAGIMAGE {
pub sizeDragImage: super::super::Foundation::SIZE,
pub ptOffset: super::super::Foundation::POINT,
pub hbmpDragImage: super::super::Graphics::Gdi::HBITMAP,
pub crColorKey: super::super::Foundation::COLORREF,
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
impl ::core::marker::Copy for SHDRAGIMAGE {}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
impl ::core::clone::Clone for SHDRAGIMAGE {
fn clone(&self) -> Self {
*self
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
impl ::core::fmt::Debug for SHDRAGIMAGE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SHDRAGIMAGE").field("sizeDragImage", &self.sizeDragImage).field("ptOffset", &self.ptOffset).field("hbmpDragImage", &self.hbmpDragImage).field("crColorKey", &self.crColorKey).finish()
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
unsafe impl ::windows::core::Abi for SHDRAGIMAGE {
type Abi = Self;
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
impl ::core::cmp::PartialEq for SHDRAGIMAGE {
fn eq(&self, other: &Self) -> bool {
self.sizeDragImage == other.sizeDragImage && self.ptOffset == other.ptOffset && self.hbmpDragImage == other.hbmpDragImage && self.crColorKey == other.crColorKey
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
impl ::core::cmp::Eq for SHDRAGIMAGE {}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))]
impl ::core::default::Default for SHDRAGIMAGE {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
pub struct SHELLEXECUTEINFOA {
pub cbSize: u32,
pub fMask: u32,
pub hwnd: super::super::Foundation::HWND,
pub lpVerb: ::windows::core::PCSTR,
pub lpFile: ::windows::core::PCSTR,
pub lpParameters: ::windows::core::PCSTR,
pub lpDirectory: ::windows::core::PCSTR,
pub nShow: i32,
pub hInstApp: super::super::Foundation::HINSTANCE,
pub lpIDList: *mut ::core::ffi::c_void,
pub lpClass: ::windows::core::PCSTR,
pub hkeyClass: super::super::System::Registry::HKEY,
pub dwHotKey: u32,
pub Anonymous: SHELLEXECUTEINFOA_0,
pub hProcess: super::super::Foundation::HANDLE,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::marker::Copy for SHELLEXECUTEINFOA {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::clone::Clone for SHELLEXECUTEINFOA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
unsafe impl ::windows::core::Abi for SHELLEXECUTEINFOA {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::default::Default for SHELLEXECUTEINFOA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
pub union SHELLEXECUTEINFOA_0 {
pub hIcon: super::super::Foundation::HANDLE,
pub hMonitor: super::super::Foundation::HANDLE,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::marker::Copy for SHELLEXECUTEINFOA_0 {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::clone::Clone for SHELLEXECUTEINFOA_0 {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
unsafe impl ::windows::core::Abi for SHELLEXECUTEINFOA_0 {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::default::Default for SHELLEXECUTEINFOA_0 {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
pub struct SHELLEXECUTEINFOA {
pub cbSize: u32,
pub fMask: u32,
pub hwnd: super::super::Foundation::HWND,
pub lpVerb: ::windows::core::PCSTR,
pub lpFile: ::windows::core::PCSTR,
pub lpParameters: ::windows::core::PCSTR,
pub lpDirectory: ::windows::core::PCSTR,
pub nShow: i32,
pub hInstApp: super::super::Foundation::HINSTANCE,
pub lpIDList: *mut ::core::ffi::c_void,
pub lpClass: ::windows::core::PCSTR,
pub hkeyClass: super::super::System::Registry::HKEY,
pub dwHotKey: u32,
pub Anonymous: SHELLEXECUTEINFOA_0,
pub hProcess: super::super::Foundation::HANDLE,
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::marker::Copy for SHELLEXECUTEINFOA {}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::clone::Clone for SHELLEXECUTEINFOA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
unsafe impl ::windows::core::Abi for SHELLEXECUTEINFOA {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::default::Default for SHELLEXECUTEINFOA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
pub union SHELLEXECUTEINFOA_0 {
pub hIcon: super::super::Foundation::HANDLE,
pub hMonitor: super::super::Foundation::HANDLE,
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::marker::Copy for SHELLEXECUTEINFOA_0 {}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::clone::Clone for SHELLEXECUTEINFOA_0 {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
unsafe impl ::windows::core::Abi for SHELLEXECUTEINFOA_0 {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::default::Default for SHELLEXECUTEINFOA_0 {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
pub struct SHELLEXECUTEINFOW {
pub cbSize: u32,
pub fMask: u32,
pub hwnd: super::super::Foundation::HWND,
pub lpVerb: ::windows::core::PCWSTR,
pub lpFile: ::windows::core::PCWSTR,
pub lpParameters: ::windows::core::PCWSTR,
pub lpDirectory: ::windows::core::PCWSTR,
pub nShow: i32,
pub hInstApp: super::super::Foundation::HINSTANCE,
pub lpIDList: *mut ::core::ffi::c_void,
pub lpClass: ::windows::core::PCWSTR,
pub hkeyClass: super::super::System::Registry::HKEY,
pub dwHotKey: u32,
pub Anonymous: SHELLEXECUTEINFOW_0,
pub hProcess: super::super::Foundation::HANDLE,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::marker::Copy for SHELLEXECUTEINFOW {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::clone::Clone for SHELLEXECUTEINFOW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
unsafe impl ::windows::core::Abi for SHELLEXECUTEINFOW {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::default::Default for SHELLEXECUTEINFOW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
pub union SHELLEXECUTEINFOW_0 {
pub hIcon: super::super::Foundation::HANDLE,
pub hMonitor: super::super::Foundation::HANDLE,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::marker::Copy for SHELLEXECUTEINFOW_0 {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::clone::Clone for SHELLEXECUTEINFOW_0 {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
unsafe impl ::windows::core::Abi for SHELLEXECUTEINFOW_0 {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::default::Default for SHELLEXECUTEINFOW_0 {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
pub struct SHELLEXECUTEINFOW {
pub cbSize: u32,
pub fMask: u32,
pub hwnd: super::super::Foundation::HWND,
pub lpVerb: ::windows::core::PCWSTR,
pub lpFile: ::windows::core::PCWSTR,
pub lpParameters: ::windows::core::PCWSTR,
pub lpDirectory: ::windows::core::PCWSTR,
pub nShow: i32,
pub hInstApp: super::super::Foundation::HINSTANCE,
pub lpIDList: *mut ::core::ffi::c_void,
pub lpClass: ::windows::core::PCWSTR,
pub hkeyClass: super::super::System::Registry::HKEY,
pub dwHotKey: u32,
pub Anonymous: SHELLEXECUTEINFOW_0,
pub hProcess: super::super::Foundation::HANDLE,
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::marker::Copy for SHELLEXECUTEINFOW {}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::clone::Clone for SHELLEXECUTEINFOW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
unsafe impl ::windows::core::Abi for SHELLEXECUTEINFOW {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::default::Default for SHELLEXECUTEINFOW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
pub union SHELLEXECUTEINFOW_0 {
pub hIcon: super::super::Foundation::HANDLE,
pub hMonitor: super::super::Foundation::HANDLE,
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::marker::Copy for SHELLEXECUTEINFOW_0 {}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::clone::Clone for SHELLEXECUTEINFOW_0 {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
unsafe impl ::windows::core::Abi for SHELLEXECUTEINFOW_0 {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
impl ::core::default::Default for SHELLEXECUTEINFOW_0 {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct SHELLFLAGSTATE {
pub _bitfield: i32,
}
impl ::core::marker::Copy for SHELLFLAGSTATE {}
impl ::core::clone::Clone for SHELLFLAGSTATE {
fn clone(&self) -> Self {
*self
}
}
unsafe impl ::windows::core::Abi for SHELLFLAGSTATE {
type Abi = Self;
}
impl ::core::default::Default for SHELLFLAGSTATE {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct SHELLSTATEA {
pub _bitfield1: i32,
pub dwWin95Unused: u32,
pub uWin95Unused: u32,
pub lParamSort: i32,
pub iSortDirection: i32,
pub version: u32,
pub uNotUsed: u32,
pub _bitfield2: i32,
}
impl ::core::marker::Copy for SHELLSTATEA {}
impl ::core::clone::Clone for SHELLSTATEA {
fn clone(&self) -> Self {
*self
}
}
unsafe impl ::windows::core::Abi for SHELLSTATEA {
type Abi = Self;
}
impl ::core::default::Default for SHELLSTATEA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct SHELLSTATEW {
pub _bitfield1: i32,
pub dwWin95Unused: u32,
pub uWin95Unused: u32,
pub lParamSort: i32,
pub iSortDirection: i32,
pub version: u32,
pub uNotUsed: u32,
pub _bitfield2: i32,
}
impl ::core::marker::Copy for SHELLSTATEW {}
impl ::core::clone::Clone for SHELLSTATEW {
fn clone(&self) -> Self {
*self
}
}
unsafe impl ::windows::core::Abi for SHELLSTATEW {
type Abi = Self;
}
impl ::core::default::Default for SHELLSTATEW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct SHELL_ITEM_RESOURCE {
pub guidType: ::windows::core::GUID,
pub szName: [u16; 260],
}
impl ::core::marker::Copy for SHELL_ITEM_RESOURCE {}
impl ::core::clone::Clone for SHELL_ITEM_RESOURCE {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for SHELL_ITEM_RESOURCE {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SHELL_ITEM_RESOURCE").field("guidType", &self.guidType).field("szName", &self.szName).finish()
}
}
unsafe impl ::windows::core::Abi for SHELL_ITEM_RESOURCE {
type Abi = Self;
}
impl ::core::cmp::PartialEq for SHELL_ITEM_RESOURCE {
fn eq(&self, other: &Self) -> bool {
self.guidType == other.guidType && self.szName == other.szName
}
}
impl ::core::cmp::Eq for SHELL_ITEM_RESOURCE {}
impl ::core::default::Default for SHELL_ITEM_RESOURCE {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub struct SHFILEINFOA {
pub hIcon: super::WindowsAndMessaging::HICON,
pub iIcon: i32,
pub dwAttributes: u32,
pub szDisplayName: [super::super::Foundation::CHAR; 260],
pub szTypeName: [super::super::Foundation::CHAR; 80],
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::marker::Copy for SHFILEINFOA {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::clone::Clone for SHFILEINFOA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
unsafe impl ::windows::core::Abi for SHFILEINFOA {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::default::Default for SHFILEINFOA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub struct SHFILEINFOA {
pub hIcon: super::WindowsAndMessaging::HICON,
pub iIcon: i32,
pub dwAttributes: u32,
pub szDisplayName: [super::super::Foundation::CHAR; 260],
pub szTypeName: [super::super::Foundation::CHAR; 80],
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::marker::Copy for SHFILEINFOA {}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::clone::Clone for SHFILEINFOA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
unsafe impl ::windows::core::Abi for SHFILEINFOA {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::default::Default for SHFILEINFOA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub struct SHFILEINFOW {
pub hIcon: super::WindowsAndMessaging::HICON,
pub iIcon: i32,
pub dwAttributes: u32,
pub szDisplayName: [u16; 260],
pub szTypeName: [u16; 80],
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::marker::Copy for SHFILEINFOW {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::clone::Clone for SHFILEINFOW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
unsafe impl ::windows::core::Abi for SHFILEINFOW {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::default::Default for SHFILEINFOW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub struct SHFILEINFOW {
pub hIcon: super::WindowsAndMessaging::HICON,
pub iIcon: i32,
pub dwAttributes: u32,
pub szDisplayName: [u16; 260],
pub szTypeName: [u16; 80],
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::marker::Copy for SHFILEINFOW {}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::clone::Clone for SHFILEINFOW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
unsafe impl ::windows::core::Abi for SHFILEINFOW {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::default::Default for SHFILEINFOW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
pub struct SHFILEOPSTRUCTA {
pub hwnd: super::super::Foundation::HWND,
pub wFunc: u32,
pub pFrom: *mut i8,
pub pTo: *mut i8,
pub fFlags: u16,
pub fAnyOperationsAborted: super::super::Foundation::BOOL,
pub hNameMappings: *mut ::core::ffi::c_void,
pub lpszProgressTitle: ::windows::core::PCSTR,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for SHFILEOPSTRUCTA {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for SHFILEOPSTRUCTA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for SHFILEOPSTRUCTA {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for SHFILEOPSTRUCTA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
pub struct SHFILEOPSTRUCTA {
pub hwnd: super::super::Foundation::HWND,
pub wFunc: u32,
pub pFrom: *mut i8,
pub pTo: *mut i8,
pub fFlags: u16,
pub fAnyOperationsAborted: super::super::Foundation::BOOL,
pub hNameMappings: *mut ::core::ffi::c_void,
pub lpszProgressTitle: ::windows::core::PCSTR,
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for SHFILEOPSTRUCTA {}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for SHFILEOPSTRUCTA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for SHFILEOPSTRUCTA {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for SHFILEOPSTRUCTA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
pub struct SHFILEOPSTRUCTW {
pub hwnd: super::super::Foundation::HWND,
pub wFunc: u32,
pub pFrom: ::windows::core::PCWSTR,
pub pTo: ::windows::core::PCWSTR,
pub fFlags: u16,
pub fAnyOperationsAborted: super::super::Foundation::BOOL,
pub hNameMappings: *mut ::core::ffi::c_void,
pub lpszProgressTitle: ::windows::core::PCWSTR,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for SHFILEOPSTRUCTW {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for SHFILEOPSTRUCTW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for SHFILEOPSTRUCTW {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for SHFILEOPSTRUCTW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
pub struct SHFILEOPSTRUCTW {
pub hwnd: super::super::Foundation::HWND,
pub wFunc: u32,
pub pFrom: ::windows::core::PCWSTR,
pub pTo: ::windows::core::PCWSTR,
pub fFlags: u16,
pub fAnyOperationsAborted: super::super::Foundation::BOOL,
pub hNameMappings: *mut ::core::ffi::c_void,
pub lpszProgressTitle: ::windows::core::PCWSTR,
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for SHFILEOPSTRUCTW {}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for SHFILEOPSTRUCTW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for SHFILEOPSTRUCTW {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for SHFILEOPSTRUCTW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct SHFOLDERCUSTOMSETTINGS {
pub dwSize: u32,
pub dwMask: u32,
pub pvid: *mut ::windows::core::GUID,
pub pszWebViewTemplate: ::windows::core::PWSTR,
pub cchWebViewTemplate: u32,
pub pszWebViewTemplateVersion: ::windows::core::PWSTR,
pub pszInfoTip: ::windows::core::PWSTR,
pub cchInfoTip: u32,
pub pclsid: *mut ::windows::core::GUID,
pub dwFlags: u32,
pub pszIconFile: ::windows::core::PWSTR,
pub cchIconFile: u32,
pub iIconIndex: i32,
pub pszLogo: ::windows::core::PWSTR,
pub cchLogo: u32,
}
impl ::core::marker::Copy for SHFOLDERCUSTOMSETTINGS {}
impl ::core::clone::Clone for SHFOLDERCUSTOMSETTINGS {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for SHFOLDERCUSTOMSETTINGS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SHFOLDERCUSTOMSETTINGS")
.field("dwSize", &self.dwSize)
.field("dwMask", &self.dwMask)
.field("pvid", &self.pvid)
.field("pszWebViewTemplate", &self.pszWebViewTemplate)
.field("cchWebViewTemplate", &self.cchWebViewTemplate)
.field("pszWebViewTemplateVersion", &self.pszWebViewTemplateVersion)
.field("pszInfoTip", &self.pszInfoTip)
.field("cchInfoTip", &self.cchInfoTip)
.field("pclsid", &self.pclsid)
.field("dwFlags", &self.dwFlags)
.field("pszIconFile", &self.pszIconFile)
.field("cchIconFile", &self.cchIconFile)
.field("iIconIndex", &self.iIconIndex)
.field("pszLogo", &self.pszLogo)
.field("cchLogo", &self.cchLogo)
.finish()
}
}
unsafe impl ::windows::core::Abi for SHFOLDERCUSTOMSETTINGS {
type Abi = Self;
}
impl ::core::cmp::PartialEq for SHFOLDERCUSTOMSETTINGS {
fn eq(&self, other: &Self) -> bool {
self.dwSize == other.dwSize && self.dwMask == other.dwMask && self.pvid == other.pvid && self.pszWebViewTemplate == other.pszWebViewTemplate && self.cchWebViewTemplate == other.cchWebViewTemplate && self.pszWebViewTemplateVersion == other.pszWebViewTemplateVersion && self.pszInfoTip == other.pszInfoTip && self.cchInfoTip == other.cchInfoTip && self.pclsid == other.pclsid && self.dwFlags == other.dwFlags && self.pszIconFile == other.pszIconFile && self.cchIconFile == other.cchIconFile && self.iIconIndex == other.iIconIndex && self.pszLogo == other.pszLogo && self.cchLogo == other.cchLogo
}
}
impl ::core::cmp::Eq for SHFOLDERCUSTOMSETTINGS {}
impl ::core::default::Default for SHFOLDERCUSTOMSETTINGS {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
pub struct SHNAMEMAPPINGA {
pub pszOldPath: ::windows::core::PSTR,
pub pszNewPath: ::windows::core::PSTR,
pub cchOldPath: i32,
pub cchNewPath: i32,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
impl ::core::marker::Copy for SHNAMEMAPPINGA {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
impl ::core::clone::Clone for SHNAMEMAPPINGA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
unsafe impl ::windows::core::Abi for SHNAMEMAPPINGA {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
impl ::core::default::Default for SHNAMEMAPPINGA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[cfg(target_arch = "x86")]
pub struct SHNAMEMAPPINGA {
pub pszOldPath: ::windows::core::PSTR,
pub pszNewPath: ::windows::core::PSTR,
pub cchOldPath: i32,
pub cchNewPath: i32,
}
#[cfg(target_arch = "x86")]
impl ::core::marker::Copy for SHNAMEMAPPINGA {}
#[cfg(target_arch = "x86")]
impl ::core::clone::Clone for SHNAMEMAPPINGA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
unsafe impl ::windows::core::Abi for SHNAMEMAPPINGA {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
impl ::core::default::Default for SHNAMEMAPPINGA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
pub struct SHNAMEMAPPINGW {
pub pszOldPath: ::windows::core::PWSTR,
pub pszNewPath: ::windows::core::PWSTR,
pub cchOldPath: i32,
pub cchNewPath: i32,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
impl ::core::marker::Copy for SHNAMEMAPPINGW {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
impl ::core::clone::Clone for SHNAMEMAPPINGW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
unsafe impl ::windows::core::Abi for SHNAMEMAPPINGW {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
impl ::core::default::Default for SHNAMEMAPPINGW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[cfg(target_arch = "x86")]
pub struct SHNAMEMAPPINGW {
pub pszOldPath: ::windows::core::PWSTR,
pub pszNewPath: ::windows::core::PWSTR,
pub cchOldPath: i32,
pub cchNewPath: i32,
}
#[cfg(target_arch = "x86")]
impl ::core::marker::Copy for SHNAMEMAPPINGW {}
#[cfg(target_arch = "x86")]
impl ::core::clone::Clone for SHNAMEMAPPINGW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
unsafe impl ::windows::core::Abi for SHNAMEMAPPINGW {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
impl ::core::default::Default for SHNAMEMAPPINGW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
pub struct SHQUERYRBINFO {
pub cbSize: u32,
pub i64Size: i64,
pub i64NumItems: i64,
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
impl ::core::marker::Copy for SHQUERYRBINFO {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
impl ::core::clone::Clone for SHQUERYRBINFO {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
unsafe impl ::windows::core::Abi for SHQUERYRBINFO {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
impl ::core::default::Default for SHQUERYRBINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
#[cfg(target_arch = "x86")]
pub struct SHQUERYRBINFO {
pub cbSize: u32,
pub i64Size: i64,
pub i64NumItems: i64,
}
#[cfg(target_arch = "x86")]
impl ::core::marker::Copy for SHQUERYRBINFO {}
#[cfg(target_arch = "x86")]
impl ::core::clone::Clone for SHQUERYRBINFO {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
unsafe impl ::windows::core::Abi for SHQUERYRBINFO {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
impl ::core::default::Default for SHQUERYRBINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub struct SHSTOCKICONINFO {
pub cbSize: u32,
pub hIcon: super::WindowsAndMessaging::HICON,
pub iSysImageIndex: i32,
pub iIcon: i32,
pub szPath: [u16; 260],
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::marker::Copy for SHSTOCKICONINFO {}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::clone::Clone for SHSTOCKICONINFO {
fn clone(&self) -> Self {
*self
}
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
unsafe impl ::windows::core::Abi for SHSTOCKICONINFO {
type Abi = Self;
}
#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::default::Default for SHSTOCKICONINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub struct SHSTOCKICONINFO {
pub cbSize: u32,
pub hIcon: super::WindowsAndMessaging::HICON,
pub iSysImageIndex: i32,
pub iIcon: i32,
pub szPath: [u16; 260],
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::marker::Copy for SHSTOCKICONINFO {}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::clone::Clone for SHSTOCKICONINFO {
fn clone(&self) -> Self {
*self
}
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
unsafe impl ::windows::core::Abi for SHSTOCKICONINFO {
type Abi = Self;
}
#[cfg(target_arch = "x86")]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::default::Default for SHSTOCKICONINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct SLOWAPPINFO {
pub ullSize: u64,
pub ftLastUsed: super::super::Foundation::FILETIME,
pub iTimesUsed: i32,
pub pszImage: ::windows::core::PWSTR,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for SLOWAPPINFO {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for SLOWAPPINFO {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::fmt::Debug for SLOWAPPINFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SLOWAPPINFO").field("ullSize", &self.ullSize).field("ftLastUsed", &self.ftLastUsed).field("iTimesUsed", &self.iTimesUsed).field("pszImage", &self.pszImage).finish()
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for SLOWAPPINFO {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::PartialEq for SLOWAPPINFO {
fn eq(&self, other: &Self) -> bool {
self.ullSize == other.ullSize && self.ftLastUsed == other.ftLastUsed && self.iTimesUsed == other.iTimesUsed && self.pszImage == other.pszImage
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::Eq for SLOWAPPINFO {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for SLOWAPPINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub struct SMCSHCHANGENOTIFYSTRUCT {
pub lEvent: i32,
pub pidl1: *mut Common::ITEMIDLIST,
pub pidl2: *mut Common::ITEMIDLIST,
}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::marker::Copy for SMCSHCHANGENOTIFYSTRUCT {}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::clone::Clone for SMCSHCHANGENOTIFYSTRUCT {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::fmt::Debug for SMCSHCHANGENOTIFYSTRUCT {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SMCSHCHANGENOTIFYSTRUCT").field("lEvent", &self.lEvent).field("pidl1", &self.pidl1).field("pidl2", &self.pidl2).finish()
}
}
#[cfg(feature = "Win32_UI_Shell_Common")]
unsafe impl ::windows::core::Abi for SMCSHCHANGENOTIFYSTRUCT {
type Abi = Self;
}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::cmp::PartialEq for SMCSHCHANGENOTIFYSTRUCT {
fn eq(&self, other: &Self) -> bool {
self.lEvent == other.lEvent && self.pidl1 == other.pidl1 && self.pidl2 == other.pidl2
}
}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::cmp::Eq for SMCSHCHANGENOTIFYSTRUCT {}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::default::Default for SMCSHCHANGENOTIFYSTRUCT {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_WindowsAndMessaging"))]
pub struct SMDATA {
pub dwMask: u32,
pub dwFlags: u32,
pub hmenu: super::WindowsAndMessaging::HMENU,
pub hwnd: super::super::Foundation::HWND,
pub uId: u32,
pub uIdParent: u32,
pub uIdAncestor: u32,
pub punk: ::windows::core::ManuallyDrop<::windows::core::IUnknown>,
pub pidlFolder: *mut Common::ITEMIDLIST,
pub pidlItem: *mut Common::ITEMIDLIST,
pub psf: ::windows::core::ManuallyDrop<IShellFolder>,
pub pvUserData: *mut ::core::ffi::c_void,
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::clone::Clone for SMDATA {
fn clone(&self) -> Self {
unsafe { ::core::mem::transmute_copy(self) }
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::fmt::Debug for SMDATA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SMDATA").field("dwMask", &self.dwMask).field("dwFlags", &self.dwFlags).field("hmenu", &self.hmenu).field("hwnd", &self.hwnd).field("uId", &self.uId).field("uIdParent", &self.uIdParent).field("uIdAncestor", &self.uIdAncestor).field("punk", &self.punk).field("pidlFolder", &self.pidlFolder).field("pidlItem", &self.pidlItem).field("psf", &self.psf).field("pvUserData", &self.pvUserData).finish()
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_WindowsAndMessaging"))]
unsafe impl ::windows::core::Abi for SMDATA {
type Abi = Self;
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::cmp::PartialEq for SMDATA {
fn eq(&self, other: &Self) -> bool {
self.dwMask == other.dwMask && self.dwFlags == other.dwFlags && self.hmenu == other.hmenu && self.hwnd == other.hwnd && self.uId == other.uId && self.uIdParent == other.uIdParent && self.uIdAncestor == other.uIdAncestor && self.punk == other.punk && self.pidlFolder == other.pidlFolder && self.pidlItem == other.pidlItem && self.psf == other.psf && self.pvUserData == other.pvUserData
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::cmp::Eq for SMDATA {}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::default::Default for SMDATA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct SMINFO {
pub dwMask: u32,
pub dwType: u32,
pub dwFlags: u32,
pub iIcon: i32,
}
impl ::core::marker::Copy for SMINFO {}
impl ::core::clone::Clone for SMINFO {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for SMINFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SMINFO").field("dwMask", &self.dwMask).field("dwType", &self.dwType).field("dwFlags", &self.dwFlags).field("iIcon", &self.iIcon).finish()
}
}
unsafe impl ::windows::core::Abi for SMINFO {
type Abi = Self;
}
impl ::core::cmp::PartialEq for SMINFO {
fn eq(&self, other: &Self) -> bool {
self.dwMask == other.dwMask && self.dwType == other.dwType && self.dwFlags == other.dwFlags && self.iIcon == other.iIcon
}
}
impl ::core::cmp::Eq for SMINFO {}
impl ::core::default::Default for SMINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub struct SORTCOLUMN {
pub propkey: PropertiesSystem::PROPERTYKEY,
pub direction: SORTDIRECTION,
}
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
impl ::core::marker::Copy for SORTCOLUMN {}
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
impl ::core::clone::Clone for SORTCOLUMN {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
impl ::core::fmt::Debug for SORTCOLUMN {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SORTCOLUMN").field("propkey", &self.propkey).field("direction", &self.direction).finish()
}
}
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
unsafe impl ::windows::core::Abi for SORTCOLUMN {
type Abi = Self;
}
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
impl ::core::cmp::PartialEq for SORTCOLUMN {
fn eq(&self, other: &Self) -> bool {
self.propkey == other.propkey && self.direction == other.direction
}
}
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
impl ::core::cmp::Eq for SORTCOLUMN {}
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
impl ::core::default::Default for SORTCOLUMN {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub struct SV2CVW2_PARAMS {
pub cbSize: u32,
pub psvPrev: ::windows::core::ManuallyDrop<IShellView>,
pub pfs: *mut FOLDERSETTINGS,
pub psbOwner: ::windows::core::ManuallyDrop<IShellBrowser>,
pub prcView: *mut super::super::Foundation::RECT,
pub pvid: *const ::windows::core::GUID,
pub hwndView: super::super::Foundation::HWND,
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
impl ::core::clone::Clone for SV2CVW2_PARAMS {
fn clone(&self) -> Self {
unsafe { ::core::mem::transmute_copy(self) }
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
impl ::core::fmt::Debug for SV2CVW2_PARAMS {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SV2CVW2_PARAMS").field("cbSize", &self.cbSize).field("psvPrev", &self.psvPrev).field("pfs", &self.pfs).field("psbOwner", &self.psbOwner).field("prcView", &self.prcView).field("pvid", &self.pvid).field("hwndView", &self.hwndView).finish()
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
unsafe impl ::windows::core::Abi for SV2CVW2_PARAMS {
type Abi = Self;
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
impl ::core::cmp::PartialEq for SV2CVW2_PARAMS {
fn eq(&self, other: &Self) -> bool {
self.cbSize == other.cbSize && self.psvPrev == other.psvPrev && self.pfs == other.pfs && self.psbOwner == other.psbOwner && self.prcView == other.prcView && self.pvid == other.pvid && self.hwndView == other.hwndView
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
impl ::core::cmp::Eq for SV2CVW2_PARAMS {}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
impl ::core::default::Default for SV2CVW2_PARAMS {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub struct SYNCMGRHANDLERINFO {
pub cbSize: u32,
pub hIcon: super::WindowsAndMessaging::HICON,
pub SyncMgrHandlerFlags: u32,
pub wszHandlerName: [u16; 32],
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::marker::Copy for SYNCMGRHANDLERINFO {}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::clone::Clone for SYNCMGRHANDLERINFO {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::fmt::Debug for SYNCMGRHANDLERINFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SYNCMGRHANDLERINFO").field("cbSize", &self.cbSize).field("hIcon", &self.hIcon).field("SyncMgrHandlerFlags", &self.SyncMgrHandlerFlags).field("wszHandlerName", &self.wszHandlerName).finish()
}
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
unsafe impl ::windows::core::Abi for SYNCMGRHANDLERINFO {
type Abi = Self;
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::cmp::PartialEq for SYNCMGRHANDLERINFO {
fn eq(&self, other: &Self) -> bool {
self.cbSize == other.cbSize && self.hIcon == other.hIcon && self.SyncMgrHandlerFlags == other.SyncMgrHandlerFlags && self.wszHandlerName == other.wszHandlerName
}
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::cmp::Eq for SYNCMGRHANDLERINFO {}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::default::Default for SYNCMGRHANDLERINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
pub struct SYNCMGRITEM {
pub cbSize: u32,
pub dwFlags: u32,
pub ItemID: ::windows::core::GUID,
pub dwItemState: u32,
pub hIcon: super::WindowsAndMessaging::HICON,
pub wszItemName: [u16; 128],
pub ftLastUpdate: super::super::Foundation::FILETIME,
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::marker::Copy for SYNCMGRITEM {}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::clone::Clone for SYNCMGRITEM {
fn clone(&self) -> Self {
*self
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::fmt::Debug for SYNCMGRITEM {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SYNCMGRITEM").field("cbSize", &self.cbSize).field("dwFlags", &self.dwFlags).field("ItemID", &self.ItemID).field("dwItemState", &self.dwItemState).field("hIcon", &self.hIcon).field("wszItemName", &self.wszItemName).field("ftLastUpdate", &self.ftLastUpdate).finish()
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
unsafe impl ::windows::core::Abi for SYNCMGRITEM {
type Abi = Self;
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::cmp::PartialEq for SYNCMGRITEM {
fn eq(&self, other: &Self) -> bool {
self.cbSize == other.cbSize && self.dwFlags == other.dwFlags && self.ItemID == other.ItemID && self.dwItemState == other.dwItemState && self.hIcon == other.hIcon && self.wszItemName == other.wszItemName && self.ftLastUpdate == other.ftLastUpdate
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::cmp::Eq for SYNCMGRITEM {}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))]
impl ::core::default::Default for SYNCMGRITEM {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct SYNCMGRLOGERRORINFO {
pub cbSize: u32,
pub mask: u32,
pub dwSyncMgrErrorFlags: u32,
pub ErrorID: ::windows::core::GUID,
pub ItemID: ::windows::core::GUID,
}
impl ::core::marker::Copy for SYNCMGRLOGERRORINFO {}
impl ::core::clone::Clone for SYNCMGRLOGERRORINFO {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for SYNCMGRLOGERRORINFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SYNCMGRLOGERRORINFO").field("cbSize", &self.cbSize).field("mask", &self.mask).field("dwSyncMgrErrorFlags", &self.dwSyncMgrErrorFlags).field("ErrorID", &self.ErrorID).field("ItemID", &self.ItemID).finish()
}
}
unsafe impl ::windows::core::Abi for SYNCMGRLOGERRORINFO {
type Abi = Self;
}
impl ::core::cmp::PartialEq for SYNCMGRLOGERRORINFO {
fn eq(&self, other: &Self) -> bool {
self.cbSize == other.cbSize && self.mask == other.mask && self.dwSyncMgrErrorFlags == other.dwSyncMgrErrorFlags && self.ErrorID == other.ErrorID && self.ItemID == other.ItemID
}
}
impl ::core::cmp::Eq for SYNCMGRLOGERRORINFO {}
impl ::core::default::Default for SYNCMGRLOGERRORINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct SYNCMGRPROGRESSITEM {
pub cbSize: u32,
pub mask: u32,
pub lpcStatusText: ::windows::core::PCWSTR,
pub dwStatusType: u32,
pub iProgValue: i32,
pub iMaxValue: i32,
}
impl ::core::marker::Copy for SYNCMGRPROGRESSITEM {}
impl ::core::clone::Clone for SYNCMGRPROGRESSITEM {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for SYNCMGRPROGRESSITEM {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SYNCMGRPROGRESSITEM").field("cbSize", &self.cbSize).field("mask", &self.mask).field("lpcStatusText", &self.lpcStatusText).field("dwStatusType", &self.dwStatusType).field("iProgValue", &self.iProgValue).field("iMaxValue", &self.iMaxValue).finish()
}
}
unsafe impl ::windows::core::Abi for SYNCMGRPROGRESSITEM {
type Abi = Self;
}
impl ::core::cmp::PartialEq for SYNCMGRPROGRESSITEM {
fn eq(&self, other: &Self) -> bool {
self.cbSize == other.cbSize && self.mask == other.mask && self.lpcStatusText == other.lpcStatusText && self.dwStatusType == other.dwStatusType && self.iProgValue == other.iProgValue && self.iMaxValue == other.iMaxValue
}
}
impl ::core::cmp::Eq for SYNCMGRPROGRESSITEM {}
impl ::core::default::Default for SYNCMGRPROGRESSITEM {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"]
#[cfg(feature = "Win32_System_Com")]
pub struct SYNCMGR_CONFLICT_ID_INFO {
pub pblobID: *mut super::super::System::Com::BYTE_BLOB,
pub pblobExtra: *mut super::super::System::Com::BYTE_BLOB,
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::marker::Copy for SYNCMGR_CONFLICT_ID_INFO {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::clone::Clone for SYNCMGR_CONFLICT_ID_INFO {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::fmt::Debug for SYNCMGR_CONFLICT_ID_INFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("SYNCMGR_CONFLICT_ID_INFO").field("pblobID", &self.pblobID).field("pblobExtra", &self.pblobExtra).finish()
}
}
#[cfg(feature = "Win32_System_Com")]
unsafe impl ::windows::core::Abi for SYNCMGR_CONFLICT_ID_INFO {
type Abi = Self;
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::PartialEq for SYNCMGR_CONFLICT_ID_INFO {
fn eq(&self, other: &Self) -> bool {
self.pblobID == other.pblobID && self.pblobExtra == other.pblobExtra
}
}
#[cfg(feature = "Win32_System_Com")]
impl ::core::cmp::Eq for SYNCMGR_CONFLICT_ID_INFO {}
#[cfg(feature = "Win32_System_Com")]
impl ::core::default::Default for SYNCMGR_CONFLICT_ID_INFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ShFindChangeNotificationHandle(pub isize);
impl ShFindChangeNotificationHandle {
pub fn is_invalid(&self) -> bool {
self.0 == -1 || self.0 == 0
}
}
impl ::core::default::Default for ShFindChangeNotificationHandle {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
impl ::core::clone::Clone for ShFindChangeNotificationHandle {
fn clone(&self) -> Self {
*self
}
}
impl ::core::marker::Copy for ShFindChangeNotificationHandle {}
impl ::core::fmt::Debug for ShFindChangeNotificationHandle {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ShFindChangeNotificationHandle").field(&self.0).finish()
}
}
impl ::core::convert::From<::core::option::Option<ShFindChangeNotificationHandle>> for ShFindChangeNotificationHandle {
fn from(optional: ::core::option::Option<ShFindChangeNotificationHandle>) -> ShFindChangeNotificationHandle {
optional.unwrap_or_default()
}
}
unsafe impl ::windows::core::Abi for ShFindChangeNotificationHandle {
type Abi = Self;
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct TBINFO {
pub cbuttons: u32,
pub uFlags: u32,
}
impl ::core::marker::Copy for TBINFO {}
impl ::core::clone::Clone for TBINFO {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for TBINFO {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("TBINFO").field("cbuttons", &self.cbuttons).field("uFlags", &self.uFlags).finish()
}
}
unsafe impl ::windows::core::Abi for TBINFO {
type Abi = Self;
}
impl ::core::cmp::PartialEq for TBINFO {
fn eq(&self, other: &Self) -> bool {
self.cbuttons == other.cbuttons && self.uFlags == other.uFlags
}
}
impl ::core::cmp::Eq for TBINFO {}
impl ::core::default::Default for TBINFO {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_WindowsAndMessaging\"`*"]
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
pub struct THUMBBUTTON {
pub dwMask: THUMBBUTTONMASK,
pub iId: u32,
pub iBitmap: u32,
pub hIcon: super::WindowsAndMessaging::HICON,
pub szTip: [u16; 260],
pub dwFlags: THUMBBUTTONFLAGS,
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::marker::Copy for THUMBBUTTON {}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::clone::Clone for THUMBBUTTON {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::fmt::Debug for THUMBBUTTON {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("THUMBBUTTON").field("dwMask", &self.dwMask).field("iId", &self.iId).field("iBitmap", &self.iBitmap).field("hIcon", &self.hIcon).field("szTip", &self.szTip).field("dwFlags", &self.dwFlags).finish()
}
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
unsafe impl ::windows::core::Abi for THUMBBUTTON {
type Abi = Self;
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::cmp::PartialEq for THUMBBUTTON {
fn eq(&self, other: &Self) -> bool {
self.dwMask == other.dwMask && self.iId == other.iId && self.iBitmap == other.iBitmap && self.hIcon == other.hIcon && self.szTip == other.szTip && self.dwFlags == other.dwFlags
}
}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::cmp::Eq for THUMBBUTTON {}
#[cfg(feature = "Win32_UI_WindowsAndMessaging")]
impl ::core::default::Default for THUMBBUTTON {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole"))]
pub struct TOOLBARITEM {
pub ptbar: ::windows::core::ManuallyDrop<IDockingWindow>,
pub rcBorderTool: super::super::Foundation::RECT,
pub pwszItem: ::windows::core::PWSTR,
pub fShow: super::super::Foundation::BOOL,
pub hMon: super::super::Graphics::Gdi::HMONITOR,
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole"))]
impl ::core::clone::Clone for TOOLBARITEM {
fn clone(&self) -> Self {
unsafe { ::core::mem::transmute_copy(self) }
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole"))]
impl ::core::fmt::Debug for TOOLBARITEM {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("TOOLBARITEM").field("ptbar", &self.ptbar).field("rcBorderTool", &self.rcBorderTool).field("pwszItem", &self.pwszItem).field("fShow", &self.fShow).field("hMon", &self.hMon).finish()
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole"))]
unsafe impl ::windows::core::Abi for TOOLBARITEM {
type Abi = Self;
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole"))]
impl ::core::cmp::PartialEq for TOOLBARITEM {
fn eq(&self, other: &Self) -> bool {
self.ptbar == other.ptbar && self.rcBorderTool == other.rcBorderTool && self.pwszItem == other.pwszItem && self.fShow == other.fShow && self.hMon == other.hMon
}
}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole"))]
impl ::core::cmp::Eq for TOOLBARITEM {}
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_System_Ole"))]
impl ::core::default::Default for TOOLBARITEM {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct URLINVOKECOMMANDINFOA {
pub dwcbSize: u32,
pub dwFlags: u32,
pub hwndParent: super::super::Foundation::HWND,
pub pcszVerb: ::windows::core::PCSTR,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for URLINVOKECOMMANDINFOA {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for URLINVOKECOMMANDINFOA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::fmt::Debug for URLINVOKECOMMANDINFOA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("URLINVOKECOMMANDINFOA").field("dwcbSize", &self.dwcbSize).field("dwFlags", &self.dwFlags).field("hwndParent", &self.hwndParent).field("pcszVerb", &self.pcszVerb).finish()
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for URLINVOKECOMMANDINFOA {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::PartialEq for URLINVOKECOMMANDINFOA {
fn eq(&self, other: &Self) -> bool {
self.dwcbSize == other.dwcbSize && self.dwFlags == other.dwFlags && self.hwndParent == other.hwndParent && self.pcszVerb == other.pcszVerb
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::Eq for URLINVOKECOMMANDINFOA {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for URLINVOKECOMMANDINFOA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub struct URLINVOKECOMMANDINFOW {
pub dwcbSize: u32,
pub dwFlags: u32,
pub hwndParent: super::super::Foundation::HWND,
pub pcszVerb: ::windows::core::PCWSTR,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for URLINVOKECOMMANDINFOW {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for URLINVOKECOMMANDINFOW {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::fmt::Debug for URLINVOKECOMMANDINFOW {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("URLINVOKECOMMANDINFOW").field("dwcbSize", &self.dwcbSize).field("dwFlags", &self.dwFlags).field("hwndParent", &self.hwndParent).field("pcszVerb", &self.pcszVerb).finish()
}
}
#[cfg(feature = "Win32_Foundation")]
unsafe impl ::windows::core::Abi for URLINVOKECOMMANDINFOW {
type Abi = Self;
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::PartialEq for URLINVOKECOMMANDINFOW {
fn eq(&self, other: &Self) -> bool {
self.dwcbSize == other.dwcbSize && self.dwFlags == other.dwFlags && self.hwndParent == other.hwndParent && self.pcszVerb == other.pcszVerb
}
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::cmp::Eq for URLINVOKECOMMANDINFOW {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::default::Default for URLINVOKECOMMANDINFOW {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"]
#[cfg(feature = "Win32_UI_Shell_Common")]
pub struct WINDOWDATA {
pub dwWindowID: u32,
pub uiCP: u32,
pub pidl: *mut Common::ITEMIDLIST,
pub lpszUrl: ::windows::core::PWSTR,
pub lpszUrlLocation: ::windows::core::PWSTR,
pub lpszTitle: ::windows::core::PWSTR,
}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::marker::Copy for WINDOWDATA {}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::clone::Clone for WINDOWDATA {
fn clone(&self) -> Self {
*self
}
}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::fmt::Debug for WINDOWDATA {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("WINDOWDATA").field("dwWindowID", &self.dwWindowID).field("uiCP", &self.uiCP).field("pidl", &self.pidl).field("lpszUrl", &self.lpszUrl).field("lpszUrlLocation", &self.lpszUrlLocation).field("lpszTitle", &self.lpszTitle).finish()
}
}
#[cfg(feature = "Win32_UI_Shell_Common")]
unsafe impl ::windows::core::Abi for WINDOWDATA {
type Abi = Self;
}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::cmp::PartialEq for WINDOWDATA {
fn eq(&self, other: &Self) -> bool {
self.dwWindowID == other.dwWindowID && self.uiCP == other.uiCP && self.pidl == other.pidl && self.lpszUrl == other.lpszUrl && self.lpszUrlLocation == other.lpszUrlLocation && self.lpszTitle == other.lpszTitle
}
}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::cmp::Eq for WINDOWDATA {}
#[cfg(feature = "Win32_UI_Shell_Common")]
impl ::core::default::Default for WINDOWDATA {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub struct WTS_THUMBNAILID {
pub rgbKey: [u8; 16],
}
impl ::core::marker::Copy for WTS_THUMBNAILID {}
impl ::core::clone::Clone for WTS_THUMBNAILID {
fn clone(&self) -> Self {
*self
}
}
impl ::core::fmt::Debug for WTS_THUMBNAILID {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_struct("WTS_THUMBNAILID").field("rgbKey", &self.rgbKey).finish()
}
}
unsafe impl ::windows::core::Abi for WTS_THUMBNAILID {
type Abi = Self;
}
impl ::core::cmp::PartialEq for WTS_THUMBNAILID {
fn eq(&self, other: &Self) -> bool {
self.rgbKey == other.rgbKey
}
}
impl ::core::cmp::Eq for WTS_THUMBNAILID {}
impl ::core::default::Default for WTS_THUMBNAILID {
fn default() -> Self {
unsafe { ::core::mem::zeroed() }
}
}
#[repr(C)]
pub struct _APPCONSTRAIN_REGISTRATION(pub u8);
#[repr(C)]
pub struct _APPSTATE_REGISTRATION(pub u8);
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub type APPLET_PROC = ::core::option::Option<unsafe extern "system" fn(hwndcpl: super::super::Foundation::HWND, msg: u32, lparam1: super::super::Foundation::LPARAM, lparam2: super::super::Foundation::LPARAM) -> i32>;
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub type BFFCALLBACK = ::core::option::Option<unsafe extern "system" fn(hwnd: super::super::Foundation::HWND, umsg: u32, lparam: super::super::Foundation::LPARAM, lpdata: super::super::Foundation::LPARAM) -> i32>;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub type DLLGETVERSIONPROC = ::core::option::Option<unsafe extern "system" fn(param0: *mut DLLVERSIONINFO) -> ::windows::core::HRESULT>;
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
pub type LPFNDFMCALLBACK = ::core::option::Option<unsafe extern "system" fn(psf: ::core::option::Option<IShellFolder>, hwnd: super::super::Foundation::HWND, pdtobj: ::core::option::Option<super::super::System::Com::IDataObject>, umsg: u32, wparam: super::super::Foundation::WPARAM, lparam: super::super::Foundation::LPARAM) -> ::windows::core::HRESULT>;
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"]
#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
pub type LPFNVIEWCALLBACK = ::core::option::Option<unsafe extern "system" fn(psvouter: ::core::option::Option<IShellView>, psf: ::core::option::Option<IShellFolder>, hwndmain: super::super::Foundation::HWND, umsg: u32, wparam: super::super::Foundation::WPARAM, lparam: super::super::Foundation::LPARAM) -> ::windows::core::HRESULT>;
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub type PAPPCONSTRAIN_CHANGE_ROUTINE = ::core::option::Option<unsafe extern "system" fn(constrained: super::super::Foundation::BOOLEAN, context: *const ::core::ffi::c_void) -> ()>;
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub type PAPPSTATE_CHANGE_ROUTINE = ::core::option::Option<unsafe extern "system" fn(quiesced: super::super::Foundation::BOOLEAN, context: *const ::core::ffi::c_void) -> ()>;
#[doc = "*Required features: `\"Win32_UI_Shell\"`*"]
pub type PFNCANSHAREFOLDERW = ::core::option::Option<unsafe extern "system" fn(pszpath: ::windows::core::PCWSTR) -> ::windows::core::HRESULT>;
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub type PFNSHOWSHAREFOLDERUIW = ::core::option::Option<unsafe extern "system" fn(hwndparent: super::super::Foundation::HWND, pszpath: ::windows::core::PCWSTR) -> ::windows::core::HRESULT>;
#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"]
#[cfg(feature = "Win32_Foundation")]
pub type SUBCLASSPROC = ::core::option::Option<unsafe extern "system" fn(hwnd: super::super::Foundation::HWND, umsg: u32, wparam: super::super::Foundation::WPARAM, lparam: super::super::Foundation::LPARAM, uidsubclass: usize, dwrefdata: usize) -> super::super::Foundation::LRESULT>;
#[cfg(feature = "implement")]
::core::include!("impl.rs");