| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn CoGetInstanceFromFile<P0, P1>(pserverinfo: ::core::option::Option<*const super::COSERVERINFO>, pclsid: ::core::option::Option<*const ::windows::core::GUID>, punkouter: P0, dwclsctx: super::CLSCTX, grfmode: u32, pwszname: P1, presults: &mut [super::MULTI_QI]) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::IUnknown>, |
| P1: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn CoGetInstanceFromFile ( pserverinfo : *const super:: COSERVERINFO , pclsid : *const :: windows::core::GUID , punkouter : * mut::core::ffi::c_void , dwclsctx : super:: CLSCTX , grfmode : u32 , pwszname : :: windows::core::PCWSTR , dwcount : u32 , presults : *mut super:: MULTI_QI ) -> :: windows::core::HRESULT ); |
| CoGetInstanceFromFile(::core::mem::transmute(pserverinfo.unwrap_or(::std::ptr::null())), ::core::mem::transmute(pclsid.unwrap_or(::std::ptr::null())), punkouter.into_param().abi(), dwclsctx, grfmode, pwszname.into_param().abi(), presults.len() as _, ::core::mem::transmute(presults.as_ptr())).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn CoGetInstanceFromIStorage<P0, P1>(pserverinfo: ::core::option::Option<*const super::COSERVERINFO>, pclsid: ::core::option::Option<*const ::windows::core::GUID>, punkouter: P0, dwclsctx: super::CLSCTX, pstg: P1, presults: &mut [super::MULTI_QI]) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::IUnknown>, |
| P1: ::windows::core::IntoParam<IStorage>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn CoGetInstanceFromIStorage ( pserverinfo : *const super:: COSERVERINFO , pclsid : *const :: windows::core::GUID , punkouter : * mut::core::ffi::c_void , dwclsctx : super:: CLSCTX , pstg : * mut::core::ffi::c_void , dwcount : u32 , presults : *mut super:: MULTI_QI ) -> :: windows::core::HRESULT ); |
| CoGetInstanceFromIStorage(::core::mem::transmute(pserverinfo.unwrap_or(::std::ptr::null())), ::core::mem::transmute(pclsid.unwrap_or(::std::ptr::null())), punkouter.into_param().abi(), dwclsctx, pstg.into_param().abi(), presults.len() as _, ::core::mem::transmute(presults.as_ptr())).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn CoGetInterfaceAndReleaseStream<P0, T>(pstm: P0) -> ::windows::core::Result<T> |
| where |
| P0: ::windows::core::IntoParam<super::IStream>, |
| T: ::windows::core::ComInterface, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn CoGetInterfaceAndReleaseStream ( pstm : * mut::core::ffi::c_void , iid : *const :: windows::core::GUID , ppv : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::std::ptr::null_mut(); |
| CoGetInterfaceAndReleaseStream(pstm.into_param().abi(), &<T as ::windows::core::ComInterface>::IID, &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| #[inline] |
| pub unsafe fn CreateILockBytesOnHGlobal<P0, P1>(hglobal: P0, fdeleteonrelease: P1) -> ::windows::core::Result<ILockBytes> |
| where |
| P0: ::windows::core::IntoParam<super::super::super::Foundation::HGLOBAL>, |
| P1: ::windows::core::IntoParam<super::super::super::Foundation::BOOL>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn CreateILockBytesOnHGlobal ( hglobal : super::super::super::Foundation:: HGLOBAL , fdeleteonrelease : super::super::super::Foundation:: BOOL , pplkbyt : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<ILockBytes>(); |
| CreateILockBytesOnHGlobal(hglobal.into_param().abi(), fdeleteonrelease.into_param().abi(), &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| #[inline] |
| pub unsafe fn CreateStreamOnHGlobal<P0, P1>(hglobal: P0, fdeleteonrelease: P1) -> ::windows::core::Result<super::IStream> |
| where |
| P0: ::windows::core::IntoParam<super::super::super::Foundation::HGLOBAL>, |
| P1: ::windows::core::IntoParam<super::super::super::Foundation::BOOL>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn CreateStreamOnHGlobal ( hglobal : super::super::super::Foundation:: HGLOBAL , fdeleteonrelease : super::super::super::Foundation:: BOOL , ppstm : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<super::IStream>(); |
| CreateStreamOnHGlobal(hglobal.into_param().abi(), fdeleteonrelease.into_param().abi(), &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn FmtIdToPropStgName(pfmtid: *const ::windows::core::GUID, oszname: ::windows::core::PWSTR) -> ::windows::core::Result<()> { |
| ::windows::imp::link ! ( "ole32.dll""system" fn FmtIdToPropStgName ( pfmtid : *const :: windows::core::GUID , oszname : :: windows::core::PWSTR ) -> :: windows::core::HRESULT ); |
| FmtIdToPropStgName(pfmtid, ::core::mem::transmute(oszname)).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| #[inline] |
| pub unsafe fn FreePropVariantArray(rgvars: &mut [PROPVARIANT]) -> ::windows::core::Result<()> { |
| ::windows::imp::link ! ( "ole32.dll""system" fn FreePropVariantArray ( cvariants : u32 , rgvars : *mut PROPVARIANT ) -> :: windows::core::HRESULT ); |
| FreePropVariantArray(rgvars.len() as _, ::core::mem::transmute(rgvars.as_ptr())).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn GetConvertStg<P0>(pstg: P0) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<IStorage>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn GetConvertStg ( pstg : * mut::core::ffi::c_void ) -> :: windows::core::HRESULT ); |
| GetConvertStg(pstg.into_param().abi()).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| #[inline] |
| pub unsafe fn GetHGlobalFromILockBytes<P0>(plkbyt: P0) -> ::windows::core::Result<super::super::super::Foundation::HGLOBAL> |
| where |
| P0: ::windows::core::IntoParam<ILockBytes>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn GetHGlobalFromILockBytes ( plkbyt : * mut::core::ffi::c_void , phglobal : *mut super::super::super::Foundation:: HGLOBAL ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<super::super::super::Foundation::HGLOBAL>(); |
| GetHGlobalFromILockBytes(plkbyt.into_param().abi(), &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| #[inline] |
| pub unsafe fn GetHGlobalFromStream<P0>(pstm: P0) -> ::windows::core::Result<super::super::super::Foundation::HGLOBAL> |
| where |
| P0: ::windows::core::IntoParam<super::IStream>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn GetHGlobalFromStream ( pstm : * mut::core::ffi::c_void , phglobal : *mut super::super::super::Foundation:: HGLOBAL ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<super::super::super::Foundation::HGLOBAL>(); |
| GetHGlobalFromStream(pstm.into_param().abi(), &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn OleConvertIStorageToOLESTREAM<P0>(pstg: P0) -> ::windows::core::Result<OLESTREAM> |
| where |
| P0: ::windows::core::IntoParam<IStorage>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn OleConvertIStorageToOLESTREAM ( pstg : * mut::core::ffi::c_void , lpolestream : *mut OLESTREAM ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<OLESTREAM>(); |
| OleConvertIStorageToOLESTREAM(pstg.into_param().abi(), &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] |
| #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] |
| #[inline] |
| pub unsafe fn OleConvertIStorageToOLESTREAMEx<P0>(pstg: P0, cfformat: u16, lwidth: i32, lheight: i32, dwsize: u32, pmedium: *const super::STGMEDIUM) -> ::windows::core::Result<OLESTREAM> |
| where |
| P0: ::windows::core::IntoParam<IStorage>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn OleConvertIStorageToOLESTREAMEx ( pstg : * mut::core::ffi::c_void , cfformat : u16 , lwidth : i32 , lheight : i32 , dwsize : u32 , pmedium : *const super:: STGMEDIUM , polestm : *mut OLESTREAM ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<OLESTREAM>(); |
| OleConvertIStorageToOLESTREAMEx(pstg.into_param().abi(), cfformat, lwidth, lheight, dwsize, pmedium, &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn OleConvertOLESTREAMToIStorage<P0>(lpolestream: *const OLESTREAM, pstg: P0, ptd: *const super::DVTARGETDEVICE) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<IStorage>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn OleConvertOLESTREAMToIStorage ( lpolestream : *const OLESTREAM , pstg : * mut::core::ffi::c_void , ptd : *const super:: DVTARGETDEVICE ) -> :: windows::core::HRESULT ); |
| OleConvertOLESTREAMToIStorage(lpolestream, pstg.into_param().abi(), ptd).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] |
| #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] |
| #[inline] |
| pub unsafe fn OleConvertOLESTREAMToIStorageEx<P0>(polestm: *const OLESTREAM, pstg: P0, pcfformat: *mut u16, plwwidth: *mut i32, plheight: *mut i32, pdwsize: *mut u32, pmedium: *mut super::STGMEDIUM) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<IStorage>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn OleConvertOLESTREAMToIStorageEx ( polestm : *const OLESTREAM , pstg : * mut::core::ffi::c_void , pcfformat : *mut u16 , plwwidth : *mut i32 , plheight : *mut i32 , pdwsize : *mut u32 , pmedium : *mut super:: STGMEDIUM ) -> :: windows::core::HRESULT ); |
| OleConvertOLESTREAMToIStorageEx(polestm, pstg.into_param().abi(), pcfformat, plwwidth, plheight, pdwsize, pmedium).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn PropStgNameToFmtId<P0>(oszname: P0) -> ::windows::core::Result<::windows::core::GUID> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn PropStgNameToFmtId ( oszname : :: windows::core::PCWSTR , pfmtid : *mut :: windows::core::GUID ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<::windows::core::GUID>(); |
| PropStgNameToFmtId(oszname.into_param().abi(), &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| #[inline] |
| pub unsafe fn PropVariantClear(pvar: *mut PROPVARIANT) -> ::windows::core::Result<()> { |
| ::windows::imp::link ! ( "ole32.dll""system" fn PropVariantClear ( pvar : *mut PROPVARIANT ) -> :: windows::core::HRESULT ); |
| PropVariantClear(pvar).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| #[inline] |
| pub unsafe fn PropVariantCopy(pvardest: *mut PROPVARIANT, pvarsrc: *const PROPVARIANT) -> ::windows::core::Result<()> { |
| ::windows::imp::link ! ( "ole32.dll""system" fn PropVariantCopy ( pvardest : *mut PROPVARIANT , pvarsrc : *const PROPVARIANT ) -> :: windows::core::HRESULT ); |
| PropVariantCopy(pvardest, pvarsrc).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn ReadClassStg<P0>(pstg: P0) -> ::windows::core::Result<::windows::core::GUID> |
| where |
| P0: ::windows::core::IntoParam<IStorage>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn ReadClassStg ( pstg : * mut::core::ffi::c_void , pclsid : *mut :: windows::core::GUID ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<::windows::core::GUID>(); |
| ReadClassStg(pstg.into_param().abi(), &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn ReadClassStm<P0>(pstm: P0) -> ::windows::core::Result<::windows::core::GUID> |
| where |
| P0: ::windows::core::IntoParam<super::IStream>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn ReadClassStm ( pstm : * mut::core::ffi::c_void , pclsid : *mut :: windows::core::GUID ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<::windows::core::GUID>(); |
| ReadClassStm(pstm.into_param().abi(), &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn ReadFmtUserTypeStg<P0>(pstg: P0, pcf: *mut u16, lplpszusertype: ::core::option::Option<*mut ::windows::core::PWSTR>) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<IStorage>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn ReadFmtUserTypeStg ( pstg : * mut::core::ffi::c_void , pcf : *mut u16 , lplpszusertype : *mut :: windows::core::PWSTR ) -> :: windows::core::HRESULT ); |
| ReadFmtUserTypeStg(pstg.into_param().abi(), pcf, ::core::mem::transmute(lplpszusertype.unwrap_or(::std::ptr::null_mut()))).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| #[inline] |
| pub unsafe fn SetConvertStg<P0, P1>(pstg: P0, fconvert: P1) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<IStorage>, |
| P1: ::windows::core::IntoParam<super::super::super::Foundation::BOOL>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn SetConvertStg ( pstg : * mut::core::ffi::c_void , fconvert : super::super::super::Foundation:: BOOL ) -> :: windows::core::HRESULT ); |
| SetConvertStg(pstg.into_param().abi(), fconvert.into_param().abi()).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| #[inline] |
| pub unsafe fn StgConvertPropertyToVariant(pprop: *const SERIALIZEDPROPERTYVALUE, codepage: u16, pvar: *mut PROPVARIANT, pma: *const PMemoryAllocator) -> super::super::super::Foundation::BOOLEAN { |
| ::windows::imp::link ! ( "ole32.dll""system" fn StgConvertPropertyToVariant ( pprop : *const SERIALIZEDPROPERTYVALUE , codepage : u16 , pvar : *mut PROPVARIANT , pma : *const PMemoryAllocator ) -> super::super::super::Foundation:: BOOLEAN ); |
| StgConvertPropertyToVariant(pprop, codepage, pvar, pma) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| #[inline] |
| pub unsafe fn StgConvertVariantToProperty<P0>(pvar: *const PROPVARIANT, codepage: u16, pprop: ::core::option::Option<*mut SERIALIZEDPROPERTYVALUE>, pcb: *mut u32, pid: u32, freserved: P0, pcindirect: ::core::option::Option<*mut u32>) -> *mut SERIALIZEDPROPERTYVALUE |
| where |
| P0: ::windows::core::IntoParam<super::super::super::Foundation::BOOLEAN>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn StgConvertVariantToProperty ( pvar : *const PROPVARIANT , codepage : u16 , pprop : *mut SERIALIZEDPROPERTYVALUE , pcb : *mut u32 , pid : u32 , freserved : super::super::super::Foundation:: BOOLEAN , pcindirect : *mut u32 ) -> *mut SERIALIZEDPROPERTYVALUE ); |
| StgConvertVariantToProperty(pvar, codepage, ::core::mem::transmute(pprop.unwrap_or(::std::ptr::null_mut())), pcb, pid, freserved.into_param().abi(), ::core::mem::transmute(pcindirect.unwrap_or(::std::ptr::null_mut()))) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn StgCreateDocfile<P0>(pwcsname: P0, grfmode: super::STGM, reserved: u32) -> ::windows::core::Result<IStorage> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn StgCreateDocfile ( pwcsname : :: windows::core::PCWSTR , grfmode : super:: STGM , reserved : u32 , ppstgopen : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<IStorage>(); |
| StgCreateDocfile(pwcsname.into_param().abi(), grfmode, reserved, &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn StgCreateDocfileOnILockBytes<P0>(plkbyt: P0, grfmode: super::STGM, reserved: u32) -> ::windows::core::Result<IStorage> |
| where |
| P0: ::windows::core::IntoParam<ILockBytes>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn StgCreateDocfileOnILockBytes ( plkbyt : * mut::core::ffi::c_void , grfmode : super:: STGM , reserved : u32 , ppstgopen : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<IStorage>(); |
| StgCreateDocfileOnILockBytes(plkbyt.into_param().abi(), grfmode, reserved, &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn StgCreatePropSetStg<P0>(pstorage: P0, dwreserved: u32) -> ::windows::core::Result<IPropertySetStorage> |
| where |
| P0: ::windows::core::IntoParam<IStorage>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn StgCreatePropSetStg ( pstorage : * mut::core::ffi::c_void , dwreserved : u32 , pppropsetstg : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<IPropertySetStorage>(); |
| StgCreatePropSetStg(pstorage.into_param().abi(), dwreserved, &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn StgCreatePropStg<P0>(punk: P0, fmtid: *const ::windows::core::GUID, pclsid: *const ::windows::core::GUID, grfflags: u32, dwreserved: u32) -> ::windows::core::Result<IPropertyStorage> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::IUnknown>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn StgCreatePropStg ( punk : * mut::core::ffi::c_void , fmtid : *const :: windows::core::GUID , pclsid : *const :: windows::core::GUID , grfflags : u32 , dwreserved : u32 , pppropstg : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<IPropertyStorage>(); |
| StgCreatePropStg(punk.into_param().abi(), fmtid, pclsid, grfflags, dwreserved, &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Security\"`*"] |
| #[cfg(feature = "Win32_Security")] |
| #[inline] |
| pub unsafe fn StgCreateStorageEx<P0, P1>(pwcsname: P0, grfmode: super::STGM, stgfmt: STGFMT, grfattrs: u32, pstgoptions: ::core::option::Option<*mut STGOPTIONS>, psecuritydescriptor: P1, riid: *const ::windows::core::GUID, ppobjectopen: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| P1: ::windows::core::IntoParam<super::super::super::Security::PSECURITY_DESCRIPTOR>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn StgCreateStorageEx ( pwcsname : :: windows::core::PCWSTR , grfmode : super:: STGM , stgfmt : STGFMT , grfattrs : u32 , pstgoptions : *mut STGOPTIONS , psecuritydescriptor : super::super::super::Security:: PSECURITY_DESCRIPTOR , riid : *const :: windows::core::GUID , ppobjectopen : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT ); |
| StgCreateStorageEx(pwcsname.into_param().abi(), grfmode, stgfmt, grfattrs, ::core::mem::transmute(pstgoptions.unwrap_or(::std::ptr::null_mut())), psecuritydescriptor.into_param().abi(), riid, ppobjectopen).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| #[inline] |
| pub unsafe fn StgDeserializePropVariant(pprop: *const SERIALIZEDPROPERTYVALUE, cbmax: u32) -> ::windows::core::Result<PROPVARIANT> { |
| ::windows::imp::link ! ( "propsys.dll""system" fn StgDeserializePropVariant ( pprop : *const SERIALIZEDPROPERTYVALUE , cbmax : u32 , ppropvar : *mut PROPVARIANT ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<PROPVARIANT>(); |
| StgDeserializePropVariant(pprop, cbmax, &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn StgGetIFillLockBytesOnFile<P0>(pwcsname: P0) -> ::windows::core::Result<IFillLockBytes> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn StgGetIFillLockBytesOnFile ( pwcsname : :: windows::core::PCWSTR , ppflb : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<IFillLockBytes>(); |
| StgGetIFillLockBytesOnFile(pwcsname.into_param().abi(), &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn StgGetIFillLockBytesOnILockBytes<P0>(pilb: P0) -> ::windows::core::Result<IFillLockBytes> |
| where |
| P0: ::windows::core::IntoParam<ILockBytes>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn StgGetIFillLockBytesOnILockBytes ( pilb : * mut::core::ffi::c_void , ppflb : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<IFillLockBytes>(); |
| StgGetIFillLockBytesOnILockBytes(pilb.into_param().abi(), &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn StgIsStorageFile<P0>(pwcsname: P0) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn StgIsStorageFile ( pwcsname : :: windows::core::PCWSTR ) -> :: windows::core::HRESULT ); |
| StgIsStorageFile(pwcsname.into_param().abi()).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn StgIsStorageILockBytes<P0>(plkbyt: P0) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<ILockBytes>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn StgIsStorageILockBytes ( plkbyt : * mut::core::ffi::c_void ) -> :: windows::core::HRESULT ); |
| StgIsStorageILockBytes(plkbyt.into_param().abi()).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn StgOpenAsyncDocfileOnIFillLockBytes<P0>(pflb: P0, grfmode: u32, asyncflags: u32) -> ::windows::core::Result<IStorage> |
| where |
| P0: ::windows::core::IntoParam<IFillLockBytes>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn StgOpenAsyncDocfileOnIFillLockBytes ( pflb : * mut::core::ffi::c_void , grfmode : u32 , asyncflags : u32 , ppstgopen : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<IStorage>(); |
| StgOpenAsyncDocfileOnIFillLockBytes(pflb.into_param().abi(), grfmode, asyncflags, &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn StgOpenLayoutDocfile<P0>(pwcsdfname: P0, grfmode: u32, reserved: u32) -> ::windows::core::Result<IStorage> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| { |
| ::windows::imp::link ! ( "dflayout.dll""system" fn StgOpenLayoutDocfile ( pwcsdfname : :: windows::core::PCWSTR , grfmode : u32 , reserved : u32 , ppstgopen : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<IStorage>(); |
| StgOpenLayoutDocfile(pwcsdfname.into_param().abi(), grfmode, reserved, &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn StgOpenPropStg<P0>(punk: P0, fmtid: *const ::windows::core::GUID, grfflags: u32, dwreserved: u32) -> ::windows::core::Result<IPropertyStorage> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::IUnknown>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn StgOpenPropStg ( punk : * mut::core::ffi::c_void , fmtid : *const :: windows::core::GUID , grfflags : u32 , dwreserved : u32 , pppropstg : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<IPropertyStorage>(); |
| StgOpenPropStg(punk.into_param().abi(), fmtid, grfflags, dwreserved, &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn StgOpenStorage<P0, P1>(pwcsname: P0, pstgpriority: P1, grfmode: super::STGM, snbexclude: ::core::option::Option<*const *const u16>, reserved: u32) -> ::windows::core::Result<IStorage> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| P1: ::windows::core::IntoParam<IStorage>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn StgOpenStorage ( pwcsname : :: windows::core::PCWSTR , pstgpriority : * mut::core::ffi::c_void , grfmode : super:: STGM , snbexclude : *const *const u16 , reserved : u32 , ppstgopen : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<IStorage>(); |
| StgOpenStorage(pwcsname.into_param().abi(), pstgpriority.into_param().abi(), grfmode, ::core::mem::transmute(snbexclude.unwrap_or(::std::ptr::null())), reserved, &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Security\"`*"] |
| #[cfg(feature = "Win32_Security")] |
| #[inline] |
| pub unsafe fn StgOpenStorageEx<P0, P1>(pwcsname: P0, grfmode: super::STGM, stgfmt: STGFMT, grfattrs: u32, pstgoptions: ::core::option::Option<*mut STGOPTIONS>, psecuritydescriptor: P1, riid: *const ::windows::core::GUID, ppobjectopen: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| P1: ::windows::core::IntoParam<super::super::super::Security::PSECURITY_DESCRIPTOR>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn StgOpenStorageEx ( pwcsname : :: windows::core::PCWSTR , grfmode : super:: STGM , stgfmt : STGFMT , grfattrs : u32 , pstgoptions : *mut STGOPTIONS , psecuritydescriptor : super::super::super::Security:: PSECURITY_DESCRIPTOR , riid : *const :: windows::core::GUID , ppobjectopen : *mut *mut ::core::ffi::c_void ) -> :: windows::core::HRESULT ); |
| StgOpenStorageEx(pwcsname.into_param().abi(), grfmode, stgfmt, grfattrs, ::core::mem::transmute(pstgoptions.unwrap_or(::std::ptr::null_mut())), psecuritydescriptor.into_param().abi(), riid, ppobjectopen).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn StgOpenStorageOnILockBytes<P0, P1>(plkbyt: P0, pstgpriority: P1, grfmode: super::STGM, snbexclude: ::core::option::Option<*const *const u16>, reserved: u32) -> ::windows::core::Result<IStorage> |
| where |
| P0: ::windows::core::IntoParam<ILockBytes>, |
| P1: ::windows::core::IntoParam<IStorage>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn StgOpenStorageOnILockBytes ( plkbyt : * mut::core::ffi::c_void , pstgpriority : * mut::core::ffi::c_void , grfmode : super:: STGM , snbexclude : *const *const u16 , reserved : u32 , ppstgopen : *mut * mut::core::ffi::c_void ) -> :: windows::core::HRESULT ); |
| let mut result__ = ::windows::core::zeroed::<IStorage>(); |
| StgOpenStorageOnILockBytes(plkbyt.into_param().abi(), pstgpriority.into_param().abi(), grfmode, ::core::mem::transmute(snbexclude.unwrap_or(::std::ptr::null())), reserved, &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn StgPropertyLengthAsVariant(pprop: *const SERIALIZEDPROPERTYVALUE, cbprop: u32, codepage: u16, breserved: u8) -> u32 { |
| ::windows::imp::link ! ( "ole32.dll""system" fn StgPropertyLengthAsVariant ( pprop : *const SERIALIZEDPROPERTYVALUE , cbprop : u32 , codepage : u16 , breserved : u8 ) -> u32 ); |
| StgPropertyLengthAsVariant(pprop, cbprop, codepage, breserved) |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| #[inline] |
| pub unsafe fn StgSerializePropVariant(ppropvar: *const PROPVARIANT, ppprop: *mut *mut SERIALIZEDPROPERTYVALUE, pcb: *mut u32) -> ::windows::core::Result<()> { |
| ::windows::imp::link ! ( "propsys.dll""system" fn StgSerializePropVariant ( ppropvar : *const PROPVARIANT , ppprop : *mut *mut SERIALIZEDPROPERTYVALUE , pcb : *mut u32 ) -> :: windows::core::HRESULT ); |
| StgSerializePropVariant(ppropvar, ppprop, pcb).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| #[inline] |
| pub unsafe fn StgSetTimes<P0>(lpszname: P0, pctime: ::core::option::Option<*const super::super::super::Foundation::FILETIME>, patime: ::core::option::Option<*const super::super::super::Foundation::FILETIME>, pmtime: ::core::option::Option<*const super::super::super::Foundation::FILETIME>) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn StgSetTimes ( lpszname : :: windows::core::PCWSTR , pctime : *const super::super::super::Foundation:: FILETIME , patime : *const super::super::super::Foundation:: FILETIME , pmtime : *const super::super::super::Foundation:: FILETIME ) -> :: windows::core::HRESULT ); |
| StgSetTimes(lpszname.into_param().abi(), ::core::mem::transmute(pctime.unwrap_or(::std::ptr::null())), ::core::mem::transmute(patime.unwrap_or(::std::ptr::null())), ::core::mem::transmute(pmtime.unwrap_or(::std::ptr::null()))).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn WriteClassStg<P0>(pstg: P0, rclsid: *const ::windows::core::GUID) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<IStorage>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn WriteClassStg ( pstg : * mut::core::ffi::c_void , rclsid : *const :: windows::core::GUID ) -> :: windows::core::HRESULT ); |
| WriteClassStg(pstg.into_param().abi(), rclsid).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn WriteClassStm<P0>(pstm: P0, rclsid: *const ::windows::core::GUID) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<super::IStream>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn WriteClassStm ( pstm : * mut::core::ffi::c_void , rclsid : *const :: windows::core::GUID ) -> :: windows::core::HRESULT ); |
| WriteClassStm(pstm.into_param().abi(), rclsid).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[inline] |
| pub unsafe fn WriteFmtUserTypeStg<P0, P1>(pstg: P0, cf: u16, lpszusertype: P1) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<IStorage>, |
| P1: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| { |
| ::windows::imp::link ! ( "ole32.dll""system" fn WriteFmtUserTypeStg ( pstg : * mut::core::ffi::c_void , cf : u16 , lpszusertype : :: windows::core::PCWSTR ) -> :: windows::core::HRESULT ); |
| WriteFmtUserTypeStg(pstg.into_param().abi(), cf, lpszusertype.into_param().abi()).ok() |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[repr(transparent)] |
| pub struct IDirectWriterLock(::windows::core::IUnknown); |
| impl IDirectWriterLock { |
| pub unsafe fn WaitForWriteAccess(&self, dwtimeout: u32) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).WaitForWriteAccess)(::windows::core::Interface::as_raw(self), dwtimeout).ok() |
| } |
| pub unsafe fn ReleaseWriteAccess(&self) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).ReleaseWriteAccess)(::windows::core::Interface::as_raw(self)).ok() |
| } |
| pub unsafe fn HaveWriteAccess(&self) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).HaveWriteAccess)(::windows::core::Interface::as_raw(self)).ok() |
| } |
| } |
| ::windows::imp::interface_hierarchy!(IDirectWriterLock, ::windows::core::IUnknown); |
| impl ::core::cmp::PartialEq for IDirectWriterLock { |
| fn eq(&self, other: &Self) -> bool { |
| self.0 == other.0 |
| } |
| } |
| impl ::core::cmp::Eq for IDirectWriterLock {} |
| impl ::core::fmt::Debug for IDirectWriterLock { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_tuple("IDirectWriterLock").field(&self.0).finish() |
| } |
| } |
| unsafe impl ::windows::core::Interface for IDirectWriterLock { |
| type Vtable = IDirectWriterLock_Vtbl; |
| } |
| impl ::core::clone::Clone for IDirectWriterLock { |
| fn clone(&self) -> Self { |
| Self(self.0.clone()) |
| } |
| } |
| unsafe impl ::windows::core::ComInterface for IDirectWriterLock { |
| const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0e6d4d92_6738_11cf_9608_00aa00680db4); |
| } |
| #[repr(C)] |
| #[doc(hidden)] |
| pub struct IDirectWriterLock_Vtbl { |
| pub base__: ::windows::core::IUnknown_Vtbl, |
| pub WaitForWriteAccess: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwtimeout: u32) -> ::windows::core::HRESULT, |
| pub ReleaseWriteAccess: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| pub HaveWriteAccess: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[repr(transparent)] |
| pub struct IEnumSTATPROPSETSTG(::windows::core::IUnknown); |
| impl IEnumSTATPROPSETSTG { |
| #[doc = "*Required features: `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| pub unsafe fn Next(&self, rgelt: &mut [STATPROPSETSTG], pceltfetched: ::core::option::Option<*mut u32>) -> ::windows::core::HRESULT { |
| (::windows::core::Interface::vtable(self).Next)(::windows::core::Interface::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::Interface::vtable(self).Skip)(::windows::core::Interface::as_raw(self), celt) |
| } |
| pub unsafe fn Reset(&self) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).Reset)(::windows::core::Interface::as_raw(self)).ok() |
| } |
| pub unsafe fn Clone(&self) -> ::windows::core::Result<IEnumSTATPROPSETSTG> { |
| let mut result__ = ::windows::core::zeroed::<IEnumSTATPROPSETSTG>(); |
| (::windows::core::Interface::vtable(self).Clone)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__) |
| } |
| } |
| ::windows::imp::interface_hierarchy!(IEnumSTATPROPSETSTG, ::windows::core::IUnknown); |
| impl ::core::cmp::PartialEq for IEnumSTATPROPSETSTG { |
| fn eq(&self, other: &Self) -> bool { |
| self.0 == other.0 |
| } |
| } |
| impl ::core::cmp::Eq for IEnumSTATPROPSETSTG {} |
| impl ::core::fmt::Debug for IEnumSTATPROPSETSTG { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_tuple("IEnumSTATPROPSETSTG").field(&self.0).finish() |
| } |
| } |
| unsafe impl ::windows::core::Interface for IEnumSTATPROPSETSTG { |
| type Vtable = IEnumSTATPROPSETSTG_Vtbl; |
| } |
| impl ::core::clone::Clone for IEnumSTATPROPSETSTG { |
| fn clone(&self) -> Self { |
| Self(self.0.clone()) |
| } |
| } |
| unsafe impl ::windows::core::ComInterface for IEnumSTATPROPSETSTG { |
| const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0000013b_0000_0000_c000_000000000046); |
| } |
| #[repr(C)] |
| #[doc(hidden)] |
| pub struct IEnumSTATPROPSETSTG_Vtbl { |
| pub base__: ::windows::core::IUnknown_Vtbl, |
| #[cfg(feature = "Win32_Foundation")] |
| pub Next: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32, rgelt: *mut STATPROPSETSTG, pceltfetched: *mut u32) -> ::windows::core::HRESULT, |
| #[cfg(not(feature = "Win32_Foundation"))] |
| 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_System_Com_StructuredStorage\"`*"] |
| #[repr(transparent)] |
| pub struct IEnumSTATPROPSTG(::windows::core::IUnknown); |
| impl IEnumSTATPROPSTG { |
| pub unsafe fn Next(&self, rgelt: &mut [STATPROPSTG], pceltfetched: ::core::option::Option<*mut u32>) -> ::windows::core::HRESULT { |
| (::windows::core::Interface::vtable(self).Next)(::windows::core::Interface::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::Interface::vtable(self).Skip)(::windows::core::Interface::as_raw(self), celt) |
| } |
| pub unsafe fn Reset(&self) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).Reset)(::windows::core::Interface::as_raw(self)).ok() |
| } |
| pub unsafe fn Clone(&self) -> ::windows::core::Result<IEnumSTATPROPSTG> { |
| let mut result__ = ::windows::core::zeroed::<IEnumSTATPROPSTG>(); |
| (::windows::core::Interface::vtable(self).Clone)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__) |
| } |
| } |
| ::windows::imp::interface_hierarchy!(IEnumSTATPROPSTG, ::windows::core::IUnknown); |
| impl ::core::cmp::PartialEq for IEnumSTATPROPSTG { |
| fn eq(&self, other: &Self) -> bool { |
| self.0 == other.0 |
| } |
| } |
| impl ::core::cmp::Eq for IEnumSTATPROPSTG {} |
| impl ::core::fmt::Debug for IEnumSTATPROPSTG { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_tuple("IEnumSTATPROPSTG").field(&self.0).finish() |
| } |
| } |
| unsafe impl ::windows::core::Interface for IEnumSTATPROPSTG { |
| type Vtable = IEnumSTATPROPSTG_Vtbl; |
| } |
| impl ::core::clone::Clone for IEnumSTATPROPSTG { |
| fn clone(&self) -> Self { |
| Self(self.0.clone()) |
| } |
| } |
| unsafe impl ::windows::core::ComInterface for IEnumSTATPROPSTG { |
| const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00000139_0000_0000_c000_000000000046); |
| } |
| #[repr(C)] |
| #[doc(hidden)] |
| pub struct IEnumSTATPROPSTG_Vtbl { |
| pub base__: ::windows::core::IUnknown_Vtbl, |
| pub Next: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32, rgelt: *mut STATPROPSTG, 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_System_Com_StructuredStorage\"`*"] |
| #[repr(transparent)] |
| pub struct IEnumSTATSTG(::windows::core::IUnknown); |
| impl IEnumSTATSTG { |
| #[doc = "*Required features: `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| pub unsafe fn Next(&self, rgelt: &mut [super::STATSTG], pceltfetched: ::core::option::Option<*mut u32>) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).Next)(::windows::core::Interface::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::Interface::vtable(self).Skip)(::windows::core::Interface::as_raw(self), celt).ok() |
| } |
| pub unsafe fn Reset(&self) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).Reset)(::windows::core::Interface::as_raw(self)).ok() |
| } |
| pub unsafe fn Clone(&self) -> ::windows::core::Result<IEnumSTATSTG> { |
| let mut result__ = ::windows::core::zeroed::<IEnumSTATSTG>(); |
| (::windows::core::Interface::vtable(self).Clone)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__) |
| } |
| } |
| ::windows::imp::interface_hierarchy!(IEnumSTATSTG, ::windows::core::IUnknown); |
| impl ::core::cmp::PartialEq for IEnumSTATSTG { |
| fn eq(&self, other: &Self) -> bool { |
| self.0 == other.0 |
| } |
| } |
| impl ::core::cmp::Eq for IEnumSTATSTG {} |
| impl ::core::fmt::Debug for IEnumSTATSTG { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_tuple("IEnumSTATSTG").field(&self.0).finish() |
| } |
| } |
| unsafe impl ::windows::core::Interface for IEnumSTATSTG { |
| type Vtable = IEnumSTATSTG_Vtbl; |
| } |
| impl ::core::clone::Clone for IEnumSTATSTG { |
| fn clone(&self) -> Self { |
| Self(self.0.clone()) |
| } |
| } |
| unsafe impl ::windows::core::ComInterface for IEnumSTATSTG { |
| const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0000000d_0000_0000_c000_000000000046); |
| } |
| #[repr(C)] |
| #[doc(hidden)] |
| pub struct IEnumSTATSTG_Vtbl { |
| pub base__: ::windows::core::IUnknown_Vtbl, |
| #[cfg(feature = "Win32_Foundation")] |
| pub Next: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, celt: u32, rgelt: *mut super::STATSTG, pceltfetched: *mut u32) -> ::windows::core::HRESULT, |
| #[cfg(not(feature = "Win32_Foundation"))] |
| 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_System_Com_StructuredStorage\"`*"] |
| #[repr(transparent)] |
| pub struct IFillLockBytes(::windows::core::IUnknown); |
| impl IFillLockBytes { |
| pub unsafe fn FillAppend(&self, pv: *const ::core::ffi::c_void, cb: u32) -> ::windows::core::Result<u32> { |
| let mut result__ = ::windows::core::zeroed::<u32>(); |
| (::windows::core::Interface::vtable(self).FillAppend)(::windows::core::Interface::as_raw(self), pv, cb, &mut result__).from_abi(result__) |
| } |
| pub unsafe fn FillAt(&self, uloffset: u64, pv: *const ::core::ffi::c_void, cb: u32) -> ::windows::core::Result<u32> { |
| let mut result__ = ::windows::core::zeroed::<u32>(); |
| (::windows::core::Interface::vtable(self).FillAt)(::windows::core::Interface::as_raw(self), uloffset, pv, cb, &mut result__).from_abi(result__) |
| } |
| pub unsafe fn SetFillSize(&self, ulsize: u64) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).SetFillSize)(::windows::core::Interface::as_raw(self), ulsize).ok() |
| } |
| #[doc = "*Required features: `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| pub unsafe fn Terminate<P0>(&self, bcanceled: P0) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<super::super::super::Foundation::BOOL>, |
| { |
| (::windows::core::Interface::vtable(self).Terminate)(::windows::core::Interface::as_raw(self), bcanceled.into_param().abi()).ok() |
| } |
| } |
| ::windows::imp::interface_hierarchy!(IFillLockBytes, ::windows::core::IUnknown); |
| impl ::core::cmp::PartialEq for IFillLockBytes { |
| fn eq(&self, other: &Self) -> bool { |
| self.0 == other.0 |
| } |
| } |
| impl ::core::cmp::Eq for IFillLockBytes {} |
| impl ::core::fmt::Debug for IFillLockBytes { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_tuple("IFillLockBytes").field(&self.0).finish() |
| } |
| } |
| unsafe impl ::windows::core::Interface for IFillLockBytes { |
| type Vtable = IFillLockBytes_Vtbl; |
| } |
| impl ::core::clone::Clone for IFillLockBytes { |
| fn clone(&self) -> Self { |
| Self(self.0.clone()) |
| } |
| } |
| unsafe impl ::windows::core::ComInterface for IFillLockBytes { |
| const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x99caf010_415e_11cf_8814_00aa00b569f5); |
| } |
| #[repr(C)] |
| #[doc(hidden)] |
| pub struct IFillLockBytes_Vtbl { |
| pub base__: ::windows::core::IUnknown_Vtbl, |
| pub FillAppend: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pv: *const ::core::ffi::c_void, cb: u32, pcbwritten: *mut u32) -> ::windows::core::HRESULT, |
| pub FillAt: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uloffset: u64, pv: *const ::core::ffi::c_void, cb: u32, pcbwritten: *mut u32) -> ::windows::core::HRESULT, |
| pub SetFillSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ulsize: u64) -> ::windows::core::HRESULT, |
| #[cfg(feature = "Win32_Foundation")] |
| pub Terminate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bcanceled: super::super::super::Foundation::BOOL) -> ::windows::core::HRESULT, |
| #[cfg(not(feature = "Win32_Foundation"))] |
| Terminate: usize, |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[repr(transparent)] |
| pub struct ILayoutStorage(::windows::core::IUnknown); |
| impl ILayoutStorage { |
| pub unsafe fn LayoutScript(&self, pstoragelayout: &[super::StorageLayout], glfinterleavedflag: u32) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).LayoutScript)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pstoragelayout.as_ptr()), pstoragelayout.len() as _, glfinterleavedflag).ok() |
| } |
| pub unsafe fn BeginMonitor(&self) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).BeginMonitor)(::windows::core::Interface::as_raw(self)).ok() |
| } |
| pub unsafe fn EndMonitor(&self) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).EndMonitor)(::windows::core::Interface::as_raw(self)).ok() |
| } |
| pub unsafe fn ReLayoutDocfile<P0>(&self, pwcsnewdfname: P0) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| { |
| (::windows::core::Interface::vtable(self).ReLayoutDocfile)(::windows::core::Interface::as_raw(self), pwcsnewdfname.into_param().abi()).ok() |
| } |
| pub unsafe fn ReLayoutDocfileOnILockBytes<P0>(&self, pilockbytes: P0) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<ILockBytes>, |
| { |
| (::windows::core::Interface::vtable(self).ReLayoutDocfileOnILockBytes)(::windows::core::Interface::as_raw(self), pilockbytes.into_param().abi()).ok() |
| } |
| } |
| ::windows::imp::interface_hierarchy!(ILayoutStorage, ::windows::core::IUnknown); |
| impl ::core::cmp::PartialEq for ILayoutStorage { |
| fn eq(&self, other: &Self) -> bool { |
| self.0 == other.0 |
| } |
| } |
| impl ::core::cmp::Eq for ILayoutStorage {} |
| impl ::core::fmt::Debug for ILayoutStorage { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_tuple("ILayoutStorage").field(&self.0).finish() |
| } |
| } |
| unsafe impl ::windows::core::Interface for ILayoutStorage { |
| type Vtable = ILayoutStorage_Vtbl; |
| } |
| impl ::core::clone::Clone for ILayoutStorage { |
| fn clone(&self) -> Self { |
| Self(self.0.clone()) |
| } |
| } |
| unsafe impl ::windows::core::ComInterface for ILayoutStorage { |
| const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0e6d4d90_6738_11cf_9608_00aa00680db4); |
| } |
| #[repr(C)] |
| #[doc(hidden)] |
| pub struct ILayoutStorage_Vtbl { |
| pub base__: ::windows::core::IUnknown_Vtbl, |
| pub LayoutScript: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstoragelayout: *const super::StorageLayout, nentries: u32, glfinterleavedflag: u32) -> ::windows::core::HRESULT, |
| pub BeginMonitor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| pub EndMonitor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| pub ReLayoutDocfile: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwcsnewdfname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT, |
| pub ReLayoutDocfileOnILockBytes: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pilockbytes: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[repr(transparent)] |
| pub struct ILockBytes(::windows::core::IUnknown); |
| impl ILockBytes { |
| pub unsafe fn ReadAt(&self, uloffset: u64, pv: *mut ::core::ffi::c_void, cb: u32, pcbread: ::core::option::Option<*mut u32>) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).ReadAt)(::windows::core::Interface::as_raw(self), uloffset, pv, cb, ::core::mem::transmute(pcbread.unwrap_or(::std::ptr::null_mut()))).ok() |
| } |
| pub unsafe fn WriteAt(&self, uloffset: u64, pv: *const ::core::ffi::c_void, cb: u32, pcbwritten: ::core::option::Option<*mut u32>) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).WriteAt)(::windows::core::Interface::as_raw(self), uloffset, pv, cb, ::core::mem::transmute(pcbwritten.unwrap_or(::std::ptr::null_mut()))).ok() |
| } |
| pub unsafe fn Flush(&self) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).Flush)(::windows::core::Interface::as_raw(self)).ok() |
| } |
| pub unsafe fn SetSize(&self, cb: u64) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).SetSize)(::windows::core::Interface::as_raw(self), cb).ok() |
| } |
| pub unsafe fn LockRegion(&self, liboffset: u64, cb: u64, dwlocktype: super::LOCKTYPE) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).LockRegion)(::windows::core::Interface::as_raw(self), liboffset, cb, dwlocktype).ok() |
| } |
| pub unsafe fn UnlockRegion(&self, liboffset: u64, cb: u64, dwlocktype: u32) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).UnlockRegion)(::windows::core::Interface::as_raw(self), liboffset, cb, dwlocktype).ok() |
| } |
| #[doc = "*Required features: `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| pub unsafe fn Stat(&self, pstatstg: *mut super::STATSTG, grfstatflag: super::STATFLAG) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).Stat)(::windows::core::Interface::as_raw(self), pstatstg, grfstatflag).ok() |
| } |
| } |
| ::windows::imp::interface_hierarchy!(ILockBytes, ::windows::core::IUnknown); |
| impl ::core::cmp::PartialEq for ILockBytes { |
| fn eq(&self, other: &Self) -> bool { |
| self.0 == other.0 |
| } |
| } |
| impl ::core::cmp::Eq for ILockBytes {} |
| impl ::core::fmt::Debug for ILockBytes { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_tuple("ILockBytes").field(&self.0).finish() |
| } |
| } |
| unsafe impl ::windows::core::Interface for ILockBytes { |
| type Vtable = ILockBytes_Vtbl; |
| } |
| impl ::core::clone::Clone for ILockBytes { |
| fn clone(&self) -> Self { |
| Self(self.0.clone()) |
| } |
| } |
| unsafe impl ::windows::core::ComInterface for ILockBytes { |
| const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0000000a_0000_0000_c000_000000000046); |
| } |
| #[repr(C)] |
| #[doc(hidden)] |
| pub struct ILockBytes_Vtbl { |
| pub base__: ::windows::core::IUnknown_Vtbl, |
| pub ReadAt: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uloffset: u64, pv: *mut ::core::ffi::c_void, cb: u32, pcbread: *mut u32) -> ::windows::core::HRESULT, |
| pub WriteAt: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uloffset: u64, pv: *const ::core::ffi::c_void, cb: u32, pcbwritten: *mut u32) -> ::windows::core::HRESULT, |
| pub Flush: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| pub SetSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cb: u64) -> ::windows::core::HRESULT, |
| pub LockRegion: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, liboffset: u64, cb: u64, dwlocktype: super::LOCKTYPE) -> ::windows::core::HRESULT, |
| pub UnlockRegion: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, liboffset: u64, cb: u64, dwlocktype: u32) -> ::windows::core::HRESULT, |
| #[cfg(feature = "Win32_Foundation")] |
| pub Stat: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstatstg: *mut super::STATSTG, grfstatflag: super::STATFLAG) -> ::windows::core::HRESULT, |
| #[cfg(not(feature = "Win32_Foundation"))] |
| Stat: usize, |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[repr(transparent)] |
| pub struct IPersistStorage(::windows::core::IUnknown); |
| impl IPersistStorage { |
| pub unsafe fn GetClassID(&self) -> ::windows::core::Result<::windows::core::GUID> { |
| let mut result__ = ::windows::core::zeroed::<::windows::core::GUID>(); |
| (::windows::core::Interface::vtable(self).base__.GetClassID)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__) |
| } |
| pub unsafe fn IsDirty(&self) -> ::windows::core::HRESULT { |
| (::windows::core::Interface::vtable(self).IsDirty)(::windows::core::Interface::as_raw(self)) |
| } |
| pub unsafe fn InitNew<P0>(&self, pstg: P0) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<IStorage>, |
| { |
| (::windows::core::Interface::vtable(self).InitNew)(::windows::core::Interface::as_raw(self), pstg.into_param().abi()).ok() |
| } |
| pub unsafe fn Load<P0>(&self, pstg: P0) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<IStorage>, |
| { |
| (::windows::core::Interface::vtable(self).Load)(::windows::core::Interface::as_raw(self), pstg.into_param().abi()).ok() |
| } |
| #[doc = "*Required features: `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| pub unsafe fn Save<P0, P1>(&self, pstgsave: P0, fsameasload: P1) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<IStorage>, |
| P1: ::windows::core::IntoParam<super::super::super::Foundation::BOOL>, |
| { |
| (::windows::core::Interface::vtable(self).Save)(::windows::core::Interface::as_raw(self), pstgsave.into_param().abi(), fsameasload.into_param().abi()).ok() |
| } |
| pub unsafe fn SaveCompleted<P0>(&self, pstgnew: P0) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<IStorage>, |
| { |
| (::windows::core::Interface::vtable(self).SaveCompleted)(::windows::core::Interface::as_raw(self), pstgnew.into_param().abi()).ok() |
| } |
| pub unsafe fn HandsOffStorage(&self) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).HandsOffStorage)(::windows::core::Interface::as_raw(self)).ok() |
| } |
| } |
| ::windows::imp::interface_hierarchy!(IPersistStorage, ::windows::core::IUnknown, super::IPersist); |
| impl ::core::cmp::PartialEq for IPersistStorage { |
| fn eq(&self, other: &Self) -> bool { |
| self.0 == other.0 |
| } |
| } |
| impl ::core::cmp::Eq for IPersistStorage {} |
| impl ::core::fmt::Debug for IPersistStorage { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_tuple("IPersistStorage").field(&self.0).finish() |
| } |
| } |
| unsafe impl ::windows::core::Interface for IPersistStorage { |
| type Vtable = IPersistStorage_Vtbl; |
| } |
| impl ::core::clone::Clone for IPersistStorage { |
| fn clone(&self) -> Self { |
| Self(self.0.clone()) |
| } |
| } |
| unsafe impl ::windows::core::ComInterface for IPersistStorage { |
| const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0000010a_0000_0000_c000_000000000046); |
| } |
| #[repr(C)] |
| #[doc(hidden)] |
| pub struct IPersistStorage_Vtbl { |
| pub base__: super::IPersist_Vtbl, |
| pub IsDirty: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| pub InitNew: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| pub Load: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| #[cfg(feature = "Win32_Foundation")] |
| pub Save: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstgsave: *mut ::core::ffi::c_void, fsameasload: super::super::super::Foundation::BOOL) -> ::windows::core::HRESULT, |
| #[cfg(not(feature = "Win32_Foundation"))] |
| Save: usize, |
| pub SaveCompleted: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstgnew: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| pub HandsOffStorage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[repr(transparent)] |
| pub struct IPropertyBag(::windows::core::IUnknown); |
| impl IPropertyBag { |
| #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"] |
| #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))] |
| pub unsafe fn Read<P0, P1>(&self, pszpropname: P0, pvar: *mut super::VARIANT, perrorlog: P1) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| P1: ::windows::core::IntoParam<super::IErrorLog>, |
| { |
| (::windows::core::Interface::vtable(self).Read)(::windows::core::Interface::as_raw(self), pszpropname.into_param().abi(), pvar, perrorlog.into_param().abi()).ok() |
| } |
| #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"] |
| #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))] |
| pub unsafe fn Write<P0>(&self, pszpropname: P0, pvar: *const super::VARIANT) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| { |
| (::windows::core::Interface::vtable(self).Write)(::windows::core::Interface::as_raw(self), pszpropname.into_param().abi(), pvar).ok() |
| } |
| } |
| ::windows::imp::interface_hierarchy!(IPropertyBag, ::windows::core::IUnknown); |
| impl ::core::cmp::PartialEq for IPropertyBag { |
| fn eq(&self, other: &Self) -> bool { |
| self.0 == other.0 |
| } |
| } |
| impl ::core::cmp::Eq for IPropertyBag {} |
| impl ::core::fmt::Debug for IPropertyBag { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_tuple("IPropertyBag").field(&self.0).finish() |
| } |
| } |
| unsafe impl ::windows::core::Interface for IPropertyBag { |
| type Vtable = IPropertyBag_Vtbl; |
| } |
| impl ::core::clone::Clone for IPropertyBag { |
| fn clone(&self) -> Self { |
| Self(self.0.clone()) |
| } |
| } |
| unsafe impl ::windows::core::ComInterface for IPropertyBag { |
| const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x55272a00_42cb_11ce_8135_00aa004bb851); |
| } |
| #[repr(C)] |
| #[doc(hidden)] |
| pub struct IPropertyBag_Vtbl { |
| pub base__: ::windows::core::IUnknown_Vtbl, |
| #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))] |
| pub Read: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszpropname: ::windows::core::PCWSTR, pvar: *mut super::VARIANT, perrorlog: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Ole")))] |
| Read: usize, |
| #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))] |
| pub Write: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszpropname: ::windows::core::PCWSTR, pvar: *const super::VARIANT) -> ::windows::core::HRESULT, |
| #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Ole")))] |
| Write: usize, |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[repr(transparent)] |
| pub struct IPropertyBag2(::windows::core::IUnknown); |
| impl IPropertyBag2 { |
| #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"] |
| #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))] |
| pub unsafe fn Read<P0>(&self, cproperties: u32, ppropbag: *const PROPBAG2, perrlog: P0, pvarvalue: *mut super::VARIANT, phrerror: *mut ::windows::core::HRESULT) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<super::IErrorLog>, |
| { |
| (::windows::core::Interface::vtable(self).Read)(::windows::core::Interface::as_raw(self), cproperties, ppropbag, perrlog.into_param().abi(), pvarvalue, phrerror).ok() |
| } |
| #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"] |
| #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))] |
| pub unsafe fn Write(&self, cproperties: u32, ppropbag: *const PROPBAG2, pvarvalue: *const super::VARIANT) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).Write)(::windows::core::Interface::as_raw(self), cproperties, ppropbag, pvarvalue).ok() |
| } |
| pub unsafe fn CountProperties(&self) -> ::windows::core::Result<u32> { |
| let mut result__ = ::windows::core::zeroed::<u32>(); |
| (::windows::core::Interface::vtable(self).CountProperties)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__) |
| } |
| pub unsafe fn GetPropertyInfo(&self, iproperty: u32, ppropbag: &mut [PROPBAG2], pcproperties: *mut u32) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).GetPropertyInfo)(::windows::core::Interface::as_raw(self), iproperty, ppropbag.len() as _, ::core::mem::transmute(ppropbag.as_ptr()), pcproperties).ok() |
| } |
| pub unsafe fn LoadObject<P0, P1, P2>(&self, pstrname: P0, dwhint: u32, punkobject: P1, perrlog: P2) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| P1: ::windows::core::IntoParam<::windows::core::IUnknown>, |
| P2: ::windows::core::IntoParam<super::IErrorLog>, |
| { |
| (::windows::core::Interface::vtable(self).LoadObject)(::windows::core::Interface::as_raw(self), pstrname.into_param().abi(), dwhint, punkobject.into_param().abi(), perrlog.into_param().abi()).ok() |
| } |
| } |
| ::windows::imp::interface_hierarchy!(IPropertyBag2, ::windows::core::IUnknown); |
| impl ::core::cmp::PartialEq for IPropertyBag2 { |
| fn eq(&self, other: &Self) -> bool { |
| self.0 == other.0 |
| } |
| } |
| impl ::core::cmp::Eq for IPropertyBag2 {} |
| impl ::core::fmt::Debug for IPropertyBag2 { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_tuple("IPropertyBag2").field(&self.0).finish() |
| } |
| } |
| unsafe impl ::windows::core::Interface for IPropertyBag2 { |
| type Vtable = IPropertyBag2_Vtbl; |
| } |
| impl ::core::clone::Clone for IPropertyBag2 { |
| fn clone(&self) -> Self { |
| Self(self.0.clone()) |
| } |
| } |
| unsafe impl ::windows::core::ComInterface for IPropertyBag2 { |
| const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x22f55882_280b_11d0_a8a9_00a0c90c2004); |
| } |
| #[repr(C)] |
| #[doc(hidden)] |
| pub struct IPropertyBag2_Vtbl { |
| pub base__: ::windows::core::IUnknown_Vtbl, |
| #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))] |
| pub Read: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cproperties: u32, ppropbag: *const PROPBAG2, perrlog: *mut ::core::ffi::c_void, pvarvalue: *mut super::VARIANT, phrerror: *mut ::windows::core::HRESULT) -> ::windows::core::HRESULT, |
| #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Ole")))] |
| Read: usize, |
| #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))] |
| pub Write: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cproperties: u32, ppropbag: *const PROPBAG2, pvarvalue: *const super::VARIANT) -> ::windows::core::HRESULT, |
| #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Ole")))] |
| Write: usize, |
| pub CountProperties: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcproperties: *mut u32) -> ::windows::core::HRESULT, |
| pub GetPropertyInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, iproperty: u32, cproperties: u32, ppropbag: *mut PROPBAG2, pcproperties: *mut u32) -> ::windows::core::HRESULT, |
| pub LoadObject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstrname: ::windows::core::PCWSTR, dwhint: u32, punkobject: *mut ::core::ffi::c_void, perrlog: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[repr(transparent)] |
| pub struct IPropertySetStorage(::windows::core::IUnknown); |
| impl IPropertySetStorage { |
| pub unsafe fn Create(&self, rfmtid: *const ::windows::core::GUID, pclsid: *const ::windows::core::GUID, grfflags: u32, grfmode: u32) -> ::windows::core::Result<IPropertyStorage> { |
| let mut result__ = ::windows::core::zeroed::<IPropertyStorage>(); |
| (::windows::core::Interface::vtable(self).Create)(::windows::core::Interface::as_raw(self), rfmtid, pclsid, grfflags, grfmode, &mut result__).from_abi(result__) |
| } |
| pub unsafe fn Open(&self, rfmtid: *const ::windows::core::GUID, grfmode: u32) -> ::windows::core::Result<IPropertyStorage> { |
| let mut result__ = ::windows::core::zeroed::<IPropertyStorage>(); |
| (::windows::core::Interface::vtable(self).Open)(::windows::core::Interface::as_raw(self), rfmtid, grfmode, &mut result__).from_abi(result__) |
| } |
| pub unsafe fn Delete(&self, rfmtid: *const ::windows::core::GUID) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).Delete)(::windows::core::Interface::as_raw(self), rfmtid).ok() |
| } |
| pub unsafe fn Enum(&self) -> ::windows::core::Result<IEnumSTATPROPSETSTG> { |
| let mut result__ = ::windows::core::zeroed::<IEnumSTATPROPSETSTG>(); |
| (::windows::core::Interface::vtable(self).Enum)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__) |
| } |
| } |
| ::windows::imp::interface_hierarchy!(IPropertySetStorage, ::windows::core::IUnknown); |
| impl ::core::cmp::PartialEq for IPropertySetStorage { |
| fn eq(&self, other: &Self) -> bool { |
| self.0 == other.0 |
| } |
| } |
| impl ::core::cmp::Eq for IPropertySetStorage {} |
| impl ::core::fmt::Debug for IPropertySetStorage { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_tuple("IPropertySetStorage").field(&self.0).finish() |
| } |
| } |
| unsafe impl ::windows::core::Interface for IPropertySetStorage { |
| type Vtable = IPropertySetStorage_Vtbl; |
| } |
| impl ::core::clone::Clone for IPropertySetStorage { |
| fn clone(&self) -> Self { |
| Self(self.0.clone()) |
| } |
| } |
| unsafe impl ::windows::core::ComInterface for IPropertySetStorage { |
| const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0000013a_0000_0000_c000_000000000046); |
| } |
| #[repr(C)] |
| #[doc(hidden)] |
| pub struct IPropertySetStorage_Vtbl { |
| pub base__: ::windows::core::IUnknown_Vtbl, |
| pub Create: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rfmtid: *const ::windows::core::GUID, pclsid: *const ::windows::core::GUID, grfflags: u32, grfmode: u32, ppprstg: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| pub Open: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rfmtid: *const ::windows::core::GUID, grfmode: u32, ppprstg: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| pub Delete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, rfmtid: *const ::windows::core::GUID) -> ::windows::core::HRESULT, |
| pub Enum: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[repr(transparent)] |
| pub struct IPropertyStorage(::windows::core::IUnknown); |
| impl IPropertyStorage { |
| #[doc = "*Required features: `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| pub unsafe fn ReadMultiple(&self, cpspec: u32, rgpspec: *const PROPSPEC, rgpropvar: *mut PROPVARIANT) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).ReadMultiple)(::windows::core::Interface::as_raw(self), cpspec, rgpspec, rgpropvar).ok() |
| } |
| #[doc = "*Required features: `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| pub unsafe fn WriteMultiple(&self, cpspec: u32, rgpspec: *const PROPSPEC, rgpropvar: *const PROPVARIANT, propidnamefirst: u32) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).WriteMultiple)(::windows::core::Interface::as_raw(self), cpspec, rgpspec, rgpropvar, propidnamefirst).ok() |
| } |
| pub unsafe fn DeleteMultiple(&self, rgpspec: &[PROPSPEC]) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).DeleteMultiple)(::windows::core::Interface::as_raw(self), rgpspec.len() as _, ::core::mem::transmute(rgpspec.as_ptr())).ok() |
| } |
| pub unsafe fn ReadPropertyNames(&self, cpropid: u32, rgpropid: *const u32, rglpwstrname: *mut ::windows::core::PWSTR) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).ReadPropertyNames)(::windows::core::Interface::as_raw(self), cpropid, rgpropid, rglpwstrname).ok() |
| } |
| pub unsafe fn WritePropertyNames(&self, cpropid: u32, rgpropid: *const u32, rglpwstrname: *const ::windows::core::PCWSTR) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).WritePropertyNames)(::windows::core::Interface::as_raw(self), cpropid, rgpropid, rglpwstrname).ok() |
| } |
| pub unsafe fn DeletePropertyNames(&self, rgpropid: &[u32]) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).DeletePropertyNames)(::windows::core::Interface::as_raw(self), rgpropid.len() as _, ::core::mem::transmute(rgpropid.as_ptr())).ok() |
| } |
| pub unsafe fn Commit(&self, grfcommitflags: u32) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).Commit)(::windows::core::Interface::as_raw(self), grfcommitflags).ok() |
| } |
| pub unsafe fn Revert(&self) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).Revert)(::windows::core::Interface::as_raw(self)).ok() |
| } |
| pub unsafe fn Enum(&self) -> ::windows::core::Result<IEnumSTATPROPSTG> { |
| let mut result__ = ::windows::core::zeroed::<IEnumSTATPROPSTG>(); |
| (::windows::core::Interface::vtable(self).Enum)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__) |
| } |
| #[doc = "*Required features: `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| pub unsafe fn SetTimes(&self, pctime: *const super::super::super::Foundation::FILETIME, patime: *const super::super::super::Foundation::FILETIME, pmtime: *const super::super::super::Foundation::FILETIME) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).SetTimes)(::windows::core::Interface::as_raw(self), pctime, patime, pmtime).ok() |
| } |
| pub unsafe fn SetClass(&self, clsid: *const ::windows::core::GUID) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).SetClass)(::windows::core::Interface::as_raw(self), clsid).ok() |
| } |
| #[doc = "*Required features: `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| pub unsafe fn Stat(&self, pstatpsstg: *mut STATPROPSETSTG) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).Stat)(::windows::core::Interface::as_raw(self), pstatpsstg).ok() |
| } |
| } |
| ::windows::imp::interface_hierarchy!(IPropertyStorage, ::windows::core::IUnknown); |
| impl ::core::cmp::PartialEq for IPropertyStorage { |
| fn eq(&self, other: &Self) -> bool { |
| self.0 == other.0 |
| } |
| } |
| impl ::core::cmp::Eq for IPropertyStorage {} |
| impl ::core::fmt::Debug for IPropertyStorage { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_tuple("IPropertyStorage").field(&self.0).finish() |
| } |
| } |
| unsafe impl ::windows::core::Interface for IPropertyStorage { |
| type Vtable = IPropertyStorage_Vtbl; |
| } |
| impl ::core::clone::Clone for IPropertyStorage { |
| fn clone(&self) -> Self { |
| Self(self.0.clone()) |
| } |
| } |
| unsafe impl ::windows::core::ComInterface for IPropertyStorage { |
| const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00000138_0000_0000_c000_000000000046); |
| } |
| #[repr(C)] |
| #[doc(hidden)] |
| pub struct IPropertyStorage_Vtbl { |
| pub base__: ::windows::core::IUnknown_Vtbl, |
| #[cfg(feature = "Win32_Foundation")] |
| pub ReadMultiple: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cpspec: u32, rgpspec: *const PROPSPEC, rgpropvar: *mut PROPVARIANT) -> ::windows::core::HRESULT, |
| #[cfg(not(feature = "Win32_Foundation"))] |
| ReadMultiple: usize, |
| #[cfg(feature = "Win32_Foundation")] |
| pub WriteMultiple: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cpspec: u32, rgpspec: *const PROPSPEC, rgpropvar: *const PROPVARIANT, propidnamefirst: u32) -> ::windows::core::HRESULT, |
| #[cfg(not(feature = "Win32_Foundation"))] |
| WriteMultiple: usize, |
| pub DeleteMultiple: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cpspec: u32, rgpspec: *const PROPSPEC) -> ::windows::core::HRESULT, |
| pub ReadPropertyNames: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cpropid: u32, rgpropid: *const u32, rglpwstrname: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT, |
| pub WritePropertyNames: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cpropid: u32, rgpropid: *const u32, rglpwstrname: *const ::windows::core::PCWSTR) -> ::windows::core::HRESULT, |
| pub DeletePropertyNames: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cpropid: u32, rgpropid: *const u32) -> ::windows::core::HRESULT, |
| pub Commit: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, grfcommitflags: u32) -> ::windows::core::HRESULT, |
| pub Revert: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| pub Enum: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| #[cfg(feature = "Win32_Foundation")] |
| pub SetTimes: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pctime: *const super::super::super::Foundation::FILETIME, patime: *const super::super::super::Foundation::FILETIME, pmtime: *const super::super::super::Foundation::FILETIME) -> ::windows::core::HRESULT, |
| #[cfg(not(feature = "Win32_Foundation"))] |
| SetTimes: usize, |
| pub SetClass: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clsid: *const ::windows::core::GUID) -> ::windows::core::HRESULT, |
| #[cfg(feature = "Win32_Foundation")] |
| pub Stat: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstatpsstg: *mut STATPROPSETSTG) -> ::windows::core::HRESULT, |
| #[cfg(not(feature = "Win32_Foundation"))] |
| Stat: usize, |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[repr(transparent)] |
| pub struct IRootStorage(::windows::core::IUnknown); |
| impl IRootStorage { |
| pub unsafe fn SwitchToFile<P0>(&self, pszfile: P0) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| { |
| (::windows::core::Interface::vtable(self).SwitchToFile)(::windows::core::Interface::as_raw(self), pszfile.into_param().abi()).ok() |
| } |
| } |
| ::windows::imp::interface_hierarchy!(IRootStorage, ::windows::core::IUnknown); |
| impl ::core::cmp::PartialEq for IRootStorage { |
| fn eq(&self, other: &Self) -> bool { |
| self.0 == other.0 |
| } |
| } |
| impl ::core::cmp::Eq for IRootStorage {} |
| impl ::core::fmt::Debug for IRootStorage { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_tuple("IRootStorage").field(&self.0).finish() |
| } |
| } |
| unsafe impl ::windows::core::Interface for IRootStorage { |
| type Vtable = IRootStorage_Vtbl; |
| } |
| impl ::core::clone::Clone for IRootStorage { |
| fn clone(&self) -> Self { |
| Self(self.0.clone()) |
| } |
| } |
| unsafe impl ::windows::core::ComInterface for IRootStorage { |
| const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00000012_0000_0000_c000_000000000046); |
| } |
| #[repr(C)] |
| #[doc(hidden)] |
| pub struct IRootStorage_Vtbl { |
| pub base__: ::windows::core::IUnknown_Vtbl, |
| pub SwitchToFile: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszfile: ::windows::core::PCWSTR) -> ::windows::core::HRESULT, |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[repr(transparent)] |
| pub struct IStorage(::windows::core::IUnknown); |
| impl IStorage { |
| pub unsafe fn CreateStream<P0>(&self, pwcsname: P0, grfmode: super::STGM, reserved1: u32, reserved2: u32) -> ::windows::core::Result<super::IStream> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| { |
| let mut result__ = ::windows::core::zeroed::<super::IStream>(); |
| (::windows::core::Interface::vtable(self).CreateStream)(::windows::core::Interface::as_raw(self), pwcsname.into_param().abi(), grfmode, reserved1, reserved2, &mut result__).from_abi(result__) |
| } |
| pub unsafe fn OpenStream<P0>(&self, pwcsname: P0, reserved1: ::core::option::Option<*const ::core::ffi::c_void>, grfmode: super::STGM, reserved2: u32) -> ::windows::core::Result<super::IStream> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| { |
| let mut result__ = ::windows::core::zeroed::<super::IStream>(); |
| (::windows::core::Interface::vtable(self).OpenStream)(::windows::core::Interface::as_raw(self), pwcsname.into_param().abi(), ::core::mem::transmute(reserved1.unwrap_or(::std::ptr::null())), grfmode, reserved2, &mut result__).from_abi(result__) |
| } |
| pub unsafe fn CreateStorage<P0>(&self, pwcsname: P0, grfmode: super::STGM, reserved1: u32, reserved2: u32) -> ::windows::core::Result<IStorage> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| { |
| let mut result__ = ::windows::core::zeroed::<IStorage>(); |
| (::windows::core::Interface::vtable(self).CreateStorage)(::windows::core::Interface::as_raw(self), pwcsname.into_param().abi(), grfmode, reserved1, reserved2, &mut result__).from_abi(result__) |
| } |
| pub unsafe fn OpenStorage<P0, P1>(&self, pwcsname: P0, pstgpriority: P1, grfmode: super::STGM, snbexclude: *const *const u16, reserved: u32) -> ::windows::core::Result<IStorage> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| P1: ::windows::core::IntoParam<IStorage>, |
| { |
| let mut result__ = ::windows::core::zeroed::<IStorage>(); |
| (::windows::core::Interface::vtable(self).OpenStorage)(::windows::core::Interface::as_raw(self), pwcsname.into_param().abi(), pstgpriority.into_param().abi(), grfmode, snbexclude, reserved, &mut result__).from_abi(result__) |
| } |
| pub unsafe fn CopyTo<P0>(&self, rgiidexclude: ::core::option::Option<&[::windows::core::GUID]>, snbexclude: ::core::option::Option<*const *const u16>, pstgdest: P0) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<IStorage>, |
| { |
| (::windows::core::Interface::vtable(self).CopyTo)(::windows::core::Interface::as_raw(self), rgiidexclude.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(rgiidexclude.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), ::core::mem::transmute(snbexclude.unwrap_or(::std::ptr::null())), pstgdest.into_param().abi()).ok() |
| } |
| pub unsafe fn MoveElementTo<P0, P1, P2>(&self, pwcsname: P0, pstgdest: P1, pwcsnewname: P2, grfflags: STGMOVE) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| P1: ::windows::core::IntoParam<IStorage>, |
| P2: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| { |
| (::windows::core::Interface::vtable(self).MoveElementTo)(::windows::core::Interface::as_raw(self), pwcsname.into_param().abi(), pstgdest.into_param().abi(), pwcsnewname.into_param().abi(), grfflags).ok() |
| } |
| pub unsafe fn Commit(&self, grfcommitflags: super::STGC) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).Commit)(::windows::core::Interface::as_raw(self), grfcommitflags).ok() |
| } |
| pub unsafe fn Revert(&self) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).Revert)(::windows::core::Interface::as_raw(self)).ok() |
| } |
| pub unsafe fn EnumElements(&self, reserved1: u32, reserved2: ::core::option::Option<*const ::core::ffi::c_void>, reserved3: u32) -> ::windows::core::Result<IEnumSTATSTG> { |
| let mut result__ = ::windows::core::zeroed::<IEnumSTATSTG>(); |
| (::windows::core::Interface::vtable(self).EnumElements)(::windows::core::Interface::as_raw(self), reserved1, ::core::mem::transmute(reserved2.unwrap_or(::std::ptr::null())), reserved3, &mut result__).from_abi(result__) |
| } |
| pub unsafe fn DestroyElement<P0>(&self, pwcsname: P0) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| { |
| (::windows::core::Interface::vtable(self).DestroyElement)(::windows::core::Interface::as_raw(self), pwcsname.into_param().abi()).ok() |
| } |
| pub unsafe fn RenameElement<P0, P1>(&self, pwcsoldname: P0, pwcsnewname: P1) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| P1: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| { |
| (::windows::core::Interface::vtable(self).RenameElement)(::windows::core::Interface::as_raw(self), pwcsoldname.into_param().abi(), pwcsnewname.into_param().abi()).ok() |
| } |
| #[doc = "*Required features: `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| pub unsafe fn SetElementTimes<P0>(&self, pwcsname: P0, pctime: *const super::super::super::Foundation::FILETIME, patime: *const super::super::super::Foundation::FILETIME, pmtime: *const super::super::super::Foundation::FILETIME) -> ::windows::core::Result<()> |
| where |
| P0: ::windows::core::IntoParam<::windows::core::PCWSTR>, |
| { |
| (::windows::core::Interface::vtable(self).SetElementTimes)(::windows::core::Interface::as_raw(self), pwcsname.into_param().abi(), pctime, patime, pmtime).ok() |
| } |
| pub unsafe fn SetClass(&self, clsid: *const ::windows::core::GUID) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).SetClass)(::windows::core::Interface::as_raw(self), clsid).ok() |
| } |
| pub unsafe fn SetStateBits(&self, grfstatebits: u32, grfmask: u32) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).SetStateBits)(::windows::core::Interface::as_raw(self), grfstatebits, grfmask).ok() |
| } |
| #[doc = "*Required features: `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| pub unsafe fn Stat(&self, pstatstg: *mut super::STATSTG, grfstatflag: super::STATFLAG) -> ::windows::core::Result<()> { |
| (::windows::core::Interface::vtable(self).Stat)(::windows::core::Interface::as_raw(self), pstatstg, grfstatflag).ok() |
| } |
| } |
| ::windows::imp::interface_hierarchy!(IStorage, ::windows::core::IUnknown); |
| impl ::core::cmp::PartialEq for IStorage { |
| fn eq(&self, other: &Self) -> bool { |
| self.0 == other.0 |
| } |
| } |
| impl ::core::cmp::Eq for IStorage {} |
| impl ::core::fmt::Debug for IStorage { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_tuple("IStorage").field(&self.0).finish() |
| } |
| } |
| unsafe impl ::windows::core::Interface for IStorage { |
| type Vtable = IStorage_Vtbl; |
| } |
| impl ::core::clone::Clone for IStorage { |
| fn clone(&self) -> Self { |
| Self(self.0.clone()) |
| } |
| } |
| unsafe impl ::windows::core::ComInterface for IStorage { |
| const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0000000b_0000_0000_c000_000000000046); |
| } |
| #[repr(C)] |
| #[doc(hidden)] |
| pub struct IStorage_Vtbl { |
| pub base__: ::windows::core::IUnknown_Vtbl, |
| pub CreateStream: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwcsname: ::windows::core::PCWSTR, grfmode: super::STGM, reserved1: u32, reserved2: u32, ppstm: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| pub OpenStream: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwcsname: ::windows::core::PCWSTR, reserved1: *const ::core::ffi::c_void, grfmode: super::STGM, reserved2: u32, ppstm: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| pub CreateStorage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwcsname: ::windows::core::PCWSTR, grfmode: super::STGM, reserved1: u32, reserved2: u32, ppstg: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| pub OpenStorage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwcsname: ::windows::core::PCWSTR, pstgpriority: *mut ::core::ffi::c_void, grfmode: super::STGM, snbexclude: *const *const u16, reserved: u32, ppstg: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| pub CopyTo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ciidexclude: u32, rgiidexclude: *const ::windows::core::GUID, snbexclude: *const *const u16, pstgdest: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| pub MoveElementTo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwcsname: ::windows::core::PCWSTR, pstgdest: *mut ::core::ffi::c_void, pwcsnewname: ::windows::core::PCWSTR, grfflags: STGMOVE) -> ::windows::core::HRESULT, |
| pub Commit: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, grfcommitflags: super::STGC) -> ::windows::core::HRESULT, |
| pub Revert: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| pub EnumElements: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, reserved1: u32, reserved2: *const ::core::ffi::c_void, reserved3: u32, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, |
| pub DestroyElement: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwcsname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT, |
| pub RenameElement: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwcsoldname: ::windows::core::PCWSTR, pwcsnewname: ::windows::core::PCWSTR) -> ::windows::core::HRESULT, |
| #[cfg(feature = "Win32_Foundation")] |
| pub SetElementTimes: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwcsname: ::windows::core::PCWSTR, pctime: *const super::super::super::Foundation::FILETIME, patime: *const super::super::super::Foundation::FILETIME, pmtime: *const super::super::super::Foundation::FILETIME) -> ::windows::core::HRESULT, |
| #[cfg(not(feature = "Win32_Foundation"))] |
| SetElementTimes: usize, |
| pub SetClass: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clsid: *const ::windows::core::GUID) -> ::windows::core::HRESULT, |
| pub SetStateBits: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, grfstatebits: u32, grfmask: u32) -> ::windows::core::HRESULT, |
| #[cfg(feature = "Win32_Foundation")] |
| pub Stat: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstatstg: *mut super::STATSTG, grfstatflag: super::STATFLAG) -> ::windows::core::HRESULT, |
| #[cfg(not(feature = "Win32_Foundation"))] |
| Stat: usize, |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const CCH_MAX_PROPSTG_NAME: u32 = 31u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const CWCSTORAGENAME: u32 = 32u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDDI_THUMBNAIL: i32 = 2i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDDSI_BYTECOUNT: u32 = 4u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDDSI_CATEGORY: u32 = 2u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDDSI_COMPANY: u32 = 15u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDDSI_DOCPARTS: u32 = 13u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDDSI_HEADINGPAIR: u32 = 12u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDDSI_HIDDENCOUNT: u32 = 9u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDDSI_LINECOUNT: u32 = 5u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDDSI_LINKSDIRTY: u32 = 16u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDDSI_MANAGER: u32 = 14u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDDSI_MMCLIPCOUNT: u32 = 10u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDDSI_NOTECOUNT: u32 = 8u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDDSI_PARCOUNT: u32 = 6u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDDSI_PRESFORMAT: u32 = 3u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDDSI_SCALE: u32 = 11u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDDSI_SLIDECOUNT: u32 = 7u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_COPYRIGHT: i32 = 11i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_EDITOR: i32 = 2i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_OWNER: i32 = 8i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_PRODUCTION: i32 = 10i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_PROJECT: i32 = 6i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_RATING: i32 = 9i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_SEQUENCE_NO: i32 = 5i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_SOURCE: i32 = 4i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_STATUS: i32 = 7i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_SUPPLIER: i32 = 3i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDSI_APPNAME: i32 = 18i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDSI_AUTHOR: i32 = 4i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDSI_CHARCOUNT: i32 = 16i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDSI_COMMENTS: i32 = 6i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDSI_CREATE_DTM: i32 = 12i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDSI_DOC_SECURITY: i32 = 19i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDSI_EDITTIME: i32 = 10i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDSI_KEYWORDS: i32 = 5i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDSI_LASTAUTHOR: i32 = 8i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDSI_LASTPRINTED: i32 = 11i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDSI_LASTSAVE_DTM: i32 = 13i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDSI_PAGECOUNT: i32 = 14i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDSI_REVNUMBER: i32 = 9i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDSI_SUBJECT: i32 = 3i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDSI_TEMPLATE: i32 = 7i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDSI_THUMBNAIL: i32 = 17i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDSI_TITLE: i32 = 2i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDSI_WORDCOUNT: i32 = 15i32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PID_BEHAVIOR: u32 = 2147483651u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PID_CODEPAGE: u32 = 1u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PID_DICTIONARY: u32 = 0u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PID_FIRST_NAME_DEFAULT: u32 = 4095u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PID_FIRST_USABLE: u32 = 2u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PID_ILLEGAL: u32 = 4294967295u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PID_LOCALE: u32 = 2147483648u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PID_MAX_READONLY: u32 = 3221225471u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PID_MIN_READONLY: u32 = 2147483648u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PID_MODIFY_TIME: u32 = 2147483649u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PID_SECURITY: u32 = 2147483650u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PROPSETFLAG_ANSI: u32 = 2u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PROPSETFLAG_CASE_SENSITIVE: u32 = 8u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PROPSETFLAG_DEFAULT: u32 = 0u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PROPSETFLAG_NONSIMPLE: u32 = 1u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PROPSETFLAG_UNBUFFERED: u32 = 4u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PROPSETHDR_OSVERSION_UNKNOWN: u32 = 4294967295u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PROPSET_BEHAVIOR_CASE_SENSITIVE: u32 = 1u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PRSPEC_INVALID: u32 = 4294967295u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const STGOPTIONS_VERSION: u32 = 1u32; |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[repr(transparent)] |
| #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] |
| pub struct PIDMSI_STATUS_VALUE(pub i32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_STATUS_NORMAL: PIDMSI_STATUS_VALUE = PIDMSI_STATUS_VALUE(0i32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_STATUS_NEW: PIDMSI_STATUS_VALUE = PIDMSI_STATUS_VALUE(1i32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_STATUS_PRELIM: PIDMSI_STATUS_VALUE = PIDMSI_STATUS_VALUE(2i32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_STATUS_DRAFT: PIDMSI_STATUS_VALUE = PIDMSI_STATUS_VALUE(3i32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_STATUS_INPROGRESS: PIDMSI_STATUS_VALUE = PIDMSI_STATUS_VALUE(4i32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_STATUS_EDIT: PIDMSI_STATUS_VALUE = PIDMSI_STATUS_VALUE(5i32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_STATUS_REVIEW: PIDMSI_STATUS_VALUE = PIDMSI_STATUS_VALUE(6i32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_STATUS_PROOF: PIDMSI_STATUS_VALUE = PIDMSI_STATUS_VALUE(7i32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_STATUS_FINAL: PIDMSI_STATUS_VALUE = PIDMSI_STATUS_VALUE(8i32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PIDMSI_STATUS_OTHER: PIDMSI_STATUS_VALUE = PIDMSI_STATUS_VALUE(32767i32); |
| impl ::core::marker::Copy for PIDMSI_STATUS_VALUE {} |
| impl ::core::clone::Clone for PIDMSI_STATUS_VALUE { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::default::Default for PIDMSI_STATUS_VALUE { |
| fn default() -> Self { |
| Self(0) |
| } |
| } |
| impl ::windows::core::TypeKind for PIDMSI_STATUS_VALUE { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::fmt::Debug for PIDMSI_STATUS_VALUE { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_tuple("PIDMSI_STATUS_VALUE").field(&self.0).finish() |
| } |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[repr(transparent)] |
| #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] |
| pub struct PROPSPEC_KIND(pub u32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PRSPEC_LPWSTR: PROPSPEC_KIND = PROPSPEC_KIND(0u32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const PRSPEC_PROPID: PROPSPEC_KIND = PROPSPEC_KIND(1u32); |
| impl ::core::marker::Copy for PROPSPEC_KIND {} |
| impl ::core::clone::Clone for PROPSPEC_KIND { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::default::Default for PROPSPEC_KIND { |
| fn default() -> Self { |
| Self(0) |
| } |
| } |
| impl ::windows::core::TypeKind for PROPSPEC_KIND { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::fmt::Debug for PROPSPEC_KIND { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_tuple("PROPSPEC_KIND").field(&self.0).finish() |
| } |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[repr(transparent)] |
| #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] |
| pub struct STGFMT(pub u32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const STGFMT_STORAGE: STGFMT = STGFMT(0u32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const STGFMT_NATIVE: STGFMT = STGFMT(1u32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const STGFMT_FILE: STGFMT = STGFMT(3u32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const STGFMT_ANY: STGFMT = STGFMT(4u32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const STGFMT_DOCFILE: STGFMT = STGFMT(5u32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const STGFMT_DOCUMENT: STGFMT = STGFMT(0u32); |
| impl ::core::marker::Copy for STGFMT {} |
| impl ::core::clone::Clone for STGFMT { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::default::Default for STGFMT { |
| fn default() -> Self { |
| Self(0) |
| } |
| } |
| impl ::windows::core::TypeKind for STGFMT { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::fmt::Debug for STGFMT { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_tuple("STGFMT").field(&self.0).finish() |
| } |
| } |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| #[repr(transparent)] |
| #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] |
| pub struct STGMOVE(pub i32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const STGMOVE_MOVE: STGMOVE = STGMOVE(0i32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const STGMOVE_COPY: STGMOVE = STGMOVE(1i32); |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub const STGMOVE_SHALLOWCOPY: STGMOVE = STGMOVE(2i32); |
| impl ::core::marker::Copy for STGMOVE {} |
| impl ::core::clone::Clone for STGMOVE { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::default::Default for STGMOVE { |
| fn default() -> Self { |
| Self(0) |
| } |
| } |
| impl ::windows::core::TypeKind for STGMOVE { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::fmt::Debug for STGMOVE { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_tuple("STGMOVE").field(&self.0).finish() |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct BSTRBLOB { |
| pub cbSize: u32, |
| pub pData: *mut u8, |
| } |
| impl ::core::marker::Copy for BSTRBLOB {} |
| impl ::core::clone::Clone for BSTRBLOB { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for BSTRBLOB { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("BSTRBLOB").field("cbSize", &self.cbSize).field("pData", &self.pData).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for BSTRBLOB { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for BSTRBLOB { |
| fn eq(&self, other: &Self) -> bool { |
| self.cbSize == other.cbSize && self.pData == other.pData |
| } |
| } |
| impl ::core::cmp::Eq for BSTRBLOB {} |
| impl ::core::default::Default for BSTRBLOB { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| pub struct CABOOL { |
| pub cElems: u32, |
| pub pElems: *mut super::super::super::Foundation::VARIANT_BOOL, |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::marker::Copy for CABOOL {} |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::clone::Clone for CABOOL { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::fmt::Debug for CABOOL { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CABOOL").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::windows::core::TypeKind for CABOOL { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::cmp::PartialEq for CABOOL { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::cmp::Eq for CABOOL {} |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::default::Default for CABOOL { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CABSTR { |
| pub cElems: u32, |
| pub pElems: *mut ::windows::core::BSTR, |
| } |
| impl ::core::marker::Copy for CABSTR {} |
| impl ::core::clone::Clone for CABSTR { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CABSTR { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CABSTR").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CABSTR { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CABSTR { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| impl ::core::cmp::Eq for CABSTR {} |
| impl ::core::default::Default for CABSTR { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CABSTRBLOB { |
| pub cElems: u32, |
| pub pElems: *mut BSTRBLOB, |
| } |
| impl ::core::marker::Copy for CABSTRBLOB {} |
| impl ::core::clone::Clone for CABSTRBLOB { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CABSTRBLOB { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CABSTRBLOB").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CABSTRBLOB { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CABSTRBLOB { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| impl ::core::cmp::Eq for CABSTRBLOB {} |
| impl ::core::default::Default for CABSTRBLOB { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CAC { |
| pub cElems: u32, |
| pub pElems: ::windows::core::PSTR, |
| } |
| impl ::core::marker::Copy for CAC {} |
| impl ::core::clone::Clone for CAC { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CAC { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CAC").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CAC { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CAC { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| impl ::core::cmp::Eq for CAC {} |
| impl ::core::default::Default for CAC { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CACLIPDATA { |
| pub cElems: u32, |
| pub pElems: *mut CLIPDATA, |
| } |
| impl ::core::marker::Copy for CACLIPDATA {} |
| impl ::core::clone::Clone for CACLIPDATA { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CACLIPDATA { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CACLIPDATA").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CACLIPDATA { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CACLIPDATA { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| impl ::core::cmp::Eq for CACLIPDATA {} |
| impl ::core::default::Default for CACLIPDATA { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CACLSID { |
| pub cElems: u32, |
| pub pElems: *mut ::windows::core::GUID, |
| } |
| impl ::core::marker::Copy for CACLSID {} |
| impl ::core::clone::Clone for CACLSID { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CACLSID { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CACLSID").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CACLSID { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CACLSID { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| impl ::core::cmp::Eq for CACLSID {} |
| impl ::core::default::Default for CACLSID { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CACY { |
| pub cElems: u32, |
| pub pElems: *mut super::CY, |
| } |
| impl ::core::marker::Copy for CACY {} |
| impl ::core::clone::Clone for CACY { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CACY { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CACY").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CACY { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CACY { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| impl ::core::cmp::Eq for CACY {} |
| impl ::core::default::Default for CACY { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CADATE { |
| pub cElems: u32, |
| pub pElems: *mut f64, |
| } |
| impl ::core::marker::Copy for CADATE {} |
| impl ::core::clone::Clone for CADATE { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CADATE { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CADATE").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CADATE { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CADATE { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| impl ::core::cmp::Eq for CADATE {} |
| impl ::core::default::Default for CADATE { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CADBL { |
| pub cElems: u32, |
| pub pElems: *mut f64, |
| } |
| impl ::core::marker::Copy for CADBL {} |
| impl ::core::clone::Clone for CADBL { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CADBL { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CADBL").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CADBL { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CADBL { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| impl ::core::cmp::Eq for CADBL {} |
| impl ::core::default::Default for CADBL { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| pub struct CAFILETIME { |
| pub cElems: u32, |
| pub pElems: *mut super::super::super::Foundation::FILETIME, |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::marker::Copy for CAFILETIME {} |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::clone::Clone for CAFILETIME { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::fmt::Debug for CAFILETIME { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CAFILETIME").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::windows::core::TypeKind for CAFILETIME { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::cmp::PartialEq for CAFILETIME { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::cmp::Eq for CAFILETIME {} |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::default::Default for CAFILETIME { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CAFLT { |
| pub cElems: u32, |
| pub pElems: *mut f32, |
| } |
| impl ::core::marker::Copy for CAFLT {} |
| impl ::core::clone::Clone for CAFLT { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CAFLT { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CAFLT").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CAFLT { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CAFLT { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| impl ::core::cmp::Eq for CAFLT {} |
| impl ::core::default::Default for CAFLT { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CAH { |
| pub cElems: u32, |
| pub pElems: *mut i64, |
| } |
| impl ::core::marker::Copy for CAH {} |
| impl ::core::clone::Clone for CAH { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CAH { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CAH").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CAH { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CAH { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| impl ::core::cmp::Eq for CAH {} |
| impl ::core::default::Default for CAH { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CAI { |
| pub cElems: u32, |
| pub pElems: *mut i16, |
| } |
| impl ::core::marker::Copy for CAI {} |
| impl ::core::clone::Clone for CAI { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CAI { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CAI").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CAI { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CAI { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| impl ::core::cmp::Eq for CAI {} |
| impl ::core::default::Default for CAI { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CAL { |
| pub cElems: u32, |
| pub pElems: *mut i32, |
| } |
| impl ::core::marker::Copy for CAL {} |
| impl ::core::clone::Clone for CAL { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CAL { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CAL").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CAL { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CAL { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| impl ::core::cmp::Eq for CAL {} |
| impl ::core::default::Default for CAL { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CALPSTR { |
| pub cElems: u32, |
| pub pElems: *mut ::windows::core::PSTR, |
| } |
| impl ::core::marker::Copy for CALPSTR {} |
| impl ::core::clone::Clone for CALPSTR { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CALPSTR { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CALPSTR").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CALPSTR { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CALPSTR { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| impl ::core::cmp::Eq for CALPSTR {} |
| impl ::core::default::Default for CALPSTR { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CALPWSTR { |
| pub cElems: u32, |
| pub pElems: *mut ::windows::core::PWSTR, |
| } |
| impl ::core::marker::Copy for CALPWSTR {} |
| impl ::core::clone::Clone for CALPWSTR { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CALPWSTR { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CALPWSTR").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CALPWSTR { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CALPWSTR { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| impl ::core::cmp::Eq for CALPWSTR {} |
| impl ::core::default::Default for CALPWSTR { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| pub struct CAPROPVARIANT { |
| pub cElems: u32, |
| pub pElems: *mut PROPVARIANT, |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::marker::Copy for CAPROPVARIANT {} |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::clone::Clone for CAPROPVARIANT { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::fmt::Debug for CAPROPVARIANT { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CAPROPVARIANT").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::windows::core::TypeKind for CAPROPVARIANT { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::cmp::PartialEq for CAPROPVARIANT { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::cmp::Eq for CAPROPVARIANT {} |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::default::Default for CAPROPVARIANT { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CASCODE { |
| pub cElems: u32, |
| pub pElems: *mut i32, |
| } |
| impl ::core::marker::Copy for CASCODE {} |
| impl ::core::clone::Clone for CASCODE { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CASCODE { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CASCODE").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CASCODE { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CASCODE { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| impl ::core::cmp::Eq for CASCODE {} |
| impl ::core::default::Default for CASCODE { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CAUB { |
| pub cElems: u32, |
| pub pElems: *mut u8, |
| } |
| impl ::core::marker::Copy for CAUB {} |
| impl ::core::clone::Clone for CAUB { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CAUB { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CAUB").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CAUB { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CAUB { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| impl ::core::cmp::Eq for CAUB {} |
| impl ::core::default::Default for CAUB { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CAUH { |
| pub cElems: u32, |
| pub pElems: *mut u64, |
| } |
| impl ::core::marker::Copy for CAUH {} |
| impl ::core::clone::Clone for CAUH { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CAUH { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CAUH").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CAUH { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CAUH { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| impl ::core::cmp::Eq for CAUH {} |
| impl ::core::default::Default for CAUH { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CAUI { |
| pub cElems: u32, |
| pub pElems: *mut u16, |
| } |
| impl ::core::marker::Copy for CAUI {} |
| impl ::core::clone::Clone for CAUI { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CAUI { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CAUI").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CAUI { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CAUI { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| impl ::core::cmp::Eq for CAUI {} |
| impl ::core::default::Default for CAUI { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CAUL { |
| pub cElems: u32, |
| pub pElems: *mut u32, |
| } |
| impl ::core::marker::Copy for CAUL {} |
| impl ::core::clone::Clone for CAUL { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CAUL { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CAUL").field("cElems", &self.cElems).field("pElems", &self.pElems).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CAUL { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CAUL { |
| fn eq(&self, other: &Self) -> bool { |
| self.cElems == other.cElems && self.pElems == other.pElems |
| } |
| } |
| impl ::core::cmp::Eq for CAUL {} |
| impl ::core::default::Default for CAUL { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct CLIPDATA { |
| pub cbSize: u32, |
| pub ulClipFmt: i32, |
| pub pClipData: *mut u8, |
| } |
| impl ::core::marker::Copy for CLIPDATA {} |
| impl ::core::clone::Clone for CLIPDATA { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for CLIPDATA { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("CLIPDATA").field("cbSize", &self.cbSize).field("ulClipFmt", &self.ulClipFmt).field("pClipData", &self.pClipData).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for CLIPDATA { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for CLIPDATA { |
| fn eq(&self, other: &Self) -> bool { |
| self.cbSize == other.cbSize && self.ulClipFmt == other.ulClipFmt && self.pClipData == other.pClipData |
| } |
| } |
| impl ::core::cmp::Eq for CLIPDATA {} |
| impl ::core::default::Default for CLIPDATA { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct OLESTREAM { |
| pub lpstbl: *mut OLESTREAMVTBL, |
| } |
| impl ::core::marker::Copy for OLESTREAM {} |
| impl ::core::clone::Clone for OLESTREAM { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for OLESTREAM { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("OLESTREAM").field("lpstbl", &self.lpstbl).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for OLESTREAM { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for OLESTREAM { |
| fn eq(&self, other: &Self) -> bool { |
| self.lpstbl == other.lpstbl |
| } |
| } |
| impl ::core::cmp::Eq for OLESTREAM {} |
| impl ::core::default::Default for OLESTREAM { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct OLESTREAMVTBL { |
| pub Get: isize, |
| pub Put: isize, |
| } |
| impl ::core::marker::Copy for OLESTREAMVTBL {} |
| impl ::core::clone::Clone for OLESTREAMVTBL { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for OLESTREAMVTBL { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("OLESTREAMVTBL").field("Get", &self.Get).field("Put", &self.Put).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for OLESTREAMVTBL { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for OLESTREAMVTBL { |
| fn eq(&self, other: &Self) -> bool { |
| self.Get == other.Get && self.Put == other.Put |
| } |
| } |
| impl ::core::cmp::Eq for OLESTREAMVTBL {} |
| impl ::core::default::Default for OLESTREAMVTBL { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| pub struct PMemoryAllocator(pub u8); |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct PROPBAG2 { |
| pub dwType: u32, |
| pub vt: super::VARENUM, |
| pub cfType: u16, |
| pub dwHint: u32, |
| pub pstrName: ::windows::core::PWSTR, |
| pub clsid: ::windows::core::GUID, |
| } |
| impl ::core::marker::Copy for PROPBAG2 {} |
| impl ::core::clone::Clone for PROPBAG2 { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for PROPBAG2 { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("PROPBAG2").field("dwType", &self.dwType).field("vt", &self.vt).field("cfType", &self.cfType).field("dwHint", &self.dwHint).field("pstrName", &self.pstrName).field("clsid", &self.clsid).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for PROPBAG2 { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for PROPBAG2 { |
| fn eq(&self, other: &Self) -> bool { |
| self.dwType == other.dwType && self.vt == other.vt && self.cfType == other.cfType && self.dwHint == other.dwHint && self.pstrName == other.pstrName && self.clsid == other.clsid |
| } |
| } |
| impl ::core::cmp::Eq for PROPBAG2 {} |
| impl ::core::default::Default for PROPBAG2 { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct PROPSPEC { |
| pub ulKind: PROPSPEC_KIND, |
| pub Anonymous: PROPSPEC_0, |
| } |
| impl ::core::marker::Copy for PROPSPEC {} |
| impl ::core::clone::Clone for PROPSPEC { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::windows::core::TypeKind for PROPSPEC { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::default::Default for PROPSPEC { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub union PROPSPEC_0 { |
| pub propid: u32, |
| pub lpwstr: ::windows::core::PWSTR, |
| } |
| impl ::core::marker::Copy for PROPSPEC_0 {} |
| impl ::core::clone::Clone for PROPSPEC_0 { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::windows::core::TypeKind for PROPSPEC_0 { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::default::Default for PROPSPEC_0 { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| pub struct PROPVARIANT { |
| pub Anonymous: PROPVARIANT_0, |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::clone::Clone for PROPVARIANT { |
| fn clone(&self) -> Self { |
| unsafe { ::core::mem::transmute_copy(self) } |
| } |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::windows::core::TypeKind for PROPVARIANT { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::default::Default for PROPVARIANT { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| pub union PROPVARIANT_0 { |
| pub Anonymous: ::std::mem::ManuallyDrop<PROPVARIANT_0_0>, |
| pub decVal: super::super::super::Foundation::DECIMAL, |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::clone::Clone for PROPVARIANT_0 { |
| fn clone(&self) -> Self { |
| unsafe { ::core::mem::transmute_copy(self) } |
| } |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::windows::core::TypeKind for PROPVARIANT_0 { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::default::Default for PROPVARIANT_0 { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| pub struct PROPVARIANT_0_0 { |
| pub vt: super::VARENUM, |
| pub wReserved1: u16, |
| pub wReserved2: u16, |
| pub wReserved3: u16, |
| pub Anonymous: PROPVARIANT_0_0_0, |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::clone::Clone for PROPVARIANT_0_0 { |
| fn clone(&self) -> Self { |
| unsafe { ::core::mem::transmute_copy(self) } |
| } |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::windows::core::TypeKind for PROPVARIANT_0_0 { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::default::Default for PROPVARIANT_0_0 { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| pub union PROPVARIANT_0_0_0 { |
| pub cVal: u8, |
| pub bVal: u8, |
| pub iVal: i16, |
| pub uiVal: u16, |
| pub lVal: i32, |
| pub ulVal: u32, |
| pub intVal: i32, |
| pub uintVal: u32, |
| pub hVal: i64, |
| pub uhVal: u64, |
| pub fltVal: f32, |
| pub dblVal: f64, |
| pub boolVal: super::super::super::Foundation::VARIANT_BOOL, |
| pub __OBSOLETE__VARIANT_BOOL: super::super::super::Foundation::VARIANT_BOOL, |
| pub scode: i32, |
| pub cyVal: super::CY, |
| pub date: f64, |
| pub filetime: super::super::super::Foundation::FILETIME, |
| pub puuid: *mut ::windows::core::GUID, |
| pub pclipdata: *mut CLIPDATA, |
| pub bstrVal: ::std::mem::ManuallyDrop<::windows::core::BSTR>, |
| pub bstrblobVal: BSTRBLOB, |
| pub blob: super::BLOB, |
| pub pszVal: ::windows::core::PSTR, |
| pub pwszVal: ::windows::core::PWSTR, |
| pub punkVal: ::std::mem::ManuallyDrop<::core::option::Option<::windows::core::IUnknown>>, |
| pub pdispVal: ::std::mem::ManuallyDrop<::core::option::Option<super::IDispatch>>, |
| pub pStream: ::std::mem::ManuallyDrop<::core::option::Option<super::IStream>>, |
| pub pStorage: ::std::mem::ManuallyDrop<::core::option::Option<IStorage>>, |
| pub pVersionedStream: *mut VERSIONEDSTREAM, |
| pub parray: *mut super::SAFEARRAY, |
| pub cac: CAC, |
| pub caub: CAUB, |
| pub cai: CAI, |
| pub caui: CAUI, |
| pub cal: CAL, |
| pub caul: CAUL, |
| pub cah: CAH, |
| pub cauh: CAUH, |
| pub caflt: CAFLT, |
| pub cadbl: CADBL, |
| pub cabool: CABOOL, |
| pub cascode: CASCODE, |
| pub cacy: CACY, |
| pub cadate: CADATE, |
| pub cafiletime: CAFILETIME, |
| pub cauuid: CACLSID, |
| pub caclipdata: CACLIPDATA, |
| pub cabstr: CABSTR, |
| pub cabstrblob: CABSTRBLOB, |
| pub calpstr: CALPSTR, |
| pub calpwstr: CALPWSTR, |
| pub capropvar: CAPROPVARIANT, |
| pub pcVal: ::windows::core::PSTR, |
| pub pbVal: *mut u8, |
| pub piVal: *mut i16, |
| pub puiVal: *mut u16, |
| pub plVal: *mut i32, |
| pub pulVal: *mut u32, |
| pub pintVal: *mut i32, |
| pub puintVal: *mut u32, |
| pub pfltVal: *mut f32, |
| pub pdblVal: *mut f64, |
| pub pboolVal: *mut super::super::super::Foundation::VARIANT_BOOL, |
| pub pdecVal: *mut super::super::super::Foundation::DECIMAL, |
| pub pscode: *mut i32, |
| pub pcyVal: *mut super::CY, |
| pub pdate: *mut f64, |
| pub pbstrVal: *mut ::windows::core::BSTR, |
| pub ppunkVal: *mut ::core::option::Option<::windows::core::IUnknown>, |
| pub ppdispVal: *mut ::core::option::Option<super::IDispatch>, |
| pub pparray: *mut *mut super::SAFEARRAY, |
| pub pvarVal: *mut PROPVARIANT, |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::clone::Clone for PROPVARIANT_0_0_0 { |
| fn clone(&self) -> Self { |
| unsafe { ::core::mem::transmute_copy(self) } |
| } |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::windows::core::TypeKind for PROPVARIANT_0_0_0 { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::default::Default for PROPVARIANT_0_0_0 { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct RemSNB { |
| pub ulCntStr: u32, |
| pub ulCntChar: u32, |
| pub rgString: [u16; 1], |
| } |
| impl ::core::marker::Copy for RemSNB {} |
| impl ::core::clone::Clone for RemSNB { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for RemSNB { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("RemSNB").field("ulCntStr", &self.ulCntStr).field("ulCntChar", &self.ulCntChar).field("rgString", &self.rgString).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for RemSNB { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for RemSNB { |
| fn eq(&self, other: &Self) -> bool { |
| self.ulCntStr == other.ulCntStr && self.ulCntChar == other.ulCntChar && self.rgString == other.rgString |
| } |
| } |
| impl ::core::cmp::Eq for RemSNB {} |
| impl ::core::default::Default for RemSNB { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct SERIALIZEDPROPERTYVALUE { |
| pub dwType: u32, |
| pub rgb: [u8; 1], |
| } |
| impl ::core::marker::Copy for SERIALIZEDPROPERTYVALUE {} |
| impl ::core::clone::Clone for SERIALIZEDPROPERTYVALUE { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for SERIALIZEDPROPERTYVALUE { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("SERIALIZEDPROPERTYVALUE").field("dwType", &self.dwType).field("rgb", &self.rgb).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for SERIALIZEDPROPERTYVALUE { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for SERIALIZEDPROPERTYVALUE { |
| fn eq(&self, other: &Self) -> bool { |
| self.dwType == other.dwType && self.rgb == other.rgb |
| } |
| } |
| impl ::core::cmp::Eq for SERIALIZEDPROPERTYVALUE {} |
| impl ::core::default::Default for SERIALIZEDPROPERTYVALUE { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] |
| #[cfg(feature = "Win32_Foundation")] |
| pub struct STATPROPSETSTG { |
| pub fmtid: ::windows::core::GUID, |
| pub clsid: ::windows::core::GUID, |
| pub grfFlags: u32, |
| pub mtime: super::super::super::Foundation::FILETIME, |
| pub ctime: super::super::super::Foundation::FILETIME, |
| pub atime: super::super::super::Foundation::FILETIME, |
| pub dwOSVersion: u32, |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::marker::Copy for STATPROPSETSTG {} |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::clone::Clone for STATPROPSETSTG { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::fmt::Debug for STATPROPSETSTG { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("STATPROPSETSTG").field("fmtid", &self.fmtid).field("clsid", &self.clsid).field("grfFlags", &self.grfFlags).field("mtime", &self.mtime).field("ctime", &self.ctime).field("atime", &self.atime).field("dwOSVersion", &self.dwOSVersion).finish() |
| } |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::windows::core::TypeKind for STATPROPSETSTG { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::cmp::PartialEq for STATPROPSETSTG { |
| fn eq(&self, other: &Self) -> bool { |
| self.fmtid == other.fmtid && self.clsid == other.clsid && self.grfFlags == other.grfFlags && self.mtime == other.mtime && self.ctime == other.ctime && self.atime == other.atime && self.dwOSVersion == other.dwOSVersion |
| } |
| } |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::cmp::Eq for STATPROPSETSTG {} |
| #[cfg(feature = "Win32_Foundation")] |
| impl ::core::default::Default for STATPROPSETSTG { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct STATPROPSTG { |
| pub lpwstrName: ::windows::core::PWSTR, |
| pub propid: u32, |
| pub vt: super::VARENUM, |
| } |
| impl ::core::marker::Copy for STATPROPSTG {} |
| impl ::core::clone::Clone for STATPROPSTG { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for STATPROPSTG { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("STATPROPSTG").field("lpwstrName", &self.lpwstrName).field("propid", &self.propid).field("vt", &self.vt).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for STATPROPSTG { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for STATPROPSTG { |
| fn eq(&self, other: &Self) -> bool { |
| self.lpwstrName == other.lpwstrName && self.propid == other.propid && self.vt == other.vt |
| } |
| } |
| impl ::core::cmp::Eq for STATPROPSTG {} |
| impl ::core::default::Default for STATPROPSTG { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct STGOPTIONS { |
| pub usVersion: u16, |
| pub reserved: u16, |
| pub ulSectorSize: u32, |
| pub pwcsTemplateFile: ::windows::core::PCWSTR, |
| } |
| impl ::core::marker::Copy for STGOPTIONS {} |
| impl ::core::clone::Clone for STGOPTIONS { |
| fn clone(&self) -> Self { |
| *self |
| } |
| } |
| impl ::core::fmt::Debug for STGOPTIONS { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("STGOPTIONS").field("usVersion", &self.usVersion).field("reserved", &self.reserved).field("ulSectorSize", &self.ulSectorSize).field("pwcsTemplateFile", &self.pwcsTemplateFile).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for STGOPTIONS { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for STGOPTIONS { |
| fn eq(&self, other: &Self) -> bool { |
| self.usVersion == other.usVersion && self.reserved == other.reserved && self.ulSectorSize == other.ulSectorSize && self.pwcsTemplateFile == other.pwcsTemplateFile |
| } |
| } |
| impl ::core::cmp::Eq for STGOPTIONS {} |
| impl ::core::default::Default for STGOPTIONS { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[repr(C)] |
| #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] |
| pub struct VERSIONEDSTREAM { |
| pub guidVersion: ::windows::core::GUID, |
| pub pStream: ::std::mem::ManuallyDrop<::core::option::Option<super::IStream>>, |
| } |
| impl ::core::clone::Clone for VERSIONEDSTREAM { |
| fn clone(&self) -> Self { |
| unsafe { ::core::mem::transmute_copy(self) } |
| } |
| } |
| impl ::core::fmt::Debug for VERSIONEDSTREAM { |
| fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { |
| f.debug_struct("VERSIONEDSTREAM").field("guidVersion", &self.guidVersion).field("pStream", &self.pStream).finish() |
| } |
| } |
| impl ::windows::core::TypeKind for VERSIONEDSTREAM { |
| type TypeKind = ::windows::core::CopyType; |
| } |
| impl ::core::cmp::PartialEq for VERSIONEDSTREAM { |
| fn eq(&self, other: &Self) -> bool { |
| self.guidVersion == other.guidVersion && self.pStream == other.pStream |
| } |
| } |
| impl ::core::cmp::Eq for VERSIONEDSTREAM {} |
| impl ::core::default::Default for VERSIONEDSTREAM { |
| fn default() -> Self { |
| unsafe { ::core::mem::zeroed() } |
| } |
| } |
| #[cfg(feature = "implement")] |
| ::core::include!("impl.rs"); |