Trait winsafe::prelude::user_Hdesk
source · pub trait user_Hdesk: Handle {
// Provided methods
fn CreateDesktop(
name: &str,
flags: Option<DF>,
desired_access: DESKTOP_RIGHTS,
security_attributes: Option<&SECURITY_ATTRIBUTES<'_>>
) -> SysResult<CloseDesktopGuard> { ... }
fn CreateDesktopEx(
name: &str,
flags: Option<DF>,
desired_access: DESKTOP_RIGHTS,
security_attributes: Option<&SECURITY_ATTRIBUTES<'_>>,
heap_size_kb: u32
) -> SysResult<CloseDesktopGuard> { ... }
fn GetThreadDesktop(
thread_id: u32
) -> SysResult<ManuallyDrop<CloseDesktopGuard>> { ... }
fn OpenDesktop(
name: &str,
flags: Option<DF>,
inherit: bool,
desired_access: DESKTOP_RIGHTS
) -> SysResult<CloseDesktopGuard> { ... }
fn OpenInputDesktop(
flags: Option<DF>,
inherit: bool,
desired_access: DESKTOP_RIGHTS
) -> SysResult<CloseDesktopGuard> { ... }
fn SetThreadDesktop(&self) -> SysResult<()> { ... }
fn SwitchDesktop(&self) -> SysResult<()> { ... }
}
Available on crate features
kernel
and user
only.Expand description
This trait is enabled with the user
feature, and provides methods for
HDESK
.
Prefer importing this trait through the prelude:
use winsafe::prelude::*;
Provided Methods§
sourcefn CreateDesktop(
name: &str,
flags: Option<DF>,
desired_access: DESKTOP_RIGHTS,
security_attributes: Option<&SECURITY_ATTRIBUTES<'_>>
) -> SysResult<CloseDesktopGuard>
fn CreateDesktop( name: &str, flags: Option<DF>, desired_access: DESKTOP_RIGHTS, security_attributes: Option<&SECURITY_ATTRIBUTES<'_>> ) -> SysResult<CloseDesktopGuard>
CreateDesktop
function.
sourcefn CreateDesktopEx(
name: &str,
flags: Option<DF>,
desired_access: DESKTOP_RIGHTS,
security_attributes: Option<&SECURITY_ATTRIBUTES<'_>>,
heap_size_kb: u32
) -> SysResult<CloseDesktopGuard>
fn CreateDesktopEx( name: &str, flags: Option<DF>, desired_access: DESKTOP_RIGHTS, security_attributes: Option<&SECURITY_ATTRIBUTES<'_>>, heap_size_kb: u32 ) -> SysResult<CloseDesktopGuard>
CreateDesktopEx
function.
sourcefn GetThreadDesktop(
thread_id: u32
) -> SysResult<ManuallyDrop<CloseDesktopGuard>>
fn GetThreadDesktop( thread_id: u32 ) -> SysResult<ManuallyDrop<CloseDesktopGuard>>
GetThreadDesktop
function.
§Examples
use winsafe::{self as w, prelude::*};
let hdesk = w::HDESK::GetThreadDesktop(w::GetCurrentThreadId())?;
sourcefn OpenDesktop(
name: &str,
flags: Option<DF>,
inherit: bool,
desired_access: DESKTOP_RIGHTS
) -> SysResult<CloseDesktopGuard>
fn OpenDesktop( name: &str, flags: Option<DF>, inherit: bool, desired_access: DESKTOP_RIGHTS ) -> SysResult<CloseDesktopGuard>
OpenDesktop
function.
sourcefn OpenInputDesktop(
flags: Option<DF>,
inherit: bool,
desired_access: DESKTOP_RIGHTS
) -> SysResult<CloseDesktopGuard>
fn OpenInputDesktop( flags: Option<DF>, inherit: bool, desired_access: DESKTOP_RIGHTS ) -> SysResult<CloseDesktopGuard>
OpenInputDesktop
function.
sourcefn SetThreadDesktop(&self) -> SysResult<()>
fn SetThreadDesktop(&self) -> SysResult<()>
SetThreadDesktop
function.
sourcefn SwitchDesktop(&self) -> SysResult<()>
fn SwitchDesktop(&self) -> SysResult<()>
SwitchDesktop
function.
Object Safety§
This trait is not object safe.