/// <summary>
        /// Set an system icon as default bitmap icon.
        /// </summary>
        /// <param name="icon">The icon type.</param>
        public void SetSystemIcon(SysMenuAPI.MenuItemInfo_hItem icon)
        {
            MenuItemInfo mInfo = new MenuItemInfo()
            {
                cbSize        = Marshal.SizeOf(typeof(MenuItemInfo)),
                fMask         = SysMenuAPI.FMask.MIIM_STRING | SysMenuAPI.FMask.MIIM_BITMAP | SysMenuAPI.FMask.MIIM_FTYPE | SysMenuAPI.FMask.MIIM_STATE | SysMenuAPI.FMask.MIIM_ID,
                fType         = SysMenuAPI.FType.MFT_STRING,
                fState        = SysMenuAPI.FState.MFS_ENABLED,
                wID           = ID,
                hbmpItem      = (IntPtr)icon,
                hbmpChecked   = IntPtr.Zero,
                hbmpUnchecked = IntPtr.Zero,
                dwTypeData    = Marshal.StringToHGlobalAuto(Text),
                dwItemData    = IntPtr.Zero,
                hSubMenu      = IntPtr.Zero,
                cch           = Text.Length,
            };

            SysMenuAPI.SetMenuItemInfo(HMenu, ID, false, ref mInfo);
        }
Exemple #2
0
 public static extern bool SetMenuItemInfo(IntPtr hMenu, int item, bool fByPosition, ref MenuItemInfo lpmii);