// // Copyright (c) PlaceholderCompany. All rights reserved. // namespace SystemTrayMenu.DllImports { using System; using System.Runtime.InteropServices; /// /// wraps the methodcalls to native windows dll's. /// public static partial class NativeMethods { #pragma warning disable SA1600 // Elements should be documented public const uint ShgfiIcon = 0x000000100; // get icon public const uint ShgfiSYSICONINDEX = 0x000004000; // get system icon index public const uint ShgfiLINKOVERLAY = 0x000008000; // put a link overlay on icon public const uint ShgfiLARGEICON = 0x000000000; // get large icon public const uint ShgfiSMALLICON = 0x000000001; // get small icon public const uint ShgfiOPENICON = 0x000000002; // get open icon public const uint FileAttributeDirectory = 0x00000010; public const uint FileAttributeNormal = 0x00000080; public const int IldTransparent = 0x00000001; #pragma warning restore SA1600 // Elements should be documented /// /// comctl32 ImageList_GetIcon(IntPtr hIcon). /// /// hIcon. public static void Comctl32ImageListGetIcon(IntPtr hIcon) { _ = DestroyIcon(hIcon); } /// /// comctl32 ImageList_GetIcon(IntPtr himl, int i, int flags). /// /// himl. /// i. /// flags. /// IntPtr. [DllImport("comctl32", SetLastError = true, CharSet = CharSet.Unicode)] [DefaultDllImportSearchPaths(DllImportSearchPath.UserDirectories)] internal static extern IntPtr ImageList_GetIcon( IntPtr himl, int i, int flags); } }