UlteriusServer.Api.Win32.Desktop.GetDesktopName C# (CSharp) Method

GetDesktopName() public static method

Gets the name of a desktop from a desktop handle.
public static GetDesktopName ( IntPtr desktopHandle ) : string
desktopHandle System.IntPtr
return string
        public static string GetDesktopName(IntPtr desktopHandle)
        {
            // check its not a null pointer.
            // null pointers wont work.
            if (desktopHandle == IntPtr.Zero) return null;

            // get the length of the name.
            var needed = 0;
            var name = string.Empty;
            GetUserObjectInformation(desktopHandle, UOI_NAME, IntPtr.Zero, 0, ref needed);

            // get the name.
            var ptr = Marshal.AllocHGlobal(needed);
            var result = GetUserObjectInformation(desktopHandle, UOI_NAME, ptr, needed, ref needed);
            name = Marshal.PtrToStringAnsi(ptr);
            Marshal.FreeHGlobal(ptr);

            // something went wrong.
            if (!result) return null;

            return name;
        }

Same methods

Desktop::GetDesktopName ( Desktop desktop ) : string